1. 先将拿到的触摸屏接入USB,终端打印如下信息
[ 138.121969] usb 2-1.2: USB disconnect, device number 3
[ 140.030843] usb 2-1.2: new full-speed USB device number 4 using musb-hdrc
[ 140.151688] usb 2-1.2: New USB device found, idVendor=0eef, idProduct=c002
[ 140.158940] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 140.166653] usb 2-1.2: Product: eGalaxTouch P80H32 4070 v00_M03 k4.02.146
[ 140.173809] usb 2-1.2: Manufacturer: eGalax Inc.
从USB的自描述可以得知屏幕的厂家,然后去官网瞅瞅。
2. 官网下载驱动
# 官网
http://www.eeti.com/
# 官网驱动
http://www.eeti.com/drivers_Linux.html
按照自己的平台选择合适的驱动,比如我的是 ARM架构,Linux,就选择了
eGTouch_v2.5.7413.L-ma ARM / MIPS 2019.03.13
3. 按照官方文档配置和修改内核:
《EETI_eGTouch_Programming_Guide 》
4. 更新内核,在文件系统中安装驱动
sh setup.sh
5. 修改 /etc/eGTouchL.ini 文件
文件中有详细的说明,注意很多嵌入式设备使用的是tslib,所以 BtnType 一项目要修改为 1;
6. 运行 eGTouchD, /dev/input/ 目录下应该会多出evenX;
ls /dev/input/
cat /proc/bus/input/devices
7. 使用官方测试工具测试
arm-linux-gnueabihf-gcc -o GetEvent.out GetEvent.c
./GetEvent.out /dev/input/event1 #手触摸到触摸屏的时候可以看到有数值变化
// 按下
[ABS_X] code = 0, value = 2012
[ABS_Y] code = 1, value = 2047
[ABS_PRESSURE] code = 24, value = 1
[SYN_REPORT] code = 0, value = 0
// 抬起
[ABS_PRESSURE] code = 24, value = 0
[SYN_REPORT] code = 0, value = 0