我用python和C与我的天平进行通信,但我不能写CR / LF行结尾。为什么呢?
import serial
bal = serial.Serial("/dev/ttyUSB0",9600,timeout=0)
bal.write('P\r\n')
print bal.readline()
我可以通过cutecom获取价值,但为什么我不能通过这段代码获得价值?
我正在使用Linux,为什么程序不识别行结束?
答案 0 :(得分:2)
如果您有timeout=0
并在发送后立即执行readline()
,则可能尚未收到答案。
最好尝试timeout=.5
并根据您的观察结果调整值。
在这种情况下,也可能是天平没有写出正确的“线”。在这些情况下,请尝试bal.read(100)
。一旦没有其他字符出现,超时将立即停止。