mini2440移植tslib

来源:互联网 发布:java 代码生成器 编辑:程序博客网 时间:2024/06/17 14:36

系统环境:

Centos 6.4 x64

首先,下载tslib 1.4版本。地址就不写了。

然后解压tslib压缩文件。

# tar -xvf tslib-1.4.gz# cd tslib#./autogen.sh# sed -i 's/#undef malloc/\/\/&/g'  config.h.in# echo "ac_cv_func_malloc_0 _nonnull=yes">hzwy23.cache 
#./configure --host=arm-linux --cache-file=hzwy23.cache --enable-inputapi=no --prefix=/usr/local/tslib 
# make# make install

通过上面的命令后,编译好的tslib就在/usr/local/tslib目录中。目录中有如下几个文件:

bin  etc  include  lib

将上面4个文件夹复制到开发板的/usr/local目录中。然后修改开发板/usr/local/etc/ts.conf文件内容:

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

通过上面的过程,基本上tslib已经移植到开发板上了。

下面对开发板进行一些配置,首先修改环境变量/etc/profile.在这个文件中追加下面内容:

export LD_LIBRARY_PATH=/usr/local/lib                                  export TSLIB_TSDEVICE=/dev/input/event0export TSLIB_CONFFILE=/usr/local/etc/ts.confexport TSLIB_PLUGINDIR=/usr/local/lib/ts    export TSLIB_CONSOLEDEVICE=none                                                 export TSLIB_CALIBFILE=/etc/pointercal  export TSLIB_FBDEVICE=/dev/fb0

重启开发板。如果出现触摸屏校准界面,且点击可以识别,表明移植成功了。


如果不成功,可以手动运行开发板下面程序/usr/local/bin/ts_calibrate程序。这个程序是触摸屏校准程序。如果不能运行,表明系统不能找到/dev/input/event0.这时可以检查下内核是否配置了s3c2440的触摸屏驱动。进入kernel,执行make menuconfig

Device Drivers -->  Input device support --> Event interface

Device Drivers -->  Input device support --> Touchscreens --> S3C2410 Touchscreens ...是否选中。

新版的友善之臂提供的P35屏幕采用一线触摸,而s3c2440片内的触摸控制器采用4线。默认情况下,P35屏幕是不能使用S3C2440片内的触摸驱动的。如果想让s3c2440片内触摸驱动支持P35屏幕,需要修改P35硬件版(修改很简单,几秒钟就改好了)

0 0