看图识I2C

2017-04-14  by:CAE仿真在线  来源:互联网

I2C接口标准出来超过20年了,相关的软件,FPGA和芯片设计都非常成熟,在各种产品上广泛应用。整理了一下几个图片,供自己和大家万一不幸需要调试的时候参考,有了这个就再也不用担心I2C了。

I2C协议中的数据传输时序图:

看图识I2CHFSS仿真分析图片1

SCL是时钟,SDA承载的是数据。当SDA1变动到0,而SCL还是1时,表示开始数据传输。接下来的7位,就是设备的地址。紧接着的是读写标志,其为1时是读取,为0则是写。如果I2C总线上存在着和请求的地址相对应的设备,则从设备会发送一个ACK信号通知主设备,可以发送数据了。接到ACK信号后,主设备则发送一个8位的数据。当传输完毕之后,SCL保持为1,SDA0变换到1时,标明传输结束。

从这个时序图中可以看到,SCL很重要,并且哪个时钟沿是干嘛的,都是确定好的。比如,前面7个必定是地址,第8个是读写标志,数据传输必须是8位,必须接个ACK信号等等。

前面的时序图并没有标明数据传输的方向,我们现在看看写操作的数据流向:

看图识I2CHFSS结果图片3


网格的是主设备发送的,白色格子是从设备发送的。从图示中可以看到,对于写操作,从设备都只是发送ACK进行确认而已。

而读操作的数据流向,就有所不同,如图:

看图识I2CHFSS结果图片5


这时候,从设备除了发送ACK以外,紧跟着的还有数据。

我们用示波器来查看波形图,以便于理解。

将示波器的XY分别接到SDASCL,得到波形并分析如图:

看图识I2CHFSS结果图片8

看图识I2CHFSS结果图片9

有对比才知道差异,最后上一张异常的波形。找到问题在哪里了吗?

看图识I2Cansys hfss图片11

没有ACK响应。很大可能是地址错了,注意上图的地址0x307位地址,这样8位地址是0x60。或者从设备不在位。




开放分享:优质有限元技术文章,助你自学成才

相关标签搜索:看图识I2C HFSS电磁分析培训 HFSS培训课程 HFSS技术教程 HFSS无线电仿真 HFSS电磁场仿真 HFSS学习 HFSS视频教程 天线基础知识 HFSS代做 天线代做 Fluent、CFX流体分析 HFSS电磁分析 

编辑
在线报名:
  • 客服在线请直接联系我们的客服,您也可以通过下面的方式进行在线报名,我们会及时给您回复电话,谢谢!
验证码

全国服务热线

1358-032-9919

广州公司:
广州市环市中路306号金鹰大厦3800
电话:13580329919
          135-8032-9919
培训QQ咨询:点击咨询 点击咨询
项目QQ咨询:点击咨询
email:kf@1cae.com