我有一款运行在Windows 64bit操作系统上的PC软件,通过物理串口RS232与一台机器进行通信,我希望用Python制作一个该串口的嗅探器。请注意,我对串口不是很了解。
我阅读了多篇在线文档和问题,但大部分都建议使用第三方软件,而我不能这样做,因为原始字节必须解码为字符串消息(我有自己的解码/编码方法)。
目前我的设置如下:
/////////////////// Physical COM1 /////////////
// (PC) Software // <------------------------> // Machine //
/////////////////// /////////////
我希望有一个Python程序可以输出通过COM1传输的所有字节。
期望的行为图表(“虚拟串口”上有一个问号,因为我不确定这是否是正确的方法):
/////////////////// Physical COM1 /////////////
// (PC) Software // <------------------------> // Machine //
/////////////////// | Virtual /////////////
| serial port?
v
//////////////////
// (PC) Sniffer // (Python)
//////////////////
|
v
(output bytes)
我希望用Python实现Advanced Serial Port Monitor中的"spymode"功能,就像那些熟悉它的人一样。
我尝试过使用com0com和PortMon,但我无法找到配置com0com来嗅探物理端口的方法(据我观察,com0com只能创建虚拟端口),而PortMon不支持Windows 64位。
我已经卡在这里好几天了...如果有任何评论/链接/答案,将不胜感激。 谢谢!