在Ubuntu中根据设备PID和VID查找USB端口

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (139)

我想基于设备PID和VID在Ubuntu中开发USB端口通信原型。

  • 打开端口
  • 关闭端口
  • 写/读操作

我无法找到任何基于PID和VID打开USB端口的示例应用程序。

所有示例代码都可用,如下所示

int serial_port = open("/dev/ttyUSB0", O_RDWR);

其中“/ dev / ttyUSB0”是USB文件名(如各种教程中所述)。

但是,只有当PID和VID与我的特定PID和VID匹配时,我才想打开它。

我怎样才能做到这一点?

提问于
用户回答回答于

可以通过libudev,调用里面的库函数,来找到pid和vid对应的设备文件

用户回答回答于

我建议使用QT lib。您可以使用QTSerialPortInfo来获取QSerialPortInfo::productIdentifier()和使用的必要信息QSerialPortInfo::vendorIdentifier()。无论如何,它是非常有用的lib,您可以在https://doc.qt.io/qt-5/qserialportinfo.html上查看所有可用的方法。

扫码关注云+社区

领取腾讯云代金券