原创 tslib1.3触摸屏使用过程。

2009-4-8 18:42 4693 7 11 分类: MCU/ 嵌入式

有时候事情就是那么奇怪...


-----------编译tslib-1.3----------
[root@Linux tslib-1.3]# tar jxvf tslib-1.3.tar.bz2
[root@Linux tslib-1.3]# cd tslib-1.3
[root@Linux tslib-1.3]# export CC="arm-linux-gcc"
[root@Linux tslib-1.3]# export CXX= arm-linux-g++
[root@Linux tslib-1.3]# ./autogen.sh
[root@Linux tslib-1.3]# export PLUGIN_DIR=$PWD/plugins
[root@Linux tslib-1.3]# ./configure --prefix=/nfs/opt/tslib1.3 --host=arm-linux --enable-inputapi=yes



tslib解压路径下的plugins路径,此环境变量很重要,没有话编译时会报“only absolute run-path ...”的错误
# make
# make install


修改ts.conf
# cd /mnt/nfs/tslib1.3-install/etc
# vi ts.conf


#module mousebuts
module variance xlimit="50" ylimit="50" pthreshold="3"
module dejitter xdelta="1" ydelta="1" pthreshold="3"
module linear
将第一行的“#”去掉,让触摸屏起作用。


错误:


test.sh内容在最下面。
[root@Qiu tslib1.3]# ./test.sh
Segmentation fault


export TSLIB_CALIBFILE=$V_ROOT/etc/pointercal


我之前是用export TSLIB_CALIBFILE=/etc/pointercal 但是在这个目录我已经有这个文件了,导致上面那个错误,所以改个位置或者删除本身目录下的那个文件都能解决问题。


[root@Qiu tslib1.3]# ./test.sh
xres = 240, yres = 320
卡着不动的问题解决:export TSLIB_TSEVENTTYPE=H3600


之前是用export TSLIB_TSEVENTTYPE=event0


这两个错误网上也看到不少人碰到,希望多大家有帮助。


[root@Qiu tslib1.3]# ./test.sh
xres = 240, yres = 320
Took 3 samples...
Top left : X =  224 Y =  764
Took 4 samples...
Top right: X =  776 Y =  807
Took 8 samples...
Bot right: X =  767 Y =  163
Took 12 samples...
Bot left : X =  228 Y =  155
Took 10 samples...
Middle: X =  501 Y =  489
-7.593536 0.256659 -0.001115
318.554565 0.016561 -0.350761
Calibration constants: -497650 16820 -73 20876792 1085 -22987 65536


附上自己的test.sh


export TS_ROOT=/opt/tslib1.3
export TSLIB_TSEVENTTYPE=H3600
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_TSDEVICE=/dev/input/tsraw0
export TSLIB_CALIBFILE=$TS_ROOT/etc/pointercal
export TSLIB_CONFFILE=$TS_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TS_ROOT/share/ts/plugins
export QWS_SIZE=240x320
export QWS_MOUSE_PROTO="Tslib:/dev/input/tsraw0"
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TS_ROOT/lib
cd $TS_ROOT/bin
./ts_calibrate


 


真不容易啊,看了别人的东西,别人的问题不是自己的问题,学会自己处理问题才是正道啊。

PARTNER CONTENT

文章评论4条评论)

登录后参与讨论

用户1679196 2009-4-8 18:34

/nfs 用来做根文件系统启动的。那/opt 就是文件系统中的文件夹啦。

用户1679196 2009-4-8 18:33

我自己写的脚本啊,内容不是都在上面了吗.

用户195087 2009-4-8 16:45

./test.sh 这个文件是哪的,我的tslib文件夹里没有啊

用户195087 2009-4-8 16:37

我现在也在做s3c2410的嵌入式linux系统的移植,正在用lz的文章呢,谢谢了,不过就是不清楚lz的目录到底是怎样安排的,呵呵
相关推荐阅读
用户1679196 2009-09-04 16:17
两个linux按键驱动之二 read(定时器去抖动)
//相比之下poll更为实用,但是这个代码实在太具有代表性了...涉及了下面几个知识。代码很大部分是linux设备驱动开发详解的内容。/*1、阻塞读取,队列概念2、睡眠等待中断产生3、定时器产生及相应...
用户1679196 2009-09-04 16:08
两个linux按键驱动之一 poll(未去抖动)
//驱动//未加去抖动//通过poll判断是否可读来得到中断值#include <linux/module.h> #include <linux/kernel.h>#inclu...
用户1679196 2009-09-04 09:39
select 使用
以下来自网络搜索:Linux下select调用的过程:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:offi...
用户1679196 2009-09-03 14:52
Linux设备驱动之定时器
Linux内核中定义了一个timer_list结构,我们在驱动程序中可以利用之: #include<linux/timer.h> struct timer_list { struct li...
用户1679196 2009-08-28 17:38
loff_t *ppos是什么东东
ssize_t generic_file_read(struct file * filp, char * buf, size_t count, loff_t *ppos) 这是一个文件读函数 我们很容...
用户1679196 2009-08-12 17:30
linux 延时函数几个资料
http://www.cppblog.com/CppExplore/archive/2008/04/02/46111.html一、 基础知识1、时间类型。Linux下常用的时间类型有4个:time_t...
EE直播间
更多
我要评论
4
7
关闭 站长推荐上一条 /3 下一条