2

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

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

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

谢谢

4

1 回答 1

1

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

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

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

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

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

于 2011-10-31T18:59:03.443 回答