我有一台Atmel AVR A90USBxxxx设备,我已配置为通过CDC“通话USB”。它旨在从运行Windows,Linux或OS X的主机获取输入。
我的印象是Linux和OS X会立即识别出这个CDC设备,并且只需一个简单的.inf就可以告诉我的VID / PID应该使用usbser.sys作为CDC设备打开。< / p>
我的问题是,一旦操作系统将此USB设备作为串行设备打开,我如何以编程方式读取和写入该端口(对于所列出的3个操作系统中的每一个,但Windows需要大部分细节,因为我完全不熟悉有)
由于
答案 0 :(得分:0)
答案实际上取决于您打算使用的编程语言。在不知道您打算使用哪种语言的情况下,我无法确切地告诉您如何做到这一点,但我可以指出您正确的方向。
对于原型设计,我建议将Python与PySerial模块一起使用。设置和快速编写功能原型非常容易。 Python将在Windows,Linux和OS X上运行。这样,您只需编写一次串行通信代码,就可以在所有平台上进行测试。
PySerial documentation包含有关如何读取和写入端口的一些示例。
如果Python在生产中不适合你,我仍然建议坚持使用具有跨平台串口库的编程语言。
以下是有关C的跨平台串行端口库的问题:C: cross-platform RS-232 serial library?