您尚未登录。

楼主 # 2023-01-13 11:55:05

likaiqin
会员
注册时间: 2022-05-02
已发帖子: 11
积分: 17

F1C200s移植tslib库测试4.3寸触摸屏

1.首先下载源码:
tslib-1.21.tar.bz2,使用的版本为tslib 1.2.1

2.修改源码所属用户为当前用户:

sudo chown project01:project01 tslib-1.21 -R 

3.ubuntu下工具安装:

sudo apt-get install autoconf 
sudo apt-get install automake 
sudo apt-get install libtool 

4.编译tslib:
首先在源码外创建一个结果保存目录tslib,然后输入以下指令编译tslib:

cd tslib-1.21/   
./autogen.sh     
./configure --host=arm-linux-gnueabi --prefix=创建的保存编译结果的目录路径(绝对路径)   
make  
make install 

5.拷贝到根文件系统:
进入结果保存文件夹tslib下,其中bin目录下是可执行文件,包括tslib的测试工具,etc目录下是tslib的配置文件,lib目录下是相关的库文件。将所有编译结果拷贝到根文件系统下。

 sudo cp * -rf /你的根文件系统路径 -d 

6.环境变量设置:
sudo vi ./etc/profile # 不要设置你Ubuntu的环境变量
输入以下内容:

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 

7.上电启动:
使用ts_calibrate命令进行校准。
使用ts_test_mt命令进行触摸测试即可。

离线

楼主 #1 2023-01-13 12:00:24

likaiqin
会员
注册时间: 2022-05-02
已发帖子: 11
积分: 17

Re: F1C200s移植tslib库测试4.3寸触摸屏

很奇怪的是,我在正点原子的阿尔法开发板上使用上面的方法,可以正常进行测试。但是在F1C200s上面,使用Debian根文件系统会报错:“Illegal instruction”,在buildroot制作的根文件系统上会报错:“-sh: ts_csalibrate: not found”。有朋友知道是什么原因吗?

注:根文件系统制作完成后移植的tslib;阿尔法移植使用arm-linux-gnueabihf编译器,F1C200s使用的arm-linux-gnueabi编译器。

最近编辑记录 likaiqin (2023-01-13 12:04:47)

离线

#3 2023-01-14 12:20:55

吴助建
会员
注册时间: 2021-12-08
已发帖子: 100
积分: 13

Re: F1C200s移植tslib库测试4.3寸触摸屏

实际上,不用这么麻烦。
有个工具叫:evtest。
执行时,要带参数输入事件设备的参数,比如:evtest /dev/input/event1。
然后,你在屏幕的4个角,各点一下,记住相应的值,分别记作:x1/x2/y1/y2,校准算法如下:
x = (x-x1)*屏幕水平像素数/(x2-x1)
y = (y-y1)*屏幕垂直像素数/(y2-y1)

离线

楼主 #4 2023-01-15 15:57:48

likaiqin
会员
注册时间: 2022-05-02
已发帖子: 11
积分: 17

Re: F1C200s移植tslib库测试4.3寸触摸屏

是的,后来用的evtest测试通过了,之前觉着tslib可能更直观一点。

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn