《I2C接口基本知识课堂PPT》由会员分享,可在线阅读,更多相关《I2C接口基本知识课堂PPT(17页珍藏版)》请在金锄头文库上搜索。
1、I2C总线接口基本知识 1总线和接口的区别: 总线是一组传输通道,比如说总线是一组传输通道,比如说IICIIC总线。总线。 接口接口是一种连接标准,比如说是一种连接标准,比如说IICIIC接口。接口。 两者之间两者之间的关系就是的关系就是IICIIC接口的设备都要通过接口的设备都要通过IICIIC总线来总线来进行通信,而进行通信,而IICIIC总线上走的设备并不全是总线上走的设备并不全是IICIIC接口的。接口的。2什么是I2C总线? I2C(InterIntegrated Circuit)总线是由)总线是由PHILIPS公司开发的两线式串行总线,一公司开发的两线式串行总线,一根数据线根数据线
2、SDA,一根串行时钟线,一根串行时钟线SCL,用,用于连接微处理器及其外围设备,实现全双于连接微处理器及其外围设备,实现全双工同步数据处理。是微电子通信控制领域工同步数据处理。是微电子通信控制领域广泛采用的一种总线标准。它是同步通信广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少,控制方的一种特殊形式,具有接口线少,控制方式简单,器件封装形式小,通信速率较高式简单,器件封装形式小,通信速率较高等优点。等优点。34两根线nI2C 串行总线有两根信号线:一根双向的数据线 SDA;另一根是时钟线 SCL。所有接到 I2C 总线上的设备的串行数据都接到总线的 SDA 线,各设备的时钟线
3、 SCL接到总线的 SCL。56上拉电阻与传输速率 I2C I2C总线的总线的SCLSCL和和SDASDA端口输出为漏极开路,因此使用时必须连接端口输出为漏极开路,因此使用时必须连接上拉电阻。上拉电阻的大小与电源电压,传输速率等由关系。这上拉电阻。上拉电阻的大小与电源电压,传输速率等由关系。这是由于外围器件是漏极开路,上拉电阻的大小在一定程度上影响是由于外围器件是漏极开路,上拉电阻的大小在一定程度上影响外围器件信号传输的延迟时间。外围器件信号传输的延迟时间。 串行的串行的8 8位双向数据传输位速率在:位双向数据传输位速率在:n标准模式下可达标准模式下可达 100kbit/s 100kbit/s
4、,采用,采用10K10K欧姆的上拉电阻。欧姆的上拉电阻。n快速模式下可达快速模式下可达 400kbit/s 400kbit/s,采用,采用2K2K欧姆的上拉电阻。欧姆的上拉电阻。n高速模式下可达高速模式下可达3.4Mbit/s3.4Mbit/s,高速模式下不执行仲裁和时钟同步,高速模式下不执行仲裁和时钟同步以加速位处理能力,同时高速模式主机器件有一个以加速位处理能力,同时高速模式主机器件有一个SDAH SDAH 信号的信号的开漏输出缓冲器和一个在开漏输出缓冲器和一个在SCLH SCLH 输出的开漏极下拉和电流源上拉输出的开漏极下拉和电流源上拉电路。这个电流源电路缩短了电路。这个电流源电路缩短了
5、SCLH SCLH 信号的上升时间,任何时侯信号的上升时间,任何时侯在在Hs Hs 模式,只有一个主机的电流源有效模式,只有一个主机的电流源有效7I2C总线上的外围扩展器件的数量nI2C总线上的外围扩展器件为电压型负载的CMOS器件,因此总线上的器件数量不是由电流负载能力决定,而是由电容负载能力决定。通常I2C总线的负载能力为400PF。同时由于外围器件的地址唯一,所以外围器件的数量还受器件地址空间的限制。8地址唯一 I2C总线上所有的外围器件都需要唯一的地址总线上所有的外围器件都需要唯一的地址由器件地址和引脚地址两部分构成,共七位。由器件地址和引脚地址两部分构成,共七位。器件地址是器件地址是
6、I2C器件固有的地址编码,器件出器件固有的地址编码,器件出厂时就已经给定,不可更改。引脚地址由厂时就已经给定,不可更改。引脚地址由I2C总线外围器件的地址引脚(总线外围器件的地址引脚(A2,A1,AO)决)决定,根据其在电路中接电源正极,接地或悬空定,根据其在电路中接电源正极,接地或悬空的不同,形成不同的地址代码。引脚地址数决的不同,形成不同的地址代码。引脚地址数决定了同一种器件可接入总线的最大数目。定了同一种器件可接入总线的最大数目。 R/W是方向位,是方向位,R/W=0表示主器件向从器表示主器件向从器件发送数据,件发送数据,R/W=1表示主器件读取从器件表示主器件读取从器件数据。数据。9n
7、I2C总线上所有的外围器件都需要唯一的地址,由器总线上所有的外围器件都需要唯一的地址,由器件地址和引脚地址两部分构成,共七位。器件地址是件地址和引脚地址两部分构成,共七位。器件地址是I2C器件固有的地址编码,器件出厂时就已经给定,器件固有的地址编码,器件出厂时就已经给定,不可更改。引脚地址由不可更改。引脚地址由I2C总线外围器件的地址引脚总线外围器件的地址引脚(A2,A1,AO)决定,根据其在电路中接电源正极,)决定,根据其在电路中接电源正极,接地或悬空的不同,形成不同的地址代码。引脚地址接地或悬空的不同,形成不同的地址代码。引脚地址数决定了同一种器件可接入总线的最大数目。数决定了同一种器件可
8、接入总线的最大数目。nR/W是方向位,是方向位,R/W=0表示主器件向从器件发送表示主器件向从器件发送数据,数据,R/W=1表示主器件读取从器件数据。表示主器件读取从器件数据。10位序 D7D6D5D4D3D2D1D0定义 器件地址 引脚地址 方向位 DA3 DA2 DA1 DA0 A2 A1A0 _R/W11主从通信nI2CI2C规程运用主规程运用主/ /从双向通讯。从双向通讯。I2CI2C总线的运行总线的运行(数据传输)由主机控制。所谓主机即启动数(数据传输)由主机控制。所谓主机即启动数据的传送时(发出启动信号)发出时钟信号,据的传送时(发出启动信号)发出时钟信号,传送结束时发出停止信号的
9、设备,通常主机是传送结束时发出停止信号的设备,通常主机是微处理器。被主机寻访的设备都称为从机。主微处理器。被主机寻访的设备都称为从机。主机和从机的数据传送,可以由主机发送数据到机和从机的数据传送,可以由主机发送数据到从机,凡是发送数据到总线的设备称为发送器,从机,凡是发送数据到总线的设备称为发送器,也可以是从机发到主机。从总线上接收数据的也可以是从机发到主机。从总线上接收数据的设备被称为接受器。设备被称为接受器。12总线竞争的仲裁n总线上可能挂接有多个器件,有时会发生两个或多个总线上可能挂接有多个器件,有时会发生两个或多个主器件同时想占用总线的情况,这种情况叫做总线竞主器件同时想占用总线的情况
10、,这种情况叫做总线竞争。争。I2CI2C总线具有多主控能力,可以对发生在总线具有多主控能力,可以对发生在SDASDA线上线上的总线竞争进行仲裁,其仲裁原则是这样的:当多个的总线竞争进行仲裁,其仲裁原则是这样的:当多个主器件同时想占用总线时,如果某个主器件发送高电主器件同时想占用总线时,如果某个主器件发送高电平,而另一个主器件发送低电平,则发送电平与此时平,而另一个主器件发送低电平,则发送电平与此时SDASDA总线电平不符的那个器件将自动关闭其输出级。总线电平不符的那个器件将自动关闭其输出级。总线竞争的仲裁是在两个层次上进行的。首先是地址总线竞争的仲裁是在两个层次上进行的。首先是地址位的比较,如
11、果主器件寻址同一个从器件,则进入数位的比较,如果主器件寻址同一个从器件,则进入数据位的比较,从而确保了竞争仲裁的可靠性。由于是据位的比较,从而确保了竞争仲裁的可靠性。由于是利用利用I2CI2C总线上的信息进行仲裁,因此不会造成信息总线上的信息进行仲裁,因此不会造成信息的丢失。的丢失。1314 I2CI2C总线在传送数据过程中共有三种类型信号,总线在传送数据过程中共有三种类型信号, 它们分别它们分别是:启动信号、停止信号和应答信号。是:启动信号、停止信号和应答信号。 启动信号:启动信号:SCLSCL为高电平时,为高电平时,SDASDA由高电平向低电平跳变,由高电平向低电平跳变,开始传送数据。开始
12、传送数据。 停止信号:停止信号:SCLSCL为低电平时,为低电平时,SDASDA由低电平向高电平跳变,由低电平向高电平跳变,结束传送数据。结束传送数据。 应答信号:接收数据的应答信号:接收数据的ICIC在接收到在接收到8bit8bit数据后,向发送数据后,向发送数据的数据的ICIC发出特定的低电平脉冲,表示已收到数据。发出特定的低电平脉冲,表示已收到数据。CPUCPU向受控单元发出一个信号后,等待受控单元发出一个应答向受控单元发出一个信号后,等待受控单元发出一个应答信号,信号,CPUCPU接收到应答信号后,根据实际情况作出是否继接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到
13、应答信号,由判断为受控单续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。元出现故障。 1516I2C接口应用n由于串行总线连线少,结构简单,往往不用专用的母由于串行总线连线少,结构简单,往往不用专用的母板和插座而直接用导线连接各个设备即可。因此,采板和插座而直接用导线连接各个设备即可。因此,采用串行总线大大简化了系统硬件设计。用串行总线大大简化了系统硬件设计。PHILIPSPHILIPS公司公司早在十几年就前推出了早在十几年就前推出了I2CI2C串行总线,它是具备多主串行总线,它是具备多主机系统所需的包括裁决和高低速设备同步等功能的高机系统所需的包括裁决和高低速设备同步等功能的高性能串行总线。最初为音频和视频设备开发,如今主性能串行总线。最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。增加了系统的安全性,方便了管理。 17