1
我正在使用硬币接收器和树莓工程。我有以下代码来测试从硬币接收器输出:Python串口停止读取
import serial
from time import sleep
ser = serial.Serial('/dev/ttyUSB0', 4800, 8, 'N', 1, timeout=None)
while True:
line = ser.read(ser.inWaiting())
if len(line) > 0:
print ord(line)
ser.close()
一切工作正常,每次我滴个硬币时间我从受体输出。但过了一段时间,它停止阅读。在具有串行端口监视器的窗口中,它可以正常工作,并且每次都会输出。
谢谢!
尝试设置超时并重新打开时,从港口到时间呢? –
如果您一次只阅读一个以上的字符,'ord(line)''将会失败...... – jasonharper
您可以使用'.isOpen'来检测端口是否关闭,然后在发生这种情况时重新打开端口。此外,实施一些调试日志记录,让你看到发生了什么。 – thephez