• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
主题 : 关于tslib问题 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 7439
精华: 1
发帖: 16
金钱: 130 两
威望: 50 点
贡献值: 10 点
综合积分: 52 分
注册时间: 2009-07-15
最后登录: 2020-04-20
楼主  发表于: 2009-11-24 13:14

 关于tslib问题

管理提醒: 本帖被 kasim 执行加亮操作(2009-11-25)
从网上下载了一个tslib-1.3,编译通过,在运行ts_calibrate时,出现了下面的语句,大家帮我看看,问题可能出现在哪?

xres = 800, yres = 480
ts_read: Invalid argument  --就是这句出错了
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2009-11-24 13:52
自己交叉编译一个strace工具(http://freshmeat.net/urls/29cda9d96336bdc19b9e73c1dc89a454)放到开发板的/bin目录下,用strace ts_calibrate命令执行,把输出的结果贴出来。
关于strace的详细信息,参考http://www.ibm.com/developerworks/cn/linux/l-tsl
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 7439
精华: 1
发帖: 16
金钱: 130 两
威望: 50 点
贡献值: 10 点
综合积分: 52 分
注册时间: 2009-07-15
最后登录: 2020-04-20
2楼  发表于: 2009-11-24 18:19
搞了一下午的strace,终于.....还是编译出错,每个版本的出错都不尽相同,搞LINUX开发的全是天才啊,不是人做的事啊!
强烈要求版总做一个mini2440上的strace,给大家用,哈哈哈.
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
3楼  发表于: 2009-11-24 22:41
我 编译了一个strace工具,应该可以在目前的Linux 2.6.29.4 EABI系统上使用。
附件: strace-bin_4.5.19.tar.gz (182 K) 下载次数:145
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 7439
精华: 1
发帖: 16
金钱: 130 两
威望: 50 点
贡献值: 10 点
综合积分: 52 分
注册时间: 2009-07-15
最后登录: 2020-04-20
4楼  发表于: 2009-11-25 11:11
太感谢了,有了它,腰也不疼了,眼睛也不累了,睡觉也香了!
kasim ,
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
5楼  发表于: 2009-11-25 11:14

 回 4楼(ragdoll) 的帖子

strace只是一个工具,通过工具找到并解决问题之后再高兴也还来得及吧
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 7439
精华: 1
发帖: 16
金钱: 130 两
威望: 50 点
贡献值: 10 点
综合积分: 52 分
注册时间: 2009-07-15
最后登录: 2020-04-20
6楼  发表于: 2009-11-25 13:00
搞死我了,终于完成tslib了,有兴趣的还没有成功的,look一下下面的文章,再试吧

拷贝tslib-1.3.tar.bz2文件至/usr/local目录下
#tar -xjvf tslib-1.3.tar.bz2 --解压一下,会生成一个目录叫/usr/local/tslib-1.3
#export CC=arm-linux-gcc     --设定编译器
#./autogen.sh              
#echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache
#mkdir /usr/local/tslibbuil  --建一个目录,我准备将编译好的文件全放在这个目录下面
#./configure --host=arm-linux  --prefix=/usr/local/tslibbuil  --cache-file=arm-linux.cache

下面将要修改一下文件,不然编译会出错
#gedit /usr/local/tslib-1.3/plugins/Makefile
找到下面的语句LDFLAGS :=$(LDFLAGS) -rpath $(PLUGIN_DIR)
将它改成LDFLAGS :=$(LDFLAGS) -rpath `cd $(PLUGIN_DIR) && pwd`
注意`这个符号,不是单引号,而是键盘第二行第一个字母,就是键盘1左边那个,说明的够详细了吧
保存好后,再修改另一个文件
#gedit /usr/local/tslib-1.3/src/ts_read_raw.c
找到char *defaulttseventtype这个变量,改为
char *defaulttseventtype="H3600"
保存后,再修改最后一个文件就可以准备编译了
#gedit /usr/local/tslib-1.3/src/ts_config.c
找到int ts_config(struct tsdev *ts)这个函数
将最后返回值改一下,将return ret;改为 return 0;
#make
#make install

大约一分钟后/usr/local/tslibbuil这个目录下就有文件产生了,其中ts_calibrate是触模屏的校对程序,
ts_test是一个测试程序,它可以在终端中显示出坐标,以后不在QT上开发的,直接开发FrameBuffer的朋友可
以看ts_test.c这个源码了解触模屏的控制

程序是编译好了,但必须在开发板上再设置一些内容,方可运行
在你的开发板的/etc/profile文件里添加运行tslib的环境变量
export TSLIB_ROOT=/usr/local
export TSLIB_TSDEVICE=/dev/input/event0
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/usr/local/etc/ts.conf
export TSLIB_PLUGINDIR=/usr/local/lib/ts
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_TSEVENTTYPE=H3600
保存,重启

修改配置文件ts.conf,在/usr/local/etc目录下

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

运行ts_calibrate试试吧
如果文件是通过ftp下载的,可能无法执行,可用下面的命令执行
#chmod -R 777 ts_calibrate


参考了http://www.aiothome.com上前辈的文章,还有kasim版主的帮忙,我是搞
了好久终于搞定了(我智商不高,信相大家都比我高出不少),大家分享一下,如果
不行(一般情况下都应该好用了),算你倒霉,网上看资料吧
还有一个法子,就是下载strace,这个东东不错,找问题就找strace
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
7楼  发表于: 2009-11-25 13:06
呵呵,算是比较圆满的完成了,加精:)
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
Fighting!
级别: 侠客
UID: 1635
精华: 0
发帖: 111
金钱: 635 两
威望: 135 点
贡献值: 0 点
综合积分: 222 分
注册时间: 2008-09-16
最后登录: 2018-02-08
8楼  发表于: 2010-02-28 16:55
不懂为什么,tslib移植总是有问题,我移植的1.4也是要改一些文件才可以搞定。
不过开源的东西,有问题解决出来也比较有方向。
支持开源!
级别: 新手上路
UID: 13462
精华: 0
发帖: 33
金钱: 165 两
威望: 33 点
贡献值: 0 点
综合积分: 66 分
注册时间: 2010-01-25
最后登录: 2018-02-08
9楼  发表于: 2010-03-08 09:52
额,移植是移植过,但是用不起来
校准的很差,我是用minigui做的gui,所以要嵌到引擎中去,但是如果在引擎的其他地方不校准下我的屏幕在第一次使用时点点地方跟光标所以位置查的是在太多,但是校准一次然后给tslib的校准程序取了数据后,以后每校准一次就偏差更大了,不知道怎么办了
  • «
  • 1
  • 2
  • »
  • Pages: 1/2     Go