推广 热搜: 公司  快速  中国  上海    未来  企业  政策  教师  系统 

Android 触摸板驱动成usb鼠标 手机触摸板驱动手机usb驱动「Android 触摸板驱动成usb鼠标 手机触摸板驱动」

   日期:2025-02-12     作者:dqd5l9    caijiyuan   评论:0    移动:http://fabua.ksxb.net/mobile/news/8546.html
核心提示:目录一、触摸屏驱动概览1、常用的2种触摸屏2、本专栏文章开发板:朱老师X210使用的触摸屏3、学习触摸屏驱动的关键点二、gslX680



目录

  • 一、触摸屏驱动概览
  • 1、常用的2种触摸屏
  • 2、本专栏文章开发板:朱老师X210使用的触摸屏
  • 3、学习触摸屏驱动的关键点
  • 二、gslX680驱动的移植实践
  • 1、初步移植实验
  • 2、在内核配置中添加CONFIG项
  • 3、内核编译的一般配置
  • 三、gslX680驱动源码分析
  • 1、kernel/drivers/input/touchscreen/gslX680.c


(1)电阻触摸屏。驱动一般分2种:一种是SoC内置触摸屏控制器,一种是外置的专门触摸屏控制芯片,通过I2C接口和SoC通信。

(2)电容触摸屏。驱动只有一种,外接专用的电容式触摸屏控制芯片,I2C接口和SoC通信。

(1)X210V3使用的触摸屏:ft5x06
(2)X210V3S使用的触摸屏:gslX6803

(1)input子系统相关知识
(2)中断上下半部
(3)I2C子系统
(4)触摸屏芯片本身知识

(1)源码获取
gsl_point_id 厂商提供的预先编译好部分代码
gslX680.c
gslX680.h

  一般开发:源码是不编译进内核中的,而是编译成模块方便进行测试,随时修改代码。但这里是无法这样操作的,因为触摸屏厂商提供的代码是不完整的,有部分是提前编译好的,在编译链接的过程中会出现问题.

(2)源码加入内核中:kernel/drivers/input/touchscreen

(3)mach文件中添加board_info,从而生成一个struct i2c_client类型的变量可进行匹配(kernel/arch/arm/mach-s5pv210/mach-x210.c)

参考gslX680.c中的信息:

Android 触摸板驱动成usb鼠标 手机触摸板驱动_linux


Android 触摸板驱动成usb鼠标 手机触摸板驱动_arm_02


iic通信中,从地址取决于从设备,可通过从设备的芯片手册得到。查阅手册得到:

  上述的这个移位操作在主机代码中操作了所以我们在从设备驱动代码使用 0x40 即可。

修改后的文件:

(1)定义一个宏名,譬如CONFIG_TOUCHSCREEN_GSLX680

(2)在代码中使用宏来条件编译

(3)在Makefile中使用宏来条件配置
文件末尾添加:

(4)在Kconfig项目中添加宏的配置项
文件末尾添加:

(5)make menuconfig并选择Y或者N

(6)make -j4进行编译,生成镜像后去烧录启动。

部分解析请查阅上篇文章:linux驱动之I2C子系统

  驱动内基本不定义结构体变量,都是定义结构体指针,然后kzalloc()申请内存,避免栈溢出了

Android 触摸板驱动成usb鼠标 手机触摸板驱动_arm_03


  mt表示支持多点触摸

  对于该部分代码具体操做设置请仔细阅读触摸屏读数据手册,但有些内容我们是无法探究清楚的,只有专业搞触摸屏驱动的那些原厂工程师清楚。

注:本资料大部分由朱老师物联网大讲堂课程笔记整理而来并且引用了部分他人博客的内容,如有侵权,联系删除!水平有限,如有错误,欢迎各位在评论区交流。

本文地址:http://fabua.ksxb.net/news/8546.html    海之东岸资讯 http://fabua.ksxb.net/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新资讯
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  粤ICP备2023022329号