用于串行通信的USB端口名称

时间:2016-02-04 15:39:53

标签: c++ qt usb

我想编写代码,允许我将命令(不仅仅是视频)从计算机发送到电视,具体来说,是一个会改变输入的命令。代码需要使用C ++,并且通信必须通过USB电缆完成。

我目前正在使用Qt与端口进行通信,但我可以与之通信的唯一端口是“com1”。我想知道,我如何得到像我的鼠标,usb声音适配器等设备正在使用的usb端口的名称?

如果有任何Qt代码允许我向usb设备发送命令,那就会生病。

1 个答案:

答案 0 :(得分:0)

仅仅因为USB意味着通用串行总线,不会使每个USB设备成为串行端口

USB设备有不同的类,由不同的驱动程序处理。人机接口输入设备(如鼠标和键盘)属于HID类。这些设备不是串行端口,不会出现在串行端口列表中。大多数其他流行设备也是如此,例如扫描仪,摄像机等。

将出现在串行端口列表中的设备是通信类设备(CDC),以及具有将它们作为串行端口公开的驱动程序的USB到串行转换器,例如, FTDI芯片。

对于您的电视,您需要弄清楚电视显示的设备类别。您可以使用usbview之类的工具来枚举USB设备并查看其属性。您的电视甚至可能是具有HID类设备和其他设备类的复合设备。