当前位置: 技术问答>linux和unix
Linux下面的touch screen设备的事件序列怎么看不懂啊!
来源: 互联网 发布时间:2016-11-24
本文导语: Linux下面的touch screen设备的事件怎么看不懂啊! 从/dev/input/event0里面读出来 每个touch动作似乎产生了7个事件,大概如下: event(0): time: 98(second) 531623(microsecond) type: 3; code: 57; value: 1; event(1): time: 98(second) ...
Linux下面的touch screen设备的事件怎么看不懂啊!
从/dev/input/event0里面读出来
每个touch动作似乎产生了7个事件,大概如下:
event(0): time: 98(second) 531623(microsecond) type: 3; code: 57; value: 1;
event(1): time: 98(second) 531689(microsecond) type: 3; code: 48; value: 201;
event(2): time: 98(second) 531718(microsecond) type: 3; code: 50; value: 10;
event(3): time: 98(second) 531744(microsecond) type: 3; code: 53; value: 177;
event(4): time: 98(second) 531767(microsecond) type: 3; code: 54; value: 367;
event(5): time: 98(second) 531790(microsecond) type: 0; code: 2; value: 0;
event(6): time: 98(second) 531820(microsecond) type: 0; code: 0; value: 0;
这个有高手给解释一下吗?或者告诉我去看哪里的代码。是不是要看触摸屏驱动的代码呢?
非常感谢!~
从/dev/input/event0里面读出来
每个touch动作似乎产生了7个事件,大概如下:
event(0): time: 98(second) 531623(microsecond) type: 3; code: 57; value: 1;
event(1): time: 98(second) 531689(microsecond) type: 3; code: 48; value: 201;
event(2): time: 98(second) 531718(microsecond) type: 3; code: 50; value: 10;
event(3): time: 98(second) 531744(microsecond) type: 3; code: 53; value: 177;
event(4): time: 98(second) 531767(microsecond) type: 3; code: 54; value: 367;
event(5): time: 98(second) 531790(microsecond) type: 0; code: 2; value: 0;
event(6): time: 98(second) 531820(microsecond) type: 0; code: 0; value: 0;
这个有高手给解释一下吗?或者告诉我去看哪里的代码。是不是要看触摸屏驱动的代码呢?
非常感谢!~
|
type: 3 绝对坐标事件类型
type: 0 同步事件
但是绝对坐标事件的code值我也没看懂,自己看看 0x35=53 0x32=50 0x36=54
感觉你的驱动是支持多点触摸的。你应该看看http://lxr.linux.no/linux+v2.6.38/Documentation/input/multi-touch-protocol.txt
type: 0 同步事件
但是绝对坐标事件的code值我也没看懂,自己看看 0x35=53 0x32=50 0x36=54
764#define ABS_MT_SLOT 0x2f /* MT slot being modified */
765#define ABS_MT_TOUCH_MAJOR 0x30 /* Major axis of touching ellipse */
766#define ABS_MT_TOUCH_MINOR 0x31 /* Minor axis (omit if circular) */
767#define ABS_MT_WIDTH_MAJOR 0x32 /* Major axis of approaching ellipse */
768#define ABS_MT_WIDTH_MINOR 0x33 /* Minor axis (omit if circular) */
769#define ABS_MT_ORIENTATION 0x34 /* Ellipse orientation */
770#define ABS_MT_POSITION_X 0x35 /* Center X ellipse position */
771#define ABS_MT_POSITION_Y 0x36 /* Center Y ellipse position */
感觉你的驱动是支持多点触摸的。你应该看看http://lxr.linux.no/linux+v2.6.38/Documentation/input/multi-touch-protocol.txt
|
看看/usr/include/linux/input.h文件。有一个结构体,看完你就明白 了