【发布时间】:2016-02-04 15:39:53
【问题描述】:
我想编写代码,让我可以将命令(不仅仅是视频)从计算机发送到电视,具体来说,是一个可以改变输入的命令。代码需要 C++ 语言,并且必须通过 USB 电缆进行通信。
我目前正在使用 Qt 与端口进行通信,但我可以与之通信的唯一端口是“com1”。我想知道,如何获取我的鼠标、USB 声音适配器等设备当前正在使用的 USB 端口的名称?
如果有任何 Qt 代码可以让我向 USB 设备发送命令,那就太糟糕了。
【问题讨论】:
-
串口与USB是完全不同的技术,不能随意访问USB口,需要连接设备驱动(除非设备是虚拟的com口,会创建一个串口)。
-
你正在开发什么操作系统?
-
@Gusman 严格来说,USB,即Universal Serial Bus,是一种串口。它只是不适用于 RS-232C 之类的通信。
-
@MikeCAT 不,不是,数据是串行传输的,但这是与串行端口的唯一相似之处,USB 通过具有端点的 USB 控制器进行管理,每个端点描述一个注册设备,并且当您需要传输数据时,您不只是通过端口敲击数据,您必须根据描述符创建一个结构来传输数据。即使您能够创建该结构,您也不会被允许访问底层控制器,因为操作系统将控制 USB 控制器。
-
@Z Rev:你的问题有点零散,但我设法清楚地了解了你想要什么。首先是如何将电视上的 RS-232 连接到 PC 的 USB 端口。这需要一个小型转换器,而 converter 将获得类似 COM2 的名称。这不适用于其他 USB 设备。