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