一,编译:
用的是ts1.0的版本
-
export CC=arm-linux-gcc
-
export PATH=/usr/local/arm/2.95.3/bin:$PATH
-
./autogen.sh
为防止出现undefined reference to `rpl_malloc' 错误,采取以下措施:
-
echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache
配置:
-
./configure --host=arm-linux –cache-file=arm-linux.cache --prefix=/home/home/tslib/ts
编译
make
安装
make install
复制生成的文件到交叉编译目录下
-
cp ./build/lib/libts-0.0.so.0* /usr/local/arm/3.4.1/arm-linux/lib/
-
cp ./build/lib/libts.so /usr/local/arm/3.4.1/arm-linux/lib/
-
cp ./build/include/*.h /usr/local/arm/3.4.1/arm-linux/include/
二,触摸屏校正配置
支持触摸屏的tslib编译完毕后,为了进行触摸屏校正,还需要设置环境变量并修改配置文件/tslib-1.0/etc/ts.conf。
(1)设置环境变量(根据个人的设定而改变,并非一成不变,只是理解各项的意思,根据自己的设备而改变)
将tslib-1.0的整个目录拷贝到开发板,然后修改/etc/profile文件,在其中加入以下环境变量的设置:
vi xxx/etc/profile # 其中xxx代表开发板上的根文件系统目录
-
export TSLIB_ROOT=/tslib-1.0/build # 指定tslib的安装目录
-
export TSLIB_TSDEVICE=/dev/input/event0 # 指定触摸屏设备节点为event0
-
export TSLIB_CALIBFILE=/etc/pointercal #指定触摸屏校准文件pointercal的存放位置
-
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf # 指定tslib配置文件的位置
-
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts # 指定模块文件
-
export TSLIB_CONSOLEDEVICE=none # 控制台设为none
-
export TSLIB_FBDEVICE=/dev/fb0 # 指定帧缓存设备节点为fb0
-
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib
# 将tslib的库文件设为共享
(2)修改配置文件
vi xxx/tslib-1.0/build/etc/ts.conf
-
module_raw input # 指定输入设备(特定的开发板可能不同)
-
module pthres # 连续下压
-
module variance delta=30 # 变化宽度
-
module dejitter delta=100 # 轨迹变化
-
module linear # 线性校准
其中第一行告诉tslib从linux的输入设备读取数据,需要用到input这个模块,也就是plugin目录下的input.so文件;其他参数分别控制触摸点的连续下压、变化宽度、轨迹变化和线性校准。
3.在开发板上进行测试校准
(1) 首先运行校准程序
共五点,分别为上左、上右、下左、下右和正中
-
./TSLIB_ROOT/bin/ts _calibrate
(2) 然后运行测试程序
阅读(709) | 评论(0) | 转发(0) |