将传入的 USB 信号转换为 keystrokes/macros

Translate incoming USB signals to keystrokes/macros

我正在寻找一款软件,或者帮助您从哪里开始编码,它可以让您 select USB 设备并将其输出信号(当按下设备上的按钮时)转换为击键或可配置的宏。

更详细地说,我有这个遥控器(更准确地说,USB handset/phone)根据按下哪个按钮发送 USB 信号,我当前使用的软件将这些信号转换为击键或宏。然而,我目前使用的软件非常有限、不可配置且已过时。我从设备附带的 CD 中检索到的软件只是简单地命名为 'USBPhone 5 in 1',但是在互联网上的任何地方都没有提到这个。

不幸的是,该设备没有品牌,而且在 Internet 上的知名度也很低,所以我看不到是否有任何更新的软件,甚至看不到任何编辑方法。

非常感谢任何帮助!

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

http://joytokey.net/en/

我认为您需要首先对 USB 标准和设备有基本的了解 classes。然后您需要查明您的设备是否实现了特定设备 class 或某些专有接口。那么您将需要为设备使用驱动程序 class 或实施专有驱动程序。

虽然USB是Universal Serial Bus的缩写,但它传输的不是一些随机的模拟数据,而是定义明确的数字数据包。该标准为音频设备定义了 Audio Class,为视频设备定义了 Video class 等。大多数设备实现了一个或多个 classes。对于键盘和鼠标,它定义了 HID class,这很可能是您的设备实现的。您可以找到 HID 设备 class 相关规范 here. It is not the most simple one to begin with, but it should work when you just plug the device to your PC and open e.g. notepad and start writing. USB device class codes are listed here

为了找出您的设备 class 实现的设备,您需要阅读它的描述符。在 Windows 中,一种更简单的方法是使用 usbview. You can read more about USB decriptors from here.

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