【问题标题】:How to open and write/read to a USB CDC "serial" device on Windows, Linux, OS X?如何在 Windows、Linux、OS X 上打开和写入/读取 USB CDC“串行”设备?
【发布时间】:2010-09-17 17:39:43
【问题描述】:

我有一个 Atmel AVR A90USBxxxx 设备,我已将其配置为通过 CDC“与 USB 通话”。它旨在从运行 Windows、Linux 或 OS X 的主机计算机获取输入。

我的印象是 Linux 和 OS X 会立即识别这个 CDC 设备,并且通过简单的 .inf 可以告诉 Windows 机器我的 VID/PID 应该使用 usbser.sys 作为 CDC 设备打开。

我的问题是,一旦操作系统将此 USB 设备作为串行设备打开,我如何以编程方式读取和写入该端口(对于列出的 3 个操作系统中的每一个,但 Windows 需要大多数细节,因为我完全不熟悉那里)

谢谢

【问题讨论】:

  • Google 应该为您提供足够多的关于任一操作系统的串行端口编程的示例。

标签: windows linux macos usb cdc


【解决方案1】:

答案实际上取决于您打算使用哪种编程语言。在不知道您打算使用哪种语言的情况下,我无法确切地告诉您该怎么做,但我可以为您指明正确的方向。

对于原型设计,我建议将PythonPySerial 模块一起使用。设置和快速编写功能原型非常容易。 Python 将在 Windows、Linux 和 OS X 上运行。这样您只需编写一次串行通信代码,即可在所有平台上进行测试。

PySerial documentation 包含一些关于如何读取和写入端口的示例。

如果 Python 在生产环境中不适合您,我仍然建议尽可能使用具有跨平台串行端口库的编程语言。

这是一个关于 C 的跨平台串行端口库的问题:C: cross-platform RS-232 serial library?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-25
    相关资源
    最近更新 更多