eGalaxTouch 嵌入式Linux驅動調試

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的自描述能夠得知屏幕的廠家,而後去官網瞅瞅。html

2. 官網下載驅動

# 官網
http://www.eeti.com/
# 官網驅動
http://www.eeti.com/drivers_Linux.html

按照本身的平臺選擇合適的驅動,好比個人是 ARM架構,Linux,就選擇了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