RK3568 android11 实现双路I2C触摸 --GT9xx,RK3568搭载Android 11实现双路I2C触摸功能 —— 以GT9xx为例

马肤

温馨提示:这篇文章已超过404天没有更新,请注意相关的内容是否还可用!

摘要:,,RK3568搭载Android 11系统,实现了双路I2C触摸功能,并兼容GT9xx触摸屏。通过优化系统配置和驱动支持,该设备提供了更加流畅的多点触控体验,提高了用户操作的便捷性和响应速度。这一技术革新在智能设备领域具有重要意义,为用户带来更加智能、高效的交互体验。

GT911触摸屏简介

GT911触摸屏的接口类型为I2C,供电和通讯电压均为3.3V,该电容触摸屏内置了上拉电阻,这意味着开发板上与该触摸屏的接口处不需要设置上拉电阻,关于线序,不同批次的器件有不同的线序,需要自行与厂家确认。

RK3568 android11 实现双路I2C触摸 --GT9xx,RK3568搭载Android 11实现双路I2C触摸功能 —— 以GT9xx为例 第1张

DTS配置

调试双I2C触摸时,两个TP(触摸屏)是同一型号(gt911),DTS文件主要配置CPU与触摸屏之间的I2C通信信息,查看硬件原理图,两路TP是挂载在不同的I2C下。

以下是TP1(i2c1)和TP2(i2c3)的DTS配置示例:

在GT911的DTS配置文件中,可以看到为每个TP配置了相应的I2C接口、兼容性质、寄存器地址等信息,还配置了复位脚和中断脚的相关信息,以及屏幕的最大X、Y坐标和尺寸等参数。

驱动文件配置

驱动相关的文件主要有三个:gt9xx.c、gt9xx.h和cfg文件。

1、gt9xx.c是入口文件,其中会读取DTS中配置的信息,如中断脚、复位脚、最大X/Y坐标等。

2、gt9xx.h头文件包含了一些宏定义,关乎调试打印的开关,打开这些打印可以帮助定位问题。

3、cfg文件是触摸屏的初始化指令,上电后由CPU通过I2C将这些指令写到触摸屏芯片中。

驱动移植的步骤包括:

a. 将原厂提供的驱动(gt9xx)拷贝到指定的文件夹。

b. 修改touchscreen目录下的Makefile和Kconfig文件,以定义要编译哪个平台的触摸屏驱动。

RK3568 android11 实现双路I2C触摸 --GT9xx,RK3568搭载Android 11实现双路I2C触摸功能 —— 以GT9xx为例 第2张

c. 在内核配置中添加对应的驱动选项,以加载驱动。

注:实现双I2C触摸时,可以使用相同的驱动复制一份给另一路TP使用,修改相应的字段并处理编译冲突即可。

主副屏触摸配置

1、在gt9xx.h头文件中定义GTP_I2C_NAME宏来区分主副屏的I2C设备名,主屏使用"Goodix-TS",副屏使用"Goodix-TS_extend"。

2、创建输入设备配置文件(.idc文件),用于区分主副屏的触摸设备,创建Goodix-TS.idc和Goodix-TS_extend.idc文件,分别表示主屏和副屏的配置。

3、在系统的mk文件中,将上述两个idc文件拷贝到系统/usr/idc/目录。

编译系统固件升级后,双I2C触摸即能正常操控主副屏。

调试

1、通过内核打印日志查看触摸屏的工作情况,使用adb shell dmesg | grep GTP过滤出与触摸屏相关的打印信息。

2、查看触摸屏的中断统计信息,通过cat /proc/interrupts命令查看gt9xx和gt9xx_extend的中断次数,以判断触摸屏的工作状态。

仅供参考,具体实现可能因硬件和系统的差异而有所不同,在进行调试时,建议参考相关的技术文档和厂商提供的资料。


0
收藏0
文章版权声明:除非注明,否则均为VPS857原创文章,转载或复制请以超链接形式并注明出处。

相关阅读

  • 【研发日记】Matlab/Simulink自动生成代码(二)——五种选择结构实现方法,Matlab/Simulink自动生成代码的五种选择结构实现方法(二),Matlab/Simulink自动生成代码的五种选择结构实现方法详解(二)
  • 超级好用的C++实用库之跨平台实用方法,跨平台实用方法的C++实用库超好用指南,C++跨平台实用库使用指南,超好用实用方法集合,C++跨平台实用库超好用指南,方法与技巧集合
  • 【动态规划】斐波那契数列模型(C++),斐波那契数列模型(C++实现与动态规划解析),斐波那契数列模型解析与C++实现(动态规划)
  • 【C++】,string类底层的模拟实现,C++中string类的模拟底层实现探究
  • uniapp 小程序实现微信授权登录(前端和后端),Uniapp小程序实现微信授权登录全流程(前端后端全攻略),Uniapp小程序微信授权登录全流程攻略,前端后端全指南
  • Vue脚手架的安装(保姆级教程),Vue脚手架保姆级安装教程,Vue脚手架保姆级安装指南,Vue脚手架保姆级安装指南,从零开始教你如何安装Vue脚手架
  • 如何在树莓派 Raspberry Pi中本地部署一个web站点并实现无公网IP远程访问,树莓派上本地部署Web站点及无公网IP远程访问指南,树莓派部署Web站点及无公网IP远程访问指南,本地部署与远程访问实践,树莓派部署Web站点及无公网IP远程访问实践指南,树莓派部署Web站点及无公网IP远程访问实践指南,本地部署与远程访问详解,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南。
  • vue2技术栈实现AI问答机器人功能(流式与非流式两种接口方法),Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法探究,Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法详解
  • 发表评论

    快捷回复:表情:
    评论列表 (暂无评论,0人围观)

    还没有评论,来说两句吧...

    目录[+]

    取消
    微信二维码
    微信二维码
    支付宝二维码