printf("Please select device:\n0.KeyBoard\n1.Mouse\n2.TouchScreen\n3.TouchPanel\n\Your choice is:");
scanf("%d",&i);
switch(i){
case 0:
test_key();
break;
case 1:
test_mouse();
break;
case 2:
test_touch_screen();
break;
case 3:
test_touch_pancel();
break;
default:
printf("Wrong device, Please select again!\n\n");
break;
}
goto select;
return 0;
}
关于Input设备,说明:
(1)ls -l /dev/input,得到设备名称和属性,注意此处没有input号这种Input层分配的内容,以event为主。如:
# ls -l /dev/input
crw-rw---- root input 13, 66 1970-01-01 00:00 event2
crw-rw---- root input 13, 33 1970-01-01 00:00 mouse1
crwxrwxrwx root input 13, 65 1970-01-01 00:00 event1
crw-rw---- root input 13, 32 1970-01-01 00:00 mouse0
crw-rw---- root input 13, 64 1970-01-01 00:00 event0
crw-rw---- root input 13, 63 1970-01-01 00:00 mice
如果这么些设备中无法确认哪个是目前在用的设备?可以采用这种方式:cat他们,然后操作鼠标或者键盘,哪个输出乱码就是用的哪个。
(2)cat /proc/bus/input/devices,主要信息是:
N:
P: Phys=s3c-keypad/input0
S: Sysfs=/class/input/input0
H: Handlers=kbd event0
N:
P: Phys=input(ts)
S: Sysfs=/class/input/input1
U: Uniq=
H: Handlers=kbd mouse0 event1
N:
P: Phys=1-0053/input0
S: Sysfs=/class/input/input2
U: Uniq=
H: Handlers=mouse1 event2
分配的Input节点全在Sysfs上,真正的设备dev在Handlers上。
(3)ls -l /sys/class/input,类设备信息: