Python Cmd-空闲时嗅探串行端口

时间:2019-02-07 06:52:07

标签: python cmd serial-port pyserial

我正在使用Cmd和pySerial包编写Python程序。

程序运行一个cmd shell,用户在其中编写命令,将命令翻译为消息格式,通过串行端口发送消息,程序嗅探串行端口以获取答案,程序打印答案。

示例:

ser = serial.Serial(COM1, 115200)

class cmdClass(Cmd):
    def do_read_register(self, args):
        msg_tx = ...
        ser.write(msg_tx)
        time.sleep(1)
        while ser.inWaiting() > 0:
            msg_rx += ser.read()
        print(">> " + msg_rx)

if __name__=='__main__':
    cmdMain = cmdClass()
    cmdMain.cmdloop()

连接到串行端口的设备也可以启动消息,而无需先从程序接收消息(忽略串行端口上可能出现的问题)。

我可以让程序在程序空闲(等待用户命令)的过程中每隔几秒钟嗅一次串行端口的消息,并将其打印到屏幕上吗?

谢谢!

0 个答案:

没有答案