使用'GNET'协议与USB设备进行串行通信
问题描述:
我有一个USB设备,下面有specification。第22页介绍了应该用于与设备交互的GNET protocol
。使用'GNET'协议与USB设备进行串行通信
连接是好的,但设备只是不给我任何回应,所以我认为我没有发送正确的数据,它可能错过了握手?
从规格
支持TTY(TELE TYPE)操作 - 使用TTY发送命令和消息
connect_and_send.py
import serial
port = "COM3"
baud = 9600
ser = serial.Serial(port, baud, timeout=1)
if ser.isOpen():
print(ser.name + ' is open...')
# STX, N, CR
to_send = b'\x02\x4e\x0d'
print "Sending {}".format(to_send)
ser.write(to_send)
out = ser.read()
print('Receiving...'+out)
COM3是正确的端口:
任何帮助和指导,将不胜感激。
答
我到底接触的供应商,这个问题被设置为错误的波特率。从9600改为19200解决了这个问题。
答
你有从未使用\x4e
,这是负从设备确认。
尝试
to_send = b'\x02F\x0d'
获得固件版本
'\ x4e'它是否定的答复,问题是我没有收到一个。 –
@DannyCullen:如果你发送一个有效的“命令”,你只会收到一些东西。你尝试过“b'\ x02F \ x0d'”,仍然没有收到任何东西? – stovfl
在一个阶段它是回声。现在它只是没有回应。是的,我尝试了很多数据组合发送,包括你的例子。 –