python - Windows 中的串行通信仿真

标签 python windows serial-port arduino pyserial

我想在 Windows 中模拟 Arduino 串行通信。我编写了这个 pySerial 脚本来表示连接:

from serial import Serial
from time import sleep

serial_conn = Serial(<some port>)
serial_conn.baudrate = 9600

for i in range(1,10):
    serial_conn.write(<dummy data>)
    sleep(1)

问题如下:我尝试使用可用的串行端口(例如 COM1 或 COM3),但无法使用串行监视器工具嗅探该端口。是因为我需要硬件来打开端口吗?或者问题可能出在测试端口上? (也许 Windows 使用 COM1 进行通信,因为 Linux 也使用第一个串行)。我应该尝试使用虚拟串口工具吗?如果这就是重点,你能给我推荐一个人和用法吗?

最佳答案

在Windows中,硬件和虚拟串口具有相同的枚举方案,因此它们将是COM。 问题是(理论上)一次只有一个程序可以使用串行端口,因此如果您的 Python 程序使用该端口,则终端将无法使用该端口。

您应该设置一个假 COM,这意味着自定义驱动程序...太困难了。

套接字、文件和标准输入一次可以读/写一个字节,因此您可以使用它们来测试您的解析器。

关于python - Windows 中的串行通信仿真,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21526701/

相关文章:

python - 我可以将 INSERT 语句分成几个而不重复插入行吗?

python - 从 subprocess.check_output 获取退出代码

Python检查所有空列表中的条件

c++ - 如何使用 luajit 在带有变量参数的 c 函数中获取 cdata?

windows - 如何获得 LAN 上事件的 IP 地址、MAC 地址和 NetBIOS 名称的列表?

java - 为什么我们需要 setter/getter ?

PHP - ImageCreate() 错误

node.js - npm 串口获取输出以 react 组件

c - DCB 结构的 fParity 成员在 GetCommState 之后始终为 FALSE

linux - 在 Linux 中启用串行端口 ttyS2 和 ttyS3