我正在读取这样的串行数据:
connected = False
port = 'COM4'
baud = 9600
ser = serial.Serial(port, baud, timeout=0)
while not connected:
#serin = ser.read()
connected = True
while True:
print("test")
reading = ser.readline().decode()
问题是它阻止了其他任何东西的执行,包括 bottle py web 框架。添加 sleep()
无济于事。
将“while True””更改为“while ser.readline():”不会打印“test”,这很奇怪,因为它在 Python 2.7 中工作。任何想法可能是错误的?
理想情况下,我应该只能在可用时读取串行数据。每 1,000 毫秒发送一次数据。
原文由 DominicM 发布,翻译遵循 CC BY-SA 4.0 许可协议
放在单独的线程中,例如:
http://docs.python.org/3/library/threading