我正在使用python中的Honeywell 4600条形码扫描仪,配置为串行设备。一切都很好,我可以用它读取条形码,但我想测试串行触发选项,而不是一直按下触发器。 关于此功能的手册非常简短,只有“SYN T CR”必须写入设备以激活串行触发器
ser.write('SYN T CR')
似乎没什么用。
有人能指出我正确的方向吗?谢谢!
答案 0 :(得分:0)
这是因为您将文档中编写的抽象表达式编码为原始输出数据。
该文件代表3个字节的数据传输。
'SYN'和'CR'是以下十六进制数字
'SYN'= \ x16
'CR'= \ x0d或转义序列\ r \ n
'T'是普通的ASCII字符 空格用于分隔文档中的数据,而不是要发送的数据。
你应该这样写。请试一试。
ser.write(b'\x16T\r')
或者,甚至可能需要为它添加前缀 Send data to Honeywell Xenon 1902 barcode reader via virtual com port
在这种情况下,请尝试以下传输。
ser.write(b'\x16M\r\x16T\r')