Tslib是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的接口。
确保这些软件已经安装: $apt-get install autoconf $apt-get install automake
$apt-get install libtool
1.首先得下载源程序,我使用的是tslib1.4版本的。 我的下载地址:http://code.taobao.org/p/Myfl2440_1/src/tslib-1.4.tar.bz2
2.然后对其进行解压得到tslib文件夹。
3.进入tslib下,执行脚本文件./autogen.sh
4.进行配置:#sudo ./configure --host=arm-linux ac# sudo ./configure --host=arm-linux ac_cv_func_malloc_0_nonnull=yes --prefix=/usr/local/arm/tslib CC=/opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-gcc 注意这里的--prefix为你安装tslib的路径,还有将交叉编译器的位置设置好。
5.make
6.make install:在tslib下生成四个目录,分别为/bin,/etc,/lib,/include。 生成的库位于lib中,该目录下的子目录ts是很重要的文件,包含许多校准用到的库,bin目录下为校准、测试工具。
7.将这生成的四个文件夹打包下载到开发板中。
8.在开发板中设置环境变量: >:vi /etc/profile
# Touch Scree tslib Setting这里的控制台设备可以自己查看,在/dev下。
export TSLIB_ROOT=/apps/tslib //指定路径
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf //指定tslib配置文件的位置
export TSLIB_CALIBFILE=$TSLIB_ROOT/etc/pointercal //指定触摸屏校准文件的存放位置
export TSLIB_TSDEVICE=/dev/event0 //指定触屏设备
export TSLIB_CONSOLEDEVICE=none //设置控制台设备为none
export TSLIB_FBDEVICE=/dev/fb0 //指定帧缓冲设备
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts/ //指定触摸屏插件所在路径
修改tslib/etc/ts.conf文件: 这里默认关闭所有的module_raw,我们随便打开一个,我打开的是第一个。
修改完上面内容后,我们便可以执行我们的tslib/bin下的测试程序。 ./ts_calibrate:校验程序,屏幕出现五个十字宽,逐个点击,出现坐标信息:
然后在tslib/etc中会生成一个校验文件pointercal。
./ts_print_raw:
./ts_test : 可在屏幕上画画。
这里容易遇到的错误:
这个错误是因为/etc/profile中的环境变量没有设置对,设置完记得重启哦