当前位置: 首页 > java >正文

嵌入式分享#27:原来GT911有两个I2C地址(全志T527)

最近在调试全志T527的触摸功能时,发现GT911触摸芯片的I2C地址有时是0x5d,有时又识别成0x14,不知道大家有没有遇到过类似这个情况。

图片

图片

虽然最后使用0x5d地址调通了触摸功能,但是一直还是很困惑,为什么会出现0x14和0x5d两个i2c地址呢?

于是开始在GT911芯片规格书寻找答案...

查阅规格书发现,原来GT911会根据RTS和INT的开机时序来决定I2C地址是0x14还是0x5d。

在通信中GT911始终作为从设备,其I2C设备地址由7位设备地址加1位读写控制位组成,高7位为地址,bit0为读写控制位。GT911有两个从设备地址可供选择, 如下表:

图片

每次上电或复位时需要使用 INT 脚进行I2C地址设置,如下是设定不同I2C地址的时序图。

设定地址为 0x28/0x29 的时序:

图片

设定地址为 0xBA/0xBB 的时序:

图片

在实际应用中,Linux内核提供的gt9xx.c触摸驱动默认时序设定的I2C地址为0x5d,调试中偶尔出现0x14地址,多数情况是由于dts的RTS或INT引脚配置不正确导致。

至于GT911为什么要有两个I2C地址,下回分解。

欢迎关注“嵌入式分享”,持续更新!

http://www.xdnf.cn/news/16404.html

相关文章:

  • 【Vue2】结合chrome与element-ui的网页端条码打印
  • matplotlib库 点线图,直方图,多子图与三维空间的可视化
  • 从0到1学Pandas(六):Pandas 与数据库交互
  • 【硬件-笔试面试题】硬件/电子工程师,笔试面试题-33,(知识点:二极管结温,热阻,二极管功耗计算)
  • golang实现一个规则引擎,功能包括实时增加、修改、删除规则
  • Jenkins持续集成工具
  • ACO-OFDM 的**频带利用率**(单位:bit/s/Hz)计算公式
  • Unity GenericMenu 类详解
  • 酒店智能门锁SDK新V门锁系统接口函数[2025版]Delphi 7.0——东方仙盟硬件接口库
  • 学习游戏制作记录(剑投掷技能)7.26
  • 中文语音识别与偏误检测系统开发
  • Java基础-文件操作
  • Spring boot Grafana优秀的监控模板
  • 生猪产业新生态:结构调整与种养结合,筑牢农业强国根基
  • HashMap(JDK1.7、JDK1.8)原理与结构分析与synchronizedMap()
  • 【LeetCode刷题指南】--队列实现栈,栈实现队列
  • C 语言详解:特性、应用与发展
  • GRE和MGRE综合实验
  • DMDSC安装部署教程
  • 基于cooragent的旅游多智能体的MCP组件安装与其开发
  • Android Jetpack 组件库 ->Jetpack Navigation (下)
  • 从治理到共情——平台伦理的乡村共建之路
  • 在 C# 中,问号 ? 的一些作用
  • HTML初学者第五天
  • 启动式service
  • 强化学习(第三课第三周)
  • 在 Scintilla 中为 Squirrel 语言设置语法解析器的方法
  • Kubernetes 配置管理
  • odoo代码分析(一)
  • 认识泛型、泛型类和泛型接口