我从com端口读取循环...
import serial
def main():
ser = serial.Serial(11, 4800, timeout = 1)
ser.open()
lines = []
while True:
line = ser.readline()
print(line)
lines.append(line)
# check for **USER** input without stopping
# if input == ' ' or '\n' or what have you:
# break
ser.close()
if __name__ == '__main__':
main()
如何在上面的评论中执行上述伪代码?它甚至可能吗?
答案 0 :(得分:0)
ser.read()将返回读取的下一个字节。
示例:
x = ser.read() # read one byte
s = ser.read(10) # read up to ten bytes (timeout)
line = ser.readline() # read a '\n' terminated line
答案 1 :(得分:0)
一种方法可能是使用curses.window.getch()
,但您必须在其周围编写一些初始化代码,例如创建一个窗口。但不应该过于努力。
在MS Windows下,您可以使用msvcrt.getch()来阅读该字符;如果你不想阻止阅读,请不要忘记检查msvcrt.kbhit()。