推荐-iic协议超详细的解释.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、协议 1. 空闲状态 I2C 总线总线的 SDA和 SCL两条信号线同时处于高电平时, 规定为 总线的空闲状态。此时各个器件的输出级场效应管均处在截止状态, 即释放总线,由两条信号线各自的上拉电阻把电平拉高。 2. 起始位与停止位的定义: ? 起始信号:当 SCL为高期间, SDA由高到低的跳变;启动信号是 一种电平跳变时序信号,而不是一个电平信号。 ? 停止信号:当 SCL为高期间, SDA由低到高的跳变;停止信号也 是一种电平跳变时序信号,而不是一个电平信号。 3.ACK 发送器每发送一个字节, 就在时钟脉冲 9 期间释放数据线,由接收 器反馈一个应答信号。 应答信号为低电平时,规定为有效应答位( ACK 简称应答位),表示接收器已经成功地接收了该字节;应答信号为高电 平时,规定为非应答位( NACK),一般表示接收器接收该字节没有成 功。 对于反馈有效应答位 ACK的要求是, 接收器在第 9 个时钟脉冲 之前的低电平期间将 SDA线拉低,并且确保在该时钟的高电平期间为 稳定的低电平 。 如果接收器是主控器,则在它收到最后一个字节后, 发送一个 NACK信号,以通知被控发送器结束数据发送,并释放 SDA线, 以便主控接收器发送一个停止信号 P。 如下图逻辑分析仪的采样结果:释放总线后,如果没有应答信 号,sda 应该一直持续为高电平,但是如图中蓝色虚线部分所示,它 被拉低为低电平,证明收到了应答信号。 这里面给我们的两个信息是: 1)接收器在 SCL的上升沿到来之前的低 电平期间拉低 SDA;2) 应答信号一直保持到 SCL的下降沿结束;正如 前文红色标识所指出的那样。 4. 数据的有效性: I2C 总线进行数据传送时,时钟信号为高电平期间,数据线上的数据 必须保持稳定, 只有在时钟线上的信号为低电平期间, 数据线上的高 电平或低电平状态才允许变化。 我的理解:虽然只要求在高电平期间保持稳定, 但是要有一个提前量, 也就是数据在 SCL的上升沿到来之前就需准备好,因为在前面 I2C 总线之 ( 一 ) 概述 一文中已经指出,数据是在 SCL的上升沿打入到 器件 (EEPROM)中的。 5. 数据的传送: 在 I2C 总线上传送的每一位数据都有一个时钟脉冲相对应 (或同步 控制),即在 SCL串行时钟的配合下,在 SDA上逐位地串行传送每一位 数据。数据位的传输是边沿触发。 二、工作过程 总线上的所有通信都是由主控器引发的。 在一次通信中, 主控器与 被控器总是在扮演着两种不同的角色。 1. 主设备向从设备发送数据 主设备发送起始位, 这会通知总线上的所有设备传输开始了, 接下 来主机发送设备地址,与这一地址匹配的 slave 将继续这一传输过程, 而其它 slave 将会忽略接下来的传输并等待下一次传输的开始。 主设备 寻址到从设备后,发送它所要读取或写入的从设备的内部寄存器地址;

文档评论(0)

一千零一夜 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档