将传入的USB信号转换为击键/宏

时间:2017-04-21 06:58:24

标签: c++ macros usb signals voip

我正在寻找一个软件,或者在哪里开始编码,这将允许您选择USB设备并将其输出信号(当按下设备上的按钮时)转换为击键或可配置的宏。 / p>

更详细地说,我有这个遥控器(更确切地说,一个USB手机/电话),根据按下的按钮发送USB信号,我目前使用的软件将这些信号转换成按键或宏。我目前使用的软件非常有限,不可配置和过时。我从设备进来的CD中检索到的软件简单地命名为“USBPhone 5 in 1'但是在互联网上没有提到这一点。

该设备很遗憾没有品牌,在互联网上的可见度很低,因此我无法查看是否有任何更新的软件甚至任何方式进行编辑。

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:0)

你可以试试joyToKey,这个软件完全符合你想要的但是用gamedpad。我不知道它是否适用于你的USB控制器。

http://joytokey.net/en/

答案 1 :(得分:0)

我认为您需要首先了解USB标准和设备类。然后,您需要确定您的设备是否实现了特定的设备类或某些专有接口。然后,您将需要为设备类使用驱动程序或实现专有驱动程序。

虽然USB是通用串行总线的缩写,但它不会传输一些随机模拟数据,而是传输定义良好的数字数据包。该标准定义了音频设备的音频类,视频设备的视频类等。大多数设备实现了这些类中的一个或多个。对于键盘和鼠标,它定义了HID类,这很可能是您的设备实现的。您可以找到与HID设备类相关的规范here。这不是最简单的开始,但是当你将设备插入PC并打开时,它应该可以工作。记事本并开始写作。列出了USB设备类代码here

为了找出您的设备实现的设备类,您需要阅读它的描述符。在Windows中,一种更简单的方法是使用usbview。您可以从here了解有关USB描述符的更多信息。

你没有提到什么是你的USB主机(Windows或Linux PC,Mac或其他东西),所以我不打算进入实际的USB驱动程序实现,但希望我能够给你一些关于什么可能的信息被需要。在任何情况下,如果设备具有某些专有实现,您将需要对其进行规范,或者通过监视USB数据包对其进行反向工程。市场上有许多昂贵的硬件解决方案用于分析USB流量,但也有一些免费的SW解决方案可能足以满足您的需求。快速谷歌搜索提出了this