X Window研究笔记(15)

X Window研究笔记(15)

转载时请注明出处和作者联系方式
作者联系方式:李先静 <xianjimli at hotmail dot com>

15.X Window支持触摸屏


X Window虽然可以直接支持触摸屏设备,但那样要求驱动程序做更多的工作,比如去抖,滤波和校准等等。这些功能通常是与设备无关的,没有必要与驱动程序耦合起来。tslib把这一部分功能分离出来,行成一个独立的库,这样所有触摸屏设备都可以重用这些代码了。所以通常的做法是X Window基于tslib,tslib再与具体的设备交互。

下载

svn co svn://svn.berlios.de/tslib/trunk/tslib tslib
(以前的pubcvs.arm.linux.org.uk服务器不能下载了)

编译

参考http://blog.csdn.net/absurd/archive/2006/03/31/646446.aspx

环境变量

TSLIB_TSDEVICE  触摸屏设备文件名。
                Default (non inputapi): /dev/touchscreen/ucb1x00
                Default (inputapi): /dev/input/event0
TSLIB_CALIBFILE  校准的数据文件,可以用ts_calibrate生成。
                Default: ${sysconfdir}/pointercal
TSLIB_CONFFILE  主配置文件名。
                Default: ${sysconfdir}/ts.conf
TSLIB_PLUGINDIR 插件目录
                Default: ${datadir}/plugins
TSLIB_CONSOLEDEVICE 控制台设备文件名
                Default: /dev/tty
TSLIB_FBDEVICE  Framebuffer 设备名
                Default: /dev/fb0

以上这些环境变量可以根据需要进行修改。

配置文件

触摸屏的配置文件比较简单,但有些参数比较专业,不是很容易理解。幸运的是,一般来说并不需要了解它,只要指明输入数据的原始设备即可,要做到这一点,往往只需要把适当的注释放开就行了。下面是一个常见的例子:
# module_raw corgi

# Uncomment if you're using a device with a UCB1200/1300/1400 TS interface
# module_raw ucb1x00

# Uncomment if you're using an HP iPaq h3600 or similar
# module_raw h3600

# Uncomment if you're using a Hitachi Webpad
# module_raw mk712

# Uncomment if you're using an IBM Arctic II
# module_raw arctic2


module pthres pmin
=1
module variance delta
=30
module dejitter delta
=100
module linear

实际应用中,一定要了解这些参数和其算法的实现,因为国内很多触摸屏往往质量欠佳,要花不少时间去调试,才能找到一组满意的参数。


(待续)
 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值