HID android add touch screen
来源:互联网 发布:java 向邮箱发送邮件 编辑:程序博客网 时间:2024/06/05 08:05
http://www.csdn123.com/html/mycsdn20140110/51/51b546889ce6b73e52c781c37f5d0af6.html
添加VID/PID到标准hid设备-OK
修改文件:
1、在hid-ids.h中加入vid pid
2、在hid-multitouch..c->mt_devices[] 中加入
{
.driver_data=MT_CLS_DEFAULT,
HID_USB_DEVICE(VID,PID)
}
HID_USB_DEVICE(VID,PID)
}
3、在hid-core.c->hid_have_special_driver[]中加入HID_USB_DEVICE(VID,PID)
------------------------------------------------------------------------------------------------------------------------------------------------------
4:添加内核配置选项:
5:
7:
----------------------------------------------------------------------------------------------------------------------------------------------------------
8:http://source.android.com/tech/input/input-device-configuration-files.html
根据这个网站添加上层IDC文件:
9:
# Copyright (C) 2012 Beijing IRTOUCH SYSTEMS Co.,Ltd### Input Device Configuration File for the IRTOUCH touch screen.## Basic Parameterstouch.deviceType = touchscreentouch.orientationAware = 1# 0 外部设备,1 内部设备device.internal = 1# Touch Size#touch.touchSize.calibration = pressure#touch.toolSize.calibration = linear#touch.toolSize.linearScale = 10#touch.toolSize.linearBias = 160#touch.toolSize.isSummed = 1# Size#touch.size.calibration = diameter#touch.size.scale = 10#touch.size.bias = 0#touch.size.isSummed = 0#scale 规模,面,比例;#bias 偏压,偏差#summed 总结# Pressure压力-/amplitude振幅#touch.pressure.calibration = amplitude#touch.pressure.scale = 0.005# Orientation方向-/校准touch.orientetion.calibration = none
---------------------------------------------------------------------------------------------------------------------------------------------------
上面那个idc文件不能用,用下面这个idc文件,Android 触摸屏idc文件一般都是通用的,我的用这个下面这个idc文件就可以了,知识触摸屏没有鼠标箭头,但是鼠标点哪里就是去哪里:
# Copyright (C) 2010 The Android Open Source Project## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the License.# You may obtain a copy of the License at## http://www.apache.org/licenses/LICENSE-2.0## Unless required by applicable law or agreed to in writing, software# distributed under the License is distributed on an "AS IS" BASIS,# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.# See the License for the specific language governing permissions and# limitations under the License.## Emulator keyboard configuration file #1.## Basic Parameterstouch.deviceType = touchScreentouch.orientationAware = 1touch.size.calibration=diametertouch.size.scale=10touch.size.bias=0touch.size.isSummed=0touch.size.pressure.calibration=amplitudetouch.pressure.scale=0.005touch.orientation.calibration=none
---------------------------------------------------------------------------------------------------------------------------------------------------
10: adb shell
su
mount
mount -w -o remount /dev/block/platform/omap/omap_hsmmc.0/by-name/system /system
chmod 777 /system/usr/idc =>修改idc文件可写权限;
adb push /home/tonsincs/Vendor_0416_Product_5030_Version_0110.idc /system/usr/idc/
-----------------------------------------------------------------------------------------------------------------------------------------------------------
11:还有一种把 IDC 文件放到/system/usr/idc/ 目录下的方法:
1)把你的 IDC 文件拷贝到android源码:frameworks/base/data/keyboards/ 目录下;
2)修改common.mk文件:
3)croot 到android源码根目录: make -j8 完成后,find 命令在out目录查找下……结果如下则OK;
-----------------------------------------------------------------------------------------------------------------------------------------------------------
总结:
最近一直移植Android(4.1)下面的触摸屏驱动,也接触到了几种触摸屏,总的来说,要么把触摸屏当标准的HID设备来用,这个移植就简单,把触摸屏的VID/PID加到hid-ids.h hid-core.c hid-multitouch.c 文件里面,而且还要上层/system/usr/idc/Vendor_xxx_Product_xxx.idc文件配合,触摸屏才能使用,否则你的触摸屏用着跟笔记本的触摸板似得!
个人理解,修改drivers/input/touchscreen/usttouchscreen.c文件中添加你的触摸屏驱动可以,不过这个比较麻烦,你要知道怎么写驱动,一些函数怎么实现,算法怎么实现;比较麻烦;
也接触到了i2c总线的触摸屏驱动,这个又比较麻烦一点,要根据你的arch/arm/mach-xxxx/board-xxx.c文件中注册你的触摸屏驱动i2c总线信息;再添加你的驱动源码;
总得来说,写驱动的话比较麻烦,你必须有电路原理图、芯片数据手册,而且要看的明明白白,怎么去是实现那些算法,而且要对linux 驱动很了解,你的驱动挂载哪里,i2c总线、usb总线,又要很多协议;很多知识;usb2.0协议,英文287页;很麻烦!慢慢学习了!
0 0
- HID android add touch screen
- Touch Screen
- Touch screen
- Android touch screen keyboard 移植记录
- Android touch screen Calibrate with Intent
- android touch screen keyboard input移植记录
- Android touch screen keyboard 移植记录
- Android touch screen keyboard 移植记录
- Monitor Screen Touch Event in Android
- 移植 android, touch screen 不能正常工作的问题。
- 移植 android, touch screen 不能正常工作的问题
- android中如何设计触摸屏驱动touch screen driver
- 移植 android, touch screen 不能正常工作的问题
- 《转载》移植 android, touch screen 不能正常工作的问题
- 移植 android, touch screen 不能正常工作的问题
- android中如何设计触摸屏驱动touch screen driver
- touch-screen with Timer
- Designing for Touch Screen
- [IOS/翻译]GCD-4 Managing Dispatch Objects
- 11--树的定义及实现
- ubuntu中mysql的安装
- TANBOB--结合ODIN(开放数据索引命名)的AP(数据访问点)技术规范(草案)
- Bzoj3196:Tyvj1730二逼平衡树:树套树,线段树套splay
- HID android add touch screen
- Android网络编程基础简介
- IOS开发之新浪围脖
- Badgeview
- Hibernate 数据的批量插入、更新和删除
- 欢迎使用CSDN-markdown编辑器
- Swift学习之--TableView的基本使用
- 唯一性标识的生成策略
- 正则表达式使用方法(补充)