嵌入式爱好者

嵌入式爱好者 门户 知识库 查看内容

I2C接口排查思路

2022-8-19 14:11| 发布者: 玫瑰星云| 查看: 342| 评论: 0

类目:  >  知识库     文档编号: 720

一、原理(与参考完全一致)

确定该SDASCL两根线均通过上拉电阻上拉

 

二、电平问题(电平转换)

可参考引脚复用表格查看I2C总线的电平,总线电平与设备电平不匹配需做电平转换。常用mos转换电平电路如图所示

三、焊接问题(器件和焊接工艺)

检测上拉电阻、总线上的设备、连接器引脚、电平转换芯片是否虚焊

四、接口排查思路

1、电源(准确性和纹波):检测上拉电阻电压是否正常,设备供电电压是否正常,若电平不匹配且使用电平转换芯片查看电平转换芯片供电是否正常。

2、确认I2C设备复位信号是否处理妥当,有些I2C芯片在复位信号抬起过程中会锁存I2C总线的状态表示为I2C设备的设备地址,需要软件配置其复位信号抬起过程中的总线状态,同时须注意同一总线上的设备地址是否冲突。

3、测量在总线工作时SDASCL是否存在波形。

4、波形质量:若波形上升较缓,则上拉电阻较大,减小上拉电阻即可;若波形低电平不能到0V,则上拉电阻较小,增加上拉电阻即可。

5、测量I2C波形是否符合I2C通信协议。在空闲状态时SDASCL两线均处于上拉状态,总线的开始和终止都是由主机发起产生。开始条件:SCL线是高电平时,SDA线从高电平向低电平切换。终止条件:SCL线是高电平时,SDA线从低电平向高电平切换。

6、测量SCL时钟线频率是否与设备树中配置一致。

7、检测I2C设备是否正常工作,电平转换部分是否正常工作。

8、可通过I2C tool工具查看总线上是否挂载设备

i2cdetect -l   //检测系统上有几组I2C

i2cdetect -r -y 2   //检测I2C第二组总线上的挂载的设备

 

五、PCB布局布线(PCB层叠问题)

总线拓扑图如下

Pcb 布线时上拉电阻尽量放在源端。

 

注:若使用的I2C设备对于I2C的触发比较敏感,有细微的毛刺也会误触发,在同一路上的I2C设备插上后会影响较敏感的设备无法使用,可在I2C设备端加一个RC滤波电路,电容需要用pf级别的,且挂载该设备的总线尽量不要绕太远,时钟线最好进行包地处理。

 


已解决

未解决

只是看看

最新评论

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2025-4-19 23:13

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

返回顶部