文档章节

android-- A10开发板--Tslib 移植心得体会

雨焰
 雨焰
发布于 2012/09/27 17:54
字数 1035
阅读 2334
收藏 0

1.      tslib,其实从他的名字就可以看出它的,它是touchscreenlib,其实这样还不够具体,其实它开始确实是为了touchscreen的鼠标驱动而发展起来的,且只是一个中间处理库,即将原始数据进行调整,比如触摸屏定位。只不过后来不知道什么原因,它火了,其他图形都支持这种方式,像高级版本的miniguiqt等成熟嵌入式图形系统。正因为如此,它也就不再局限于touchsrceen,只要是输入设备,只需在tslib里实现,标准的图形系统只需调用tslib的函数即可。

    它将其他的输入设备数据处理后成为一个虚拟设备的数据,其他的图形系统只需使用这个虚拟的设备即可实现输入设备的读写操作了。后来发现tslib只不过是一个应用级软件,其他的图形系统使用的是tslib的函数,因此需要依赖这个库.

 

2.      开发环境:
Ubuntu  10.0.4
开发板  A10
交叉编译器  android平台的arm-none-linux-gnueabi  

3.      tslib 源码所在位置

https://github.com/kergoth/tslib

下载压缩包,解压,将文件夹拷贝到Ubuntn任意位置

4.      进入文件夹

生成configure

  ./autogen.sh

如果报错:

http://blog.csdn.net/ypoflyer/article/details/5765012

安装tslib中遇到的错误:./autogen.sh: 4: autoreconf: not found

  是因为在不同版本的 tslib 下执行 autogen.sh 产生。它们产生的原因一样,

因为没有安装  automake 工具,  (ubuntu 10.04)用下面的命令安装好就可以了。

 sudo apt-get install autoconf automake libtool

 

配置的时候
确保你已经配置了android平台的交叉编译器arm-none-linux-gnueabi

./configure --host=arm-none-linux-gnueabi --prefix=/home/macro/tslib/mytslib   ac_cv_func_malloc_0_nonnull=yes  --enable-inputapi=no -static


注意要写绝对路径(指定文件夹的绝对路径),将来拷贝的时候,在开发板上面也要是/home/macro/tslib/mytslib这个路径才行哦!不懂的可以继续往下看

make

make install

那么在mytslib文件夹中会出现如下四个文件夹

btn   etc  include  lib

 

etc/ts.conf 的参考配置:

# module_raw   input

#去掉 说明使用的是input 子系统的驱动模式到时候可以查看开发板上面的/dev/input/eventN  (N>=0)

 

5.      将这四个文件夹中的内容,分别全部拷贝开发板的/home/macro/tslib/mytslib对应文件夹中,如果开发板没有这个文件夹的话,你就创建一个,然后将etc,bin,include,lib内容拷贝进去

如何使用NFS的方式挂载进行拷贝的没有什么问题,

有问题的是我用的U盘进行拷贝  造成/lib软链接失效,需从新link

进入/home/macro/tslib/mytslib /lib 

#busybox   rm  -rf  libts.so

# busybox   rm  -rf  libts-1.0.so.0

# busybox  ln  -s  libts-1.0.so.0.0.0  libts.so

# busybox  ln  -s  libts-1.0.so.0.0.0   libts-1.0.so.0

 

6.      在进行测试之前要在开发板上配置如下操作

 

mkdir /data      -----你可以先查看一下/目录有没有data,如果有的话就不用这条命令

touch /data/pointercal -----你可以查看一下如果有/data/ pointercal文件的话不用这条命令

7.      配置环境变量,使tslib可以在开发板上面运行

export TSLIB_ROOT=/home/macro/tslib/mytslib  #我在编译tslib的时候指定的文件夹

export TSLIB_FBDEVICE=/dev/fb0 #触摸屏的效果往往需要在LCD屏幕上显示,LCD设备节点

export TSLIB_TSDEVICE=/dev/input/event1  #取决于具体的驱动设备了,事件驱动

export TSLIB_CALIBFILE=/data/pointercal   #校准数据存储位置

 

export TSLIB_CONFFILE=$TSLIB_ROOT /etc/ts.conf  #配置文件存储使用哪种驱动模块inputh3600

export TSLIB_PLUGINDIR=$TSLIB_ROOT /lib/ts   #tslib的插件目录(滤波,去抖,校准)

