tslib-1.3

段时间被触摸屏校准弄得摸不着头脑,网上的资料对我的移植都不具有可操作性。尽管如此,我还是很感谢网络,上面有几个网页给了我很大的启示,估计做触摸屏校准的都会首先搜到这些网页一睹究竟。其中,一篇最全的竟然是武大的一位女士写的,让我佩服不已。可能受这些优秀的网友的启发吧,我在经过连续三天的奋战后,终于校准成功,并将生成的pointercal校准文件放到移植的系统中,触摸屏正常工作了。现在把碰到的问题及解决方法写在这里,供各位网友参考。 1.tslib-1.3 选用的校准程序就是网上比较流行的这个版本,下载出处可以到武大的那位朋友那里下载,基本能用。如果想从我这里得到,可以把信箱留下共同讨论。 2.准备工作在移植tslib前,首先需要将linux移植好,并载入合适的文件系统(呵呵,此处有点废话了)。我使用的文件系统是实验板自带的MyRootfs.cramfs系统,移植成功后,使用minicom看触摸屏设备文件是什么。方法是:通过打开/dev/下touchscreen文件夹(这是触摸屏驱动自动生成的文件),看里面的文件是哪个。我的设备文件是:/dev/touchscreen/0,/dev/h3600_tsraw,/dev/h3600_ts,这对后续的环境变量设置有重要用途。当然,所用实验板不同,此设备文件亦不同,大家需要注意了解自己的系统即可。知道触摸屏的设备文件后,要保证移植的系统在上电运行时,没有打开任何应用程序——或者说只是单纯的运行系统,即所产生的现象是只有那只企鹅孤零零的呆在你的LCD的左上角。这时就可以开始安装tslib-1.3了。 3.安装tsilib 设置好CC=/usr/local/arm/2.95.3/bin/arm-linux-gcc CXX=/usr/local/arm/2.95.3/bin/arm-linux-g++ 使用./autogen.sh生成configure文件,并运行 ./configure --host=arm-linux --target=arm-linux --prefix=$PWD/image --enable-inputapi=no 修改src/ts_read_raw.c中的char *defaulttseventtype="H3600",因为我的触摸屏驱动对应此结构。 make make install 将生成的build文件夹全部拷入一个可以作为nfs挂接的文件夹下。我的是拷到自己的文件系统中的/root/tslib 目录下(mkdir 生成)。 4.nfs挂接打开nfs服务后,在minicom中mount -t nfs -o nolock 10.0.0.10:/root/Myjob/MyRootfs/root /tmp (此处tmp是目标文件系统上的临时文件夹) 5.环境变量设置当nfs挂接成功后,就能够在minicom中看到挂接的/tmp/root/tslib/build,此时 cd build #开始设置环境变量 /tmp/root/tslib # export V_ROOT=mnt/nfs/tslib/image /tmp/root/tslib # export TSLIB_CONSOLEDEVICE=none /tmp/root/tslib # export TSLIB_FBDEVICE=/dev/fb0 /tmp/root/tslib # export TSLIB_TSDEVICE=/dev/touchscreen/0raw /tmp/root/tslib # export TSLIB_CALIBFILE=$V_ROOT/etc/pointercal /tmp/root/tslib # export TSLIB_CONFFILE=$V_ROOT/etc/ts.conf /tmp/root/tslib # export TSLIB_PLUGINDIR=$V_ROOT/share/ts/plugins /tmp/root/tslib # export QWS_MOUSE_PROTO=TPanel:/dev/touchscreen/0raw /tmp/root/tslib # export LD_LIBRARY_PATH=$V_ROOT/lib /tmp/root/tslib # ln -s /dev/touchscreen/0 /dev/h3600_tsraw /tmp/root/tslib # ln -s /dev/fb/0 /dev/fb0 /mnf/nfs/tslib/image/bin/ # ./ts_calibrate 此时就可以使用5点校准了。生成的文件放在哪里可以从环境变量TSLIB_CALIBFILE处得到。将这个文件拷出,就可以使用了。上理水声。 http://blog.chinaunix.net/u1/55409/showart_457824.html http://hi.baidu.com/steven926/blog/item/709d1c0d2e3c7d206159f3c0.html http://www.stubc.com/archiver/tid-3359.html http://hi.baidu.com/steven926/blog/item/709d1c0d2e3c7d206159f3c0.html 环境变量终极配置 最终触摸矫正环境变量设置 export TSLIB_CONSOLEDEVICE=none export TSLIB_FBDEVICE=/dev/fb0 export TSLIB_TSDEVICE=/dev/touchscreen/0raw export TSLIB_CALIBFILE=/mnt/nfs/tslib/etc/pointercal export TSLIB_CONFFILE=/mnt/nfs/tslib/etc/ts.conf export TSLIB_PLUGINDIR=/mnt/nfs/tslib/share/ts/plugins export QWS_MOUSE_PROTO=linuxtp:/dev/touchscreen/0raw //export QWS_MOUSE_PROTO=TPanel:/dev/touchscreen/0raw export LD_LIBRARY_PATH=/mnt/nfs/tslib/lib:$LD_LIBRARY_PATH export TSLIB_TSEVENTTYPE="H3600" ln -s /dev/touchscreen/0raw /dev/h3600_tsraw ln -s /dev/fb/0 /dev/fb0 export QTDIR=/qt export QTEDIR=$QTDIR export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH //echo $LD_LIBRARY_PATH 最终调节qt3触摸环境变量 (将pointercal 拷贝到/etc中) export TSLIB_CONSOLEDEVICE=none export TSLIB_FBDEVICE=/dev/fb0 export TSLIB_TSDEVICE=/dev/touchscreen/0raw export TSLIB_CALIBFILE=/etc/pointercal export TSLIB_CONFFILE=/mnt/nfs/tslib/etc/ts.conf export TSLIB_PLUGINDIR=/mnt/nfs/tslib/share/ts/plugins export QWS_MOUSE_PROTO=linuxtp:/dev/touchscreen/0raw export LD_LIBRARY_PATH=/mnt/nfs/tslib/lib:$LD_LIBRARY_PATH ln -s /dev/touchscreen/0raw /dev/h3600_tsraw ln -s /dev/fb/0 /dev/fb0 export QTDIR=/qt export QTEDIR=$QTDIR export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值