Zynq平台移植USB触摸屏的实现(Qt5.7)
使用的环境:
1. CPU type:ARM CortexA9(Xilinx zynq7000)(使用的是黑金AX7021开发板)
2. Kernel version:4.9
3. no X-window, GUI system:QT5.7
4. Controller Interface:USB(EETI的EIR4000--eGalax,USB转接板ETP-RAP4502-E)
5. Controller Type : Resistive(四线电阻触摸屏)
6. 显示接口:HDMI
需求:在开发板上通过USB接口插入触摸屏,能够校准,能正常在QT中使用。
一、USB触摸屏驱动
1、下载驱动包
由于使用的是EETI的USB转接芯片,从官网https://www.eeti.com/drivers_Linux.html下载最新版驱动包eGTouch_v2.5.8825.L-ma。tar.gz。
2、修改Linux内核
按安装包中EETI_eGTouch_Linux_Programming_Guide_v2.5l.pdf说明,修改内核配置和相关驱动源码。由于我使用的是petalinux,在peta_prj工程目录下执行petalinux-config -c kernel (等同make menuconfig)修改:



按文档“8-1.2 kernel 2.6.34 upwards”修改内核代码。
重新编译内核:
petalinux-build
petalinux-package --boot --fsbl ./images/linux/zynq_fsbl.elf --fpga --u-boot --force打包生成image.ub、BOOT.BIN。拷入SD卡,启动开发板。
2、开发板加载驱动
插上USB接口的触摸屏,检查:
1)UINPUT设备节点是否存在: /dev/input/uinput or /dev/uinput
2)hidraw device node:/dev/hidraw0
3)“cat /proc/bus/input/devices”查看是否有eGalax产品的输入设备

本文详细介绍了如何在Zynq平台(基于ARM CortexA9的Xilinx zynq7000,使用黑金AX7021开发板)上,基于Kernel 4.9和Qt5.7环境,移植并校准USB EETI EIR4000触摸屏。首先,通过下载驱动包,修改内核配置并加载驱动。然后,移植tslib库进行触摸屏校准,解决坐标方向相反等问题。最后,介绍了在QTE库中整合tslib,并解决在Qt应用程序中遇到的触摸响应问题。
4330

被折叠的 条评论
为什么被折叠?



