linux驱动摸索 --tslib移植

1.基本开发环境
Linux平台:虚拟机下ubuntu 14.04

交叉编译工具:gcc-4.4.3

arm开发板:mini2440(CPU:S3C2440 ,SDRAM:64M,Nor Flash:2M,Nand Flash:256M,网卡:DM9000EP)


tslib背景:

        在采用触摸屏的移动终端中,触摸屏性能的调试是个重要问题之一,因为电磁噪声的缘故,触摸屏容易存在点击不准确、有抖动等问题。tslib是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的接口。

安装步骤:
1.准备工作
确保以下软件已安装

# apt-get install autoconf(或autoconf2.13)
# apt-get install automake
# apt-get install libtool

2.下载
下载版本为tslib-1.4.tar.gz


3.配置
解压源代码tslib-1.4.tar.gz,

# tar -zxvf tslib-1.4.tar.gz
# cd tslib

4. 配置

#mkdir tmp
# ./autogen.sh
# echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache
# ./configure --host=arm-linux-  --prefix=$(pwd)/tmp


5.编译,安装

#make
#make install

编译生成的库,头文件等都拷贝至prefix制定的路径中。

cd tmp
cp * -rf /XXX

使用:

先安装lcd和触摸屏的.ko文件,注意开始加载LCD那节中提到的三个文件

insmod cfbcopyarea.ko 
insmod cfbfillrect.ko 
insmod cfbimgblt.ko 

修改 /etc/ts.conf第1行(去掉#号和第一个空格):
# module_raw input
改为:
module_raw input

设置环境变量
export TSLIB_TSDEVICE=/dev/input/event0
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_PLUGINDIR=/lib/ts
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0

之后可以运行tslib的一些测试程序

ts_calibrate
ts_test


注: ts_calibrate 触摸屏校准中,采用5点校准法,但并没有一个验证过程。

你可能感兴趣的:(mini2440,linux驱动)