0
这里的情况:如何读取端口输入并打印到终端
我有两个印章,一个连接到端口是:/ dev/ttyUSB1,以及一个外部一个,不连接。外部程序上有一个(Contiki基础的)程序,用于发送(每2秒)一个字母到插入计算机的邮票。插入计算机的邮票有一个程序,也是基于Contiki的程序,它通过无线电信号读取这些信息。
现在,我写了一个python程序,利用pyserial,它旨在读取进入端口的信息并将其显示在终端中。我知道邮件到达正确,因为我可以通过USB连接到邮件终端打印邮件。但是我无法从Python代码中读取信息。
import serial, time, threading
ser = serial.Serial()
ser.port = "/dev/ttyUSB1"
ser.baudrate = 9600
ser.bytesize = serial.SEVENBITS
ser.parity = serial.PARITY_EVEN
ser.timeout = 0.1
ser.rtscts = 1
try:
ser.open()
except Exception, e:
print "error open serial port: " + str(e)
exit()
if ser.isOpen():
try:
numOfLines = 0
while True:
print ser.read()
numOfLines = numOfLines + 1
time.sleep(2)
if (numOfLines >= 50):
break
ser.close()
except Exception, e1:
print "error communicating...: " + str(e1)
else:
print "cannot open serial port "
运行时,而不是打印从邮票每两秒钟发送所期望的信,它会打印一些一致的,但随机字母。例如:
w
z
z
w
g
z
g
z
z
z
w
z
w
当我卸下连接到邮票的USB时,程序没有输出。所以它一定是从港口读东西...任何帮助将不胜感激。
嗨,那里,谢谢你的答案,但我得到的错误和以前完全一样。还有其他建议吗? – Ian
你可以更新你的问题中的代码,所以我可以看看 – jramirez