主题 : tslib移植,出现触摸屏触摸偏移现象 复制链接 | 浏览器收藏 | 打印
活着,学着,思着
级别: 新手上路
UID: 49742
精华: 0
发帖: 9
金钱: 45 两
威望: 9 点
综合积分: 18 分
注册时间: 2011-06-14
最后登录: 2011-06-19
楼主  发表于: 2011-06-18 00:56

 tslib移植,出现触摸屏触摸偏移现象

最近在做触摸屏驱动和tslib1.4的移植,有点问题想问问大家:

第一个,是关于tslib如何取得驱动中传递上来的坐标值和压力值的问题。
我用网上下的一个驱动s3c2410ts.c,移植成功,在3.5寸上鼠标触摸正常,但是到了7寸屏又不正常。有个疑问是,从触摸屏的驱动到tslib,是通过传递结构体的坐标值及压力值,在static int tsRead(TS_RET * ts_ret)函数中传递给tslib,结构如下:
typedef struct {
  unsigned short pressure;
  unsigned short x;
  unsigned short y;
  unsigned short pad;
} TS_RET;
而在tslib中,是通过看相应的驱动结构,就如上的TS_RET,选择哪个驱动设备,我选的是H3600,它的结构刚好对应:struct h3600_ts_event { /* Used in the Compaq IPAQ */
unsigned short pressure;
unsigned short x;
unsigned short y;
unsigned short pad;
};
而我在友善之臂论坛看到的驱动移植,是通过TOUCHSCREEN+ADC的模式的驱动,想问的是,这种模式,与tslib想匹配的结构是哪个,我一直没能找到;如果不是用该结构,而是通过别的方式的,请问是如何和tslib匹配起来的?

2.第二个疑问,是关于移植了触摸屏后,触摸屏出现的触摸偏移问题。
我在2.6.30.4系统上做TSLIB1.4的移植,触摸屏的驱动用的的是TOUCHSREEN和ADC,在7寸屏上,移植成功,通过/dev/event0设备,能正常的触摸,通过tslib自带的测试程序校正屏后,能正常的用.ts_test测试。但是出现触摸屏的触摸偏移问题,就是你实际的触摸位置,比在屏幕上看到的鼠标所在位置偏移了一点,有5mm左右,不知道大家有没有遇到类似的问题,或是有相关的思路,帮我分析解答一下,谢谢。
另外关于tslib/etc/ts.conf中的参数设置,我只知道要用的是input module,但是后边的关于灵敏度插件、滤波、去噪、线性转换的参数设置,都不清楚,不知道我的触摸屏偏移跟参数设置有没有关系。

有知道的朋友,或是有想法的朋友,请不吝指教,谢谢。
级别: 新手上路
UID: 54951
精华: 0
发帖: 1
金钱: 5 两
威望: 1 点
综合积分: 2 分
注册时间: 2011-09-08
最后登录: 2011-09-27
1楼  发表于: 2011-09-08 21:07
你说的便宜5mm的问题,不晓得跟ts.conf的配置有没有关系。如果抖动比较厉害的话跟ts.conf配置肯定是有关系的。ts.conf的配置一般
module mousebuts

#module variance xlimit=20 ylimit=20 pthreshold=3

#module dejitter xdelta=20 ydelta=20 pthreshold=3

module linear
这样配置就可以。

如果抖动的比较厉害可以尝试:
module mousebuts

#module variance xlimit=20 ylimit=20 pthreshold=3

module dejitter xdelta=20 ydelta=20 pthreshold=3

module linear