主题 : 关于Linux下的多点触摸(was: Linux应用程序访问触摸屏) 复制链接 | 浏览器收藏 | 打印
级别: 骑士
UID: 9169
精华: 0
发帖: 249
金钱: 1330 两
威望: 299 点
综合积分: 498 分
注册时间: 2009-09-19
最后登录: 2017-08-14
楼主  发表于: 2010-04-26 22:48

 关于Linux下的多点触摸(was: Linux应用程序访问触摸屏)

现在我想在S3C2410_ts.c的基础上,得到触摸坐标,因为我想做双指触控,所以不能使用鼠标事件,而应该像Win7一样,向上报一个特殊的数据结构体(手指坐标,触摸时间,压力等),以便让应用程序解析。所以请问哪位高手能给予帮助,万分感谢!
[ 此帖被kasim在2010-04-26 23:05重新编辑 ]
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2010-04-26 23:05
关于Linux下多点触摸(Multi Touch)的实现和协议,参考内核源代码目录下的Documentation/input/multi-touch-protocol.txt (要求内核源代码版本>=2.6.30)

这是Google Nexus One手机上的带Multi Touch功能的touchscreen驱动源代码:
http://android.git.kernel.org/?p=kernel/msm.git;a=blob;f=drivers/input/touchscreen/synaptics_i2c_rmi.c;h=f37c0c0fba4dcd6f32b9b653d87fe85a05d5af73;hb=android-msm-2.6.29-nexusone

不过不要想在mini2440上实现,Multi Touch首先要求触摸屏硬件支持Multi Touch,很明显,mini2440上所用的触摸屏没有一个是符合要求的。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 骑士
UID: 9169
精华: 0
发帖: 249
金钱: 1330 两
威望: 299 点
综合积分: 498 分
注册时间: 2009-09-19
最后登录: 2017-08-14
2楼  发表于: 2010-04-27 12:47
谢谢您的答复。那请问我用QT如何去获取触摸屏的坐标呢?除了鼠标事件以外还有其他方法吗?
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
3楼  发表于: 2010-04-27 13:40

 回 2楼(libailiang) 的帖子

程序当然可以直接去读触摸屏设备,但问题是有什么必要去用其他途径获取触摸屏事件的坐标呢?
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."