我正在编写一个Ruby gem,它将通过USB通过串口与设备进行通信。我需要处理几种不同的通信格式,格式是使用PID / VID值的组合确定的。
我希望宝石能够跨平台(Linux / Mac / Windows),但我会满足于Linux和Mac。
使用最少数量的宝石,Ruby中最便携的方式是什么,可靠地检测串口的USB PID / VID信息?
答案 0 :(得分:2)
我最终解析了Mac& E下的命令行程序的输出。 Linux,在Windows下似乎没有一个解决方案,没有编写自定义C扩展。
答案 1 :(得分:1)
为了澄清一下,您需要获取与特定COM端口关联的已连接USB转串口适配器的VID和PID吗?假设是这种情况,你应该能够用libusb做到这一点。看起来已经存在一些Ruby代码:https://github.com/larskanis/libusb
免责声明 - 我没有必要为USB编写任何跨平台,因为我主要是Windows开发人员,我使用过WinUSB。我只是简单地看一下libusb API,它似乎有你需要的东西。