【发布时间】:2013-10-22 19:40:31
【问题描述】:
已经有很多关于此的问题,但没有人回答我的问题。
我有一个 Saitek P990 双模拟游戏手柄,并且想将操纵杆的动作读取为可用于控制电机等的可理解数据。
我该怎么做呢?如果可能的话,我想编写一些 C 代码来完成这项工作,但我对 C 很陌生,因此需要非常清楚的解释:)
【问题讨论】:
标签: c linux usb joystick gamepad
已经有很多关于此的问题,但没有人回答我的问题。
我有一个 Saitek P990 双模拟游戏手柄,并且想将操纵杆的动作读取为可用于控制电机等的可理解数据。
我该怎么做呢?如果可能的话,我想编写一些 C 代码来完成这项工作,但我对 C 很陌生,因此需要非常清楚的解释:)
【问题讨论】:
标签: c linux usb joystick gamepad
如果您想读取原始操纵杆,您有两个基本选择:
/dev/js0(或/dev/input/js0)设备。/dev/input/event* 设备并读取通用输入事件。您可以在 Internet 上轻松找到这两个示例。 或者你可以使用源码(joydev.c,input.c)!
为了快速测试,许多发行版都有input-utils 包。它的源代码将是最有启发性的。
快速链接:
例如参见教程here。基础是:
open()打开设备/dev/input/event*。ioctl() 系统调用和EVIO* 代码来识别设备。read() 的事件读入input_event 结构。正如我之前所说,从控制台运行input-events util 来查看程序将接收到的输入事件是最有用的。
【讨论】: