关于触摸驱动的问题input_report_abs
input_report_abs(dev,ABS_X,55);input_report_abs(dev,ABS_Y,55);
。
。
按理说触摸笔按下去,鼠标指针会跳到(55.55)的位置;
现在我发现按下去的时候没反应,等抬起的时候才会跳到那个位置。。。
你只有这两句还不可以看出什么来。你要不看下我们6410的教程中有关输入了系统的那章节吧,那个是对输入子系统分析得非常好的。 1、手指刚触摸到屏时,发生中断执行
input_report_abs(input_dev, ABS_X, 240);
input_report_abs(input_dev, ABS_Y, 120);
input_report_abs(input_dev, ABS_PRESSURE, 1);
input_report_key(input_dev, BTN_TOUCH, 1);
input_sync(input_dev);
2、手指离开屏时,发生中断执行
input_report_abs(input_dev, ABS_PRESSURE, 0);
input_report_key(input_dev, BTN_TOUCH, 0);
3、当手指刚触摸到屏时串口输出信息(如果手指一直不动不离开屏则没有信息再输出)
pressed x: 240, y: 120, area: 4
evbug: Event. Dev: input0, Type: 3, Code: 0, Value: 240
evbug: Event. Dev: input0, Type: 3, Code: 1, Value: 120
evbug: Event. Dev: input0, Type: 3, Code: 24, Value: 1
evbug: Event. Dev: input0, Type: 1, Code: 330, Value: 1
evbug: Event. Dev: input0, Type: 0, Code: 0, Value: 0
4、刚手指离开屏时串口输出信息
==========RELEASE=finger0==========
evbug: Event. Dev: input0, Type: 3, Code: 24, Value: 0
evbug: Event. Dev: input0, Type: 1, Code: 330, Value: 0
evbug: Event. Dev: input0, Type: 0, Code: 0, Value: 0
TS_READ----> x = 240, y = 120, pressure = 1
946656073.202784: 240 120 1
TS_READ----> x = 240, y = 120, pressure = 0
946656073.952571: 240 120 0
5、分析
TS_READ----> x = 240, y = 120, pressure = 1
946656073.202784: 240 120 1
TS_READ----> x = 240, y = 120, pressure = 0
946656073.952571: 240 120 0
以上这些信息是tslib中打印输出的。
TS_READ----> x = 240, y = 120, pressure = 1
946656073.202784: 240 120 1
以上这两句我感觉应该出现在3(当手指刚触摸到屏时)中的串口信息输出位置才正常。可它偏偏就出现在4(刚手指离开屏时)中。
页:
[1]