我在Windows和Linux下使用pySerial进行串行IO时遇到了问题。使用这段代码,设备从未收到命令并且读取超时:
import serial
ser = serial.Serial('/dev/ttyUSB0',9600,timeout=5)
ser.write("get")
ser.flush()
print ser.read()
这段代码第一次执行会超时,但是后续的迭代会成功:
import serial
ser = serial.Serial('/dev/ttyUSB0',9600,timeout=5)
while True:
ser.write("get")
ser.flush()
print ser.read()
有人能告诉我发生了什么吗? 我尝试添加一个sync()调用,但它不会接受一个串行对象作为参数。
谢谢, 罗伯特
reset_input_buffer()
和reset_output_buffer()
替代,详情请见:doc。 - Bruno L.