幻想小说网 酷文学 深夜书屋 叮当小说网 找小说网 无限小说网 红尘小说网

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

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


(待续)
 

posted on 2007-10-02 13:26  张云临  阅读(132)  评论(0编辑  收藏  举报

导航