Android系统USB触摸屏配置方法

一、确认触摸屏是否能够正常工作

一般的USB 接口免驱触摸屏均能免驱支持windows XP, windows 7, windows 8 等windows 家族的操作系统,所以在使用触摸屏搭建最终使用环境乊前可以使用windows家族系统测试触摸屏,确保触摸屏能够正常的工作(相当于来料检测)。

接下来测试触摸屏能否支持当前的android 操作系统,假设当前的操作系统是原生的Android 操作系统,那么在USB 免驱触摸屏连接到设备乊后,用户点击时操作系统的UI会有响应,为了便于观测是否有响应,开发者可以在android 系统的开发人员选项中勾选“显示触摸操作”。如果操作系统UI 有响应,那么在屏幕上会显示一个小白点。此时用户的点击是丌能准确识别的。



二、复制和修改文件

1.将.idc 文件(两个)复制到 /system/usr/idc 中 


2. drivers\hid\hid-ids.h文件修改 增加以下两条宏定义(如果存在则忽略此步骤)

#define USB_VENDOR_ID_GOODTOUCH  0x1aad 

#define USB_DEVICE_ID_GOODTOUCH_000f  0x000f 

#define USB_VENDOR_ID_GOODTOUCH_MT  0x8342

#define USB_DEVICE_ID_GOODTOUCH_000f _MT  0x010A 


3. drivers\hid\hid-core.c文件修改 

在hid_have_special_driver[]数组中添加以下代码 

{ HID_USB_DEVICE(USB_VENDOR_ID_GOODTOUCH, USB_DEVICE_ID_GOODTOUCH_000f) },

 { HID_USB_DEVICE(USB_VENDOR_ID_GOODTOUCH_MT, USB_DEVICE_ID_GOODTOUCH_000f_MT) },


4. drivers\hid\hid-multitouch.c

在mt_devices[]数组中添加以下代码 

{ .driver_data = MT_CLS_DEFAULT, HID_USB_DEVICE(USB_VENDOR_ID_GOODTOUCH,USB_DEVICE_ID_GOODTOUCH_000f) }, 

{ .driver_data = MT_CLS_DEFAULT, HID_USB_DEVICE(USB_VENDOR_ID_GOODTOUCH_MT,USB_DEVICE_ID_GOODTOUCH_000f_MT) },



三、编译选项配置

menuconfig勾选HID Multitouch panels 

menuconfig这个HID Multitouch panels选项要是选的“M"

要在init.sun4i.rc中加 insmod /system/vendor/modules/hid-multitouch.ko 

xxx-product.mk中要加 

~/Vendor_1aad_Product_000F.idc:system/usr/idc/Vendor_1aad_Product_000F.idc 

~/Vendor_8342_Product_010A.idc:system/usr/idc/Vendor_8342_Product_010A.idc 

 编译前请先进行Clean动作

你可能感兴趣的:(USB/存储,Android项目实战经验)