我有一个愚蠢的python问题。在
每次从串行连接收到“准备就绪”消息时,我都试图从文件中读取一行,所以我写了以下内容:
import serial
from time import sleep
port = "/dev/tty.usbserial-A400fYTT"
speed = 57600
polarfile = 'polarfile.pg'
f = open(polarfile, 'r')
ser = serial.Serial(port, speed, timeout=0)
while True:
data = ser.read(9999)
if len(data) > 0:
if(data == 'READY'):
f.readline()
else:
sleep(0.5)
sleep(1)
ser.close()
但是如果我用print data替换if(data=='READY'块,它就不起作用了。我收到准备好的信息。在
我也可以用f.readline()读取我的文件。。。在
多谢你给我的建议
在-- 编辑: 重要的信息,连续剧不仅收到“准备就绪”的信息,还收到了一堆其他信息,但我只想在收到“准备就绪”信息时做出反应。在
我只是替换
数据=ser.read公司(9999)
通过
data = ser.readline(9999)
它给我逐行的消息,而不是一秒一秒的输入数据,然后替换if( data == 'READY' ):
作者if (data.startswith('READY')):
现在它起作用了:)
相关问题 更多 >
编程相关推荐