在 Windows/Linux 中没有额外硬件的虚拟 COM
Posted
技术标签:
【中文标题】在 Windows/Linux 中没有额外硬件的虚拟 COM【英文标题】:Virtual COM with no additional HW in Windows/Linux 【发布时间】:2019-07-21 08:24:27 【问题描述】:我在两台不同的机器上安装了两个程序,Windows 和 Linux。
他们希望通过 com 端口进行通信。到目前为止,我们在 Linux 机器上使用 USB 到 UART 桥接器及其驱动程序来进行通信。 Windows 将该设备列为 COM 端口,在 linux 端,我们有一个 tty 设备供 Linux 应用程序连接。
现在,在我正在使用的新电路板版本中,该芯片不再存在。我想保持这两个程序不变。 我知道我可以在 Linux 上配置一个 USB 驱动程序以充当虚拟 com,而无需任何额外的硬件(CDC ACM?),这样就可以了。 我对么?如果是这种情况,我应该使用哪个驱动程序?
【问题讨论】:
【参考方案1】:在 Linux 端,您需要将 USB 配置为外围模式。有关软件方面的内容,请参阅 gadget configfs 文档和 Matt Porter 演讲中的 PDF。
既然您想要串行 USB CDC ACM,请查看gadget serial。
有一个库 libusbg 允许通过 C API 使用 USB Gadget ConfigFS。如果嵌入式软件需要动态控制设备提供的 USB 功能,这将非常有用。该库还提供了两个实用程序,称为 gadget-import 和 gadget-export。此实用程序允许将手工制作的 USB 小工具导出到模式文件并重新导入。您可以制作一个 systemd 服务以在启动时自动使用此架构。
【讨论】:
以上是关于在 Windows/Linux 中没有额外硬件的虚拟 COM的主要内容,如果未能解决你的问题,请参考以下文章