第二章 i2c总线原理.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
HYPERLINK /sinbad-li/archive/2012/07/06/2579920.htmlI2C总线原理 ??什么是I2C总线? ? ?? ?? ?I2C即Inter IC,由Philips公司开发,是当今电子设计中应用非常广泛的串行总线之一,主要用于电压、温度监控,EEPROM数据的读写,光模块的管理等。 I2C总线只有两根线,SCL和SDA,SCL即Serial Clock,串行参考时钟,SDA即Serial Data,串行数据。 ? ?? ?? ???I2C总线的速率能达到多少? ? ???标准模式下:100Kbps ? ???快速模式下:400Kbps ? ???高速模式下:3.4Mbps ? ?? ?? ? I2C总线结构如下图所示:   如上图所示,I2C是OC或OD输出结构,使用时必须在芯片外部进行上拉,上拉电阻R的取值根据I2C总线上所挂器件数量及I2C总线的速率有关,一般是标准模式下R选择10kohm,快速模式下R选取1kohm,I2C总线上挂的I2C器件越多,就要求I2C的驱动能力越强,R的取值就要越小,实际设计中,一般是先选取4.7kohm上拉电阻,然后在调试的时候根据实测的I2C波形再调整R的值。   ?I2C总线上最多能挂多少个I2C器件? ?I2C总线上允许挂接I2C器件的数量由两个条件决定: ? ?? ? 1).I2C从设备的地址位数。I2C标准中有7位地址和10位地址两种。如果是7位地址,允许挂接的I2C器件数量为:27=128,如果是10位地址,允许挂接的I2C器件数量为:210=1024,一般I2C总线上挂接的I2C器件不会太多,所以现在几乎所有的I2C器件都使用7位地址。 ? ?? ? 2).挂在I2C总线上所有I2C器件的管脚寄生电容之和。I2C总线规范要求,I2C总线容性负载最大不能超过470pF。 ?I2C总线是如何工作的? ? ?? ? ?? ?1).I2C总线传输的特点。 ? ?? ?I2C总线按字节传输,即每次传输8bits二进制数据,传输完毕后等待接收端的应答信号ACK,收到应答信号后再传输下一字节。等不到ACK信号后,传输终止。空闲情况下,SCL和SDA都处于高电平状态。 ? ?? ?2).如何判断一次传输的开始? ? ? ? ???如上图所示,I2C总线传输开始的标志是:SCL信号处于高电平期间,SDA信号出现一个由高电平向低电平的跳变。 3).如何判断一次传输的结束? ? ?? ? ???如上图所示,I2C总线传输结束的标志是:SCL信号处于高电平期间,SDA信号出现一个由低电平向高电平的跳变。跟开始标识正好相反。 ? ?? ???4).什么样的I2C数据才是有效的。 ? ? 在SCL处于高电平期间,SDA保持状态稳定的数据才是有效数据,只有在SCL处于低电平状态时,SDA才允许状态切换。前面已经讲过了,SCL高电平期间,SDA状态发生改变,是传输开始/.结束的标志。 ?I2C总线的主要时序参数有哪些? I2C总线的主要时序参数有:开始建立时间t SU:STA,开始保持时间t HD:STA,数据建立时间t SU:DAT,数据保持时间t SU:DAT?,结束建立时间t SU:STO。如下图所示: ? ?? 开始建立时间:SCL上升至幅度的90%与SDA下降至幅度的90%之间的时间间隔; ? ? 开始保持时间:SDA下降至幅度的10%与SCL下降至幅度的10%之间的时间间隔; ? ? 数据建立时间:SDA上升至幅度的90%或SDA下降至幅度的10%与SCL上升至幅度的10%之间的时间间隔; ? ? 数据保持时间:SCL下降至幅度的10%与SDA上升至幅度的10%或SDA下降至幅度的90%之间的时间间隔; ? ? 结束建立时间:SCL上升至幅度的90%与SDA上升至幅度的90%之间的时间间隔; ? ?I2C总线的时序参数要求: ? ? ? ?? ??I2C总线如何进行读写操作? ? ?? ? ? ? 如上图所示,I2C开始传输时,第一个字节的前7bit是地址信息(7位地址器件),第8bit是操作标识,为“0”时表示写操作,为“1”时表示读操作,第9个时钟周期是应答信号ACK,低有效,高电平表示无应答,传输终止。在上图中还可以看出,正常情况下,写操作是I2C主设备方发起终止操作的,而读操作时,I2C主控制器在接收完最后一个数据后,不对从设备进行应答,传输终止。 ? ?? ??I2C总线案例分析 ?问题描述: ? ? 在测试某I2C总线时,发现SDA数据线上有毛刺,而且出现的位置很有规律,一般在第9,18,27-----时钟周期的后面。如下图所示。 ?? ? ???问题分析: ? ??? 如上图所示,t1是I2C总线上的Slave设备应答信号ACK(第9个时

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档