已经有很多关于此的问题,但没有一个回答我的问题.
我有一个Saitek P990双模拟游戏板,并且想将操纵杆的运动读取为可理解的数据,可以用来控制电机等.
我将如何去做呢?如果可能的话,我想编写一些C代码来完成这项工作,但是我对C还是很陌生,因此需要非常清楚的解释:)
解决方法:
如果要阅读原始操纵杆,则有两个基本选项:
>使用操纵杆事件读取旧的/ dev / js0(或/ dev / input / js0)设备.
>查找相关的新/ dev / input / event *设备并读取通用输入事件.
您可以在Internet上轻松找到这两个示例.
或者您可以使用源(joydev.c,input.c)!
为了进行快速测试,许多发行版都有input-utils软件包.其源代码将最具启发性.
快速链接:
例如,参见教程here.基础知识是:
>使用open()打开设备/ dev / input / event *.
>使用带有EVIO *代码的ioctl()系统调用来识别设备.
>使用read()将事件读取到input_event结构中.
>确定有趣的事件并加以利用!
如前所述,从控制台运行input-events util以查看输入事件非常有用,因为您的程序会收到它们.