tslib是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的接口。

1、tslib编译

从tslib官网下载最新的tslib源码,可以在源码包中查看INSTALL文件等,确定编译、安装的步骤。

  1. ./autogen.sh
  2. echo "ac_cv_func_malloc_0_nonnull=yes" > arm.cache
  3. ./configure --host=arm-linux --cache-file=arm.cache --prefix=/usr/tslib
  4. make
  5. make install

配置选项可以通过./configure –h来查看,编译安装后,在/usr/tslib目录下有相应的bin、lib、etc等目录内容。

2、环境变量

把tslib安装目录下bin、etc、lib目录拷贝到板端/usr目录下。为了能使用tslib,系统必须知道tslib的位置,配置等等。在/etc/profile文件中加入tslib的环境变量。

  1. TSLIB_ROOT=/usr/tslib
  2. export TSLIB_TSDEVICE=/dev/input/event1
  3. export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
  4. export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
  5. export TSLIB_CALIBFILE=/etc/pointercal
  6. export TSLIB_CONSOLEDEVICE=none
  7. export TSLIB_FBDEVICE=/dev/fb0
  8. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib

3、测试

板端启动系统,进入/usr/tslib/bin目录,执行触摸屏校准程序,确认移植成功。

  1. ./ ts_calibrate

21_tslib移植 - 图1

4. 附录

文件 源码下载
bootloader源码以及使用说明 https://pan.baidu.com/s/1slczwhJ
Qt5.8官网源码 https://pan.baidu.com/s/1eRDJtNs
本系列例程的根文件系统 https://pan.baidu.com/s/1nuGmSqt
opev3.2.0官网源码 https://pan.baidu.com/s/1i5btLGT
yaffs官网源码 https://pan.baidu.com/s/1pLpuHw3
busybox-1.26.2官网源码 https://pan.baidu.com/s/1bpkZynt
tslib官网源码 https://pan.baidu.com/s/1i4EtjfR
mplayer-1.3.0官网源码 https://pan.baidu.com/s/1i5MGRhb
基于S3C2416修改的linux-4.10.10源码 https://pan.baidu.com/s/1sl0fXlr