I2C接口基本知识
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
I2C总线上的外围扩展器件的数量
I2C总线上的外围扩展器件为电压型负载的 CMOS器件,因此总线上的器件数量不是由电 流负载能力决定,而是由电容负载能力决定。 通常I2C总线的负载能力为400PF。同时由于 外围器件的地址唯一,所以外围器件的数量还 受器件地址空间的限制。
地址唯一
I2C总线上所有的外围器件都需要唯一的地址 由器件地址和引脚地址两部分构成,共七位。 器件地址是I2C器件固有的地址编码,器件出 厂时就已经给定,不可更改。引脚地址由I2C 总线外围器件的地址引脚(A2,A1,AO)决 定,根据其在电路中接电源正极,接地或悬空 的不同,形成不同的地址代码。引脚地址数决 定了同一种器件可接入总线的最大数目。 R/W ̄是方向位,R/W ̄=0表示主器件向从器 件发送数据,R/W ̄=1表示主器件读取从器件 数据。
I2C总线接口基本知识
总线和接口的区别:
总线是一组传输通道,比如说IIC总线。 接口 是一种连接标准,比如说IIC接口。 两者之间 的关系就是IIC接口的设备都要通过IIC总线来 进行通信,而IIC总线上走的设备并不全是IIC 接口的。
什么是I2C总线?
I2C(Inter-Integrated Circuit)总线是由 PHILIPS公司开发的两线式串行总线,一 根数据线SDA,一根串行时钟线SCL,用 于连接微处理器及其外围设备,实现全双 工同步数据处理。是微电子通信控制领域 广泛采用的一种总线标准。它是同步通信 的一种特殊形式,具有接口线少,控制方 式简单,器件封装形式小,通信速率较高 等优点。
Biblioteka Baidu
I2C总线上所有的外围器件都需要唯一的地址,由器 件地址和引脚地址两部分构成,共七位。器件地址是 I2C器件固有的地址编码,器件出厂时就已经给定, 不可更改。引脚地址由I2C总线外围器件的地址引脚 (A2,A1,AO)决定,根据其在电路中接电源正极, 接地或悬空的不同,形成不同的地址代码。引脚地址 数决定了同一种器件可接入总线的最大数目。 R/W ̄是方向位,R/W ̄=0表示主器件向从器件发送 数据,R/W ̄=1表示主器件读取从器件数据。
位序 D7 定义
D6
D5
D4
D3
D2
D1
D0 方向 位 _ R/W
器件地址
引脚地址
DA3 DA2 DA1 DA0 A2
A1
A0
主从通信
I2C规程运用主/从双向通讯。I2C总线的运行 (数据传输)由主机控制。所谓主机即启动数 据的传送时(发出启动信号)发出时钟信号, 传送结束时发出停止信号的设备,通常主机是 微处理器。被主机寻访的设备都称为从机。主 机和从机的数据传送,可以由主机发送数据到 从机,凡是发送数据到总线的设备称为发送器, 也可以是从机发到主机。从总线上接收数据的 设备被称为接受器。
两根线
I2C 串行总线有两根信号线:一根双向的数据 线 SDA;另一根是时钟线 SCL。所有接到 I2C 总线上的设备的串行数据都接到总线的 SDA 线,各设备的时钟线 SCL接到总线的 SCL。
上拉电阻与传输速率
I2C总线的SCL和SDA端口输出为漏极开路,因此使用时必须连接 上拉电阻。上拉电阻的大小与电源电压,传输速率等由关系。这 是由于外围器件是漏极开路,上拉电阻的大小在一定程度上影响 外围器件信号传输的延迟时间。 串行的8位双向数据传输位速率在: 标准模式下可达 100kbit/s,采用10K欧姆的上拉电阻。 快速模式下可达 400kbit/s,采用2K欧姆的上拉电阻。 高速模式下可达3.4Mbit/s,高速模式下不执行仲裁和时钟同步 以加速位处理能力,同时高速模式主机器件有一个SDAH 信号的 开漏输出缓冲器和一个在SCLH 输出的开漏极下拉和电流源上拉 电路。这个电流源电路缩短了SCLH 信号的上升时间,任何时侯 在Hs 模式,只有一个主机的电流源有效
I2C接口应用
由于串行总线连线少,结构简单,往往不用专用的母 板和插座而直接用导线连接各个设备即可。因此,采 用串行总线大大简化了系统硬件设计。PHILIPS公司 早在十几年就前推出了I2C串行总线,它是具备多主 机系统所需的包括裁决和高低速设备同步等功能的高 性能串行总线。最初为音频和视频设备开发,如今主 要在服务器管理中使用,其中包括单个组件状态的通 信。例如管理员可对各个组件进行查询,以管理系统 的配置或掌握组件的功能状态,如电源和系统风扇。 可随时监控内存、硬盘、网络、系统温度等多个参数, 增加了系统的安全性,方便了管理。
总线竞争的仲裁
总线上可能挂接有多个器件,有时会发生两个或多个 主器件同时想占用总线的情况,这种情况叫做总线竞 争。I2C总线具有多主控能力,可以对发生在SDA线上 的总线竞争进行仲裁,其仲裁原则是这样的:当多个 主器件同时想占用总线时,如果某个主器件发送高电 平,而另一个主器件发送低电平,则发送电平与此时 SDA总线电平不符的那个器件将自动关闭其输出级。 总线竞争的仲裁是在两个层次上进行的。首先是地址 位的比较,如果主器件寻址同一个从器件,则进入数 据位的比较,从而确保了竞争仲裁的可靠性。由于是 利用I2C总线上的信息进行仲裁,因此不会造成信息 的丢失。
I2C总线在传送数据过程中共有三种类型信号, 它们分 别是:启动信号、停止信号和应答信号。 启动信号:SCL为高电平时,SDA由高电平向低电平跳变, 开始传送数据。 停止信号:SCL为低电平时,SDA由低电平向高电平跳变, 结束传送数据。 应答信号:接收数据的IC在接收到8bit数据后,向发送 数据的IC发出特定的低电平脉冲,表示已收到数据。CPU 向受控单元发出一个信号后,等待受控单元发出一个应答 信号,CPU接收到应答信号后,根据实际情况作出是否继 续传递信号的判断。若未收到应答信号,由判断为受控单 元出现故障。