export TSLIB_CONSOLEDEVICE=none  #据本人猜测是 不对LED进行控制

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib  #libts.so加入动态搜索路径

 

8.      然后可以进行测试了进入开发板的/home/macro/tslib/mytslib/bin文件夹中

先运行ts_calibrate进行校准


运行ts_test进行测试


参考文献:

http://www.cnblogs.com/uvsjoh/archive/2011/08/25/2152947.html

http://www.360doc.com/content/12/0616/11/6828497_218489666.shtml

© 著作权归作者所有

共有 人打赏支持
雨焰
粉丝 58
博文 240
码字总数 44789
作品 0
新乡
程序员
私信 提问
加载中

评论(2)

雨焰
雨焰

引用来自“jay0725”的评论

你好,我也在android移植tslib,想问下你在android下怎么设置export环境变量?

我现在也在移植进行中,最后两步是在不出错的情况下出现的界面,配置环境变量--你进入开发板的终端,然后配置啊!
j
jay0725
你好,我也在android移植tslib,想问下你在android下怎么设置export环境变量?
android触屏校准

我现在要做一个android上的触屏校准软件,根据网上上的说法是使用tslib,但是目前没有一分非常完整的从tslib的配置到移植android中,在到android的应用整个过程的说明,想请教下各位,有没有...

zjb1025
2012/08/10
522
0
自己编译的QT4.6.3可以用,为什么QT4.7.1会出现段错误?

我使用的是友善之臂mini2440的开发板,移植qte时自己编译的QT4.6.3移植到开发板可以运行(友善之臂给的文件系统里就是QT4.6.3),但是又自己编译了QT4.7.1,移植到开发板上时却出现segmentatio...

tom_riddle
2014/02/16
242
0
Android 编译重要参数 LOCAL_MODULE_TAGS

近移植tslib库到android系统,发现编译好的库和测试工具竟然没有输入到out/target/product/Ok6410/system/lib 和 out/target/product/Ok6410/system/bin下面,感觉很奇怪,于是下定决心看一下...

sflfqx
2013/03/22
0
0
移植tslib到开发板及部分问题解决

qt的tslib的具体移植步骤和过程就不多讲了,我说说我按照手册移植好tslib后在开发板运行提示的错误以及我的解决方法,当然每个人的提示可能一样,解决方法就不一样,我也是个初学者,所以方法...

石头哥哥
2016/02/16
133
0
android系统开发首选---全志Pro A10开发板,即将升级到android4.0

android系统开发首选---全志Pro A10开发板,即将升级到android4.0 开发板资料详细介绍见网址:http://www.wits-tech.com/pages/board.jsp 卓睿世纪 全志A10平板方案一级代理商兼方案公司 刘善...

刘善培
2011/12/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

RocketMQ高性能之底层存储设计

说在前面 RocketMQ在底层存储上借鉴了Kafka,但是也有它独到的设计,本文主要关注深刻影响着RocketMQ性能的底层文件存储结构,中间会穿插一点点Kafka的东西以作为对比。 例子 Commit Log,一...

薛定谔的旺
16分钟前
2
0
实战:基于Spring Boot快速开发RESTful风格API接口

写在前面的话 这篇文章计划是在过年期间完成的,示例代码都写好了,结果亲戚来我家做客,文章没来得及写。已经很久没有更新文章了,小伙伴们,有没有想我啊。言归正传,下面开始,今天的话题...

JAVA_冯文议
23分钟前
0
0
Anaconda3 5.0.0中配置Python 3.6 + TensorFlow环境

参考:https://blog.csdn.net/hu_zhenghui/article/details/78156193

Pasenger
28分钟前
0
0
Nginx反向代理Tomcat配置

Nginx代理Tomcat 为什么要为Tomcat配置反向代理? 1)如果同一台机器既有nginx又有Tomcat,则会产生端口冲突2)我们需要把8080端口变成80端口3)nginx对于静态的请求速度上要优于Tomcat,T...

wzb88
41分钟前
10
0
JavaScript email邮箱/邮件地址的正则表达式及分析

在做用户注册时,常会用到邮箱/邮件地址的正则表达式。本文列举了几种方案,大家可以根据自己的项目情况,选择最适合的方案。 方案1 (常用) 规则定义如下: 以大写字母[A-Z]、小写字母[a-z]...

前端小攻略
43分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部