写入串行端口可以通过 Putty 而不是 PySerial

Writing to serial port works via Putty but not PySerial

我可以通过 Putty 向串行端口发送命令字符串并获得响应。但是,当我使用 Python PySerial read/write 尝试相同时,我无法发送 read/write 命令。

腻子终端: 示例 1:

 <command_string>
    response = Success

示例 2:

<incorrect_command_string>
response = Fail

Python代码:

serialData = serial.Serial(port=2, baudrate=921600, parity=serial.PARITY_NONE,
                                   stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS)
serialData.write(b'<command_string>')
print(serialData.in_waiting)
print(serialData.read(serialData.in_waiting))

代码输出:

0  
b''

有什么建议吗?

找到了: 响应字符串有'\r'。所以我可以如下使用 read_until 并消除睡眠。

serialData.read_until("\r".encode('utf-8'))