文档介绍:I I 2 2C C串行总线的组成及工作原理串行总线的组成及工作原理 I I 2 2C C串行总线的组成及工作原理串行总线的组成及工作原理??采用串行总线技术可以使系统的硬件设计大大简采用串行总线技术可以使系统的硬件设计大大简化、系统的体积减小、可靠性提高。同时,系统的化、系统的体积减小、可靠性提高。同时,系统的更改和扩充极为容易。更改和扩充极为容易。??常用的串行扩展总线有: 常用的串行扩展总线有: I I 2 2 C C ( ( Inter IC BUS Inter IC BUS )总)总线、线、单总线单总线( (1 1- - WIRE BUS WIRE BUS )、)、 SPI SPI ( ( Serial Serial Peripheral Interface Peripheral Interface )总线及)总线及 Microwire Microwire /PLUS /PLUS 等。等。本章仅讨论本章仅讨论 I I 2 2C C串行总线。串行总线。 I I 2 2C C串行总线概述串行总线概述 I I 2 2C C总线是总线是 PHLIPS PHLIPS 公司推出的一种串行总线,是具备多公司推出的一种串行总线,是具备多主机系统所需的包括总线裁决和高低速器件同步功能的高主机系统所需的包括总线裁决和高低速器件同步功能的高性能串行总线。性能串行总线。 I I 2 2C C总线只有两根双向信号线。一根是数据线总线只有两根双向信号线。一根是数据线 SDA SDA ,另一,另一根是时钟线根是时钟线 SCL SCL 。。 I I 2 2C C总线通过上拉电阻接正电源。当总线空闲时,两根线均总线通过上拉电阻接正电源。当总线空闲时,两根线均为高电平。连到总线上的任一器件输出的低电平,都将使总线为高电平。连到总线上的任一器件输出的低电平,都将使总线的信号变低,即各器件的的信号变低,即各器件的 SDA SDA 及及 SCL SCL 都是线都是线““与与””关系关系。。每个接到每个接到 I I 2 2C C总线上的器件都有唯一的地总线上的器件都有唯一的地址。主机与其它器件间的数据传送可以是址。主机与其它器件间的数据传送可以是由主机发送数据到其它器件,这时主机即由主机发送数据到其它器件,这时主机即为发送器。由总线上接收数据的器件则为为发送器。由总线上接收数据的器件则为接收器接收器。。在多主机系统中,可能同时有几个主机企图启在多主机系统中,可能同时有几个主机企图启动总线传送数据。为了避免混乱, 动总线传送数据。为了避免混乱, I I 2 2C C总线要通总线要通过总线仲裁,以决定由哪一台主机控制总线。过总线仲裁,以决定由哪一台主机控制总线。在在 80C51 80C51 单片机应用系统的串行总线扩展中, 单片机应用系统的串行总线扩展中, 我们经常遇到的是以我们经常遇到的是以 80C51 80C51 单片机为主机,其它单片机为主机,其它接口器件为从机的单主机情况。接口器件为从机的单主机情况。一、数据位的有效性规定一、数据位的有效性规定 I I 2 2C C总线进行数据传送时, 总线进行数据传送时, 时钟信号为高电平期间时钟信号为高电平期间,数据,数据线上的数据必须保持稳定,只有在线上的数据必须保持稳定,只有在时钟线上的信号为低电平时钟线上的信号为低电平期间期间,数据线上的高电平或低电平状态才允许变化。,数据线上的高电平或低电平状态才允许变化。 I I 2 2C C总线的数据传送总线的数据传送边缘采样?在采样时刻数据必须保持稳定? 二、起始和终止信号二、起始和终止信号 SCL SCL 线为高电平期间, 线为高电平期间, SDA SDA 线由高电平向低电平线由高电平向低电平的变化表示起始信号; 的变化表示起始信号; SCL SCL 线为高电平期间, 线为高电平期间, SDA SDA 线由低电平向高电平的变化表示终止信号。线由低电平向高电平的变化表示终止信号。起始和终止信号都是由主机发出的,在起始信号产生起始和终止信号都是由主机发出的,在起始信号产生后,总线就处于被占用的状态;在终止信号产生后,总线后,总线就处于被占用的状态;在终止信号产生后,总线就处于空闲状态。就处于空闲状态。连接到连接到 I I 2 2C C总线上的器件,若具有总线上的器件,若具有 I I 2 2C C总线的硬件接口,则总线的硬件接口,则很容易检测到起始和终止信号。对于不具备很容易检测到起始和终止信号。对于不具备 I2C I2C 总线硬件接总线硬件接口的有些单片机来说,为了检测起始和终止信号口的有些单片机来说,为了检测起始和终止信号,必须保证,必须保证在每个时钟周期内对数据线在每个时钟