[joysticke]使用Ubuntu16.04环境下读取USB手柄/方向盘信息
Posted huangyuanhao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[joysticke]使用Ubuntu16.04环境下读取USB手柄/方向盘信息相关的知识,希望对你有一定的参考价值。
1.获取设备的端口
在插入设备时,在/dev/input目录下 ,操作系统会为每一个设备分配event号,先插上的为event0,后插上的为event1。
查找设备的设备号用如下指令:
cat /proc/bus/input/devices
获得如下输出
1 I: Bus=0003 Vendor=11ff Product=001c Version=0111 2 N: Name="PXN-V3II" 3 P: Phys=usb-0000:00:14.0-11/input0 4 S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb1/1-11/1-11:1.0/0003:11FF:001C.0009/input/input29 5 U: Uniq= 6 H: Handlers=event21 js0 7 B: PROP=0 8 B: EV=1b 9 B: KEY=1fff000000000000 0 0 0 0 10 B: ABS=30027 11 B: MSC=10
在端口处找到设备名字“PXN-V3II”,event21/js0是手柄的设备号。
如果找不到,可能是手柄中的版本不对,根据产品说明书需要由X-input转换到D-input模式。(长按home键3秒)X -input适用于XBOX360移植到PC上的即插即玩的游戏,D-input适用于早期单机游戏如极品飞车1-12等。
2、读取设备数据
查看端口号:
1 ls /dev/input
查看端口输出:
cat /dev/input/js0 | hexdump
或者
cat /dev/input/enent21 | hexdump
得到一些16进制的数字,当手柄按下的时候会有数字变化
以上是关于[joysticke]使用Ubuntu16.04环境下读取USB手柄/方向盘信息的主要内容,如果未能解决你的问题,请参考以下文章
使用 systemd 在 Ubuntu 16.04 上播放框架部署