linux 触摸屏测试源码_Linux触摸屏驱动

本文详细介绍了在Linux环境下遇到的触摸屏测试源码编译及运行过程中遇到的问题,包括ac_cv_func_malloc_0_nonnull问题、ts_calibrate提示No raw modules loaded、EV_VERSION不匹配问题、校准文件生成失败等,并提供了相应的解决方案,如修改配置文件、调整内核和编译器版本,最终成功移植tslib。
摘要由CSDN通过智能技术生成

问题二:

echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache

//避免检查ac_cv_func_malloc_0_nonnull

若出现提示: undefined reference to rpl_malloc

解决:

发现config.h.in和config.h里定义了

#undef malloc

#undef realloc

把这两个用//注释掉,编译顺利通过。

问题三:

/usr/local/tslib/bin # ./ts_calibrate

提示:

No raw modules loaded.

解决:修改ts.conf

/usr/local/tslib # vi etc/ts.conf

问题四:

tslib库selected device is not a touchscreen I understand解决.

解决: 1.将内核源代码里的include/linux/input.h中的 #define

EV_VERSION 0x010001 改为: #define

EV_VERSION 0x010000 2.将arm交叉编译工具中的头文件库中的 linux/input.h中的 #define

EV_VERSION 0x010000 改为 #define

EV_VERSION 0x010001 再编译tslib库 一般第一种就可以解决问题了,因此,出现上面情况时,先不要急于换版本,如果二者版本不等,那么改一个就可以

我自己修改内核VERSION为 0x010000和0x010001都不行。

后来把编译器的改成0x010001时,内核为0x010001时可以使用

编译器:

[root@localhost 4.5.1]# grep "EV_VERSION" * -nR

arm-none-linux-gnueabi/sys-root/usr/include/linux/input.h:32:#define

EV_VERSION 0x010001

内核代码:

# vim /home/test/4-3-1/linux-3.0.1/include/linux/input.h

#define EV_VERSION 0x010001 // gjl 0x010001

问题五:

./ts_calibate 校准触摸屏后未产生校准文件,提示Illegal instruction

百度提示不支持浮点型?

解决:

用4.4编译器的glibc库,解决了非法指令,可能是其他编译器的glib库不完整导致。

全套换成4.4编译器的

/usr/local/tslib/bin # ./ts_calibrate

xres = 480, yres = 272

Took 5 samples...

Top left : X = 12442 Y = 9939

Took 4 samples...

Top right : X = 4159 Y = 9793

Took 4 samples...

Bot right : X = 4092 Y = 6531

Took 3 samples...

Bot left : X = 12635 Y = 6443

Took 4 samples...

Center : X = 8458 Y = 8201

624.591797 -0.045147 -0.000891

550.521240 0.000166 -0.050836

Calibration constants: 40933248 -2958 -58 36078960 10 -3331

65536

校正后生成校准文件

小结:这里使用4.4.1编译器,编译器和内核都使用EV_VERSION

0x010001,glib使用4.4.1里面的。就成功移植了tslib。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值