您的位置:首页 > 其它

3. I2C总线

2013-03-05 18:01 204 查看
3. I2C总线

I2C是由飞利浦公司开发的双线同步总线。像SPI一样,该总线可用来与EEPROM、ADC、DAC和LCD这类慢速器件进行通信。

3-1、I2C通信

I2C是一个半双工、多主总线,该总线网络有一个或几个主控器件和很多个从器件。信息由两条串行线传输:串行数据线(SDA)和串行时钟线(SCL)。图1显示了使用两个主控和三个从器件相连接的例子。

网络中的每一个器件都预指定一个7位或10位的地址。飞利浦会给器件制造商分配地址,也有一个特定的地址用于高速通信,以及一个通用呼叫地址用于与网络中所有器件的通信。10位寻址的优点是允许更多的器件(高达1024个)布置在网络中。然而,总线中器件的数目取决于总线的电容量,必须限制在400pF以内。



主控器件发起数据传送,并提供用于通信的时钟信号。通信开始于SCL为高电平时SDA由高到低的转换,紧接着是一个7位或10位的从地址,一个数据方向位(R/W),一个应答位和停止状态。停止状态定义为在时钟信号为高时数据线电平由低到高的转换。每一个数据字节长度为8位,单次传送的字节数并没有限制。

由于I2C是一个多主总线,因此可能有两个或更多的主控器件同时试图访问总线,在时钟信号为高电平时在总线上置“1”的主控器件赢得总线仲裁。

I2C有三种不同的运行模式:标准、快速和高速模式。在使用快速和高速模式时,可能某个从属器件不能像主控器件那么快地处理数据。此时,从属器件会将SCL线拉至低电平来保持总线,这迫使主控器件进入等待状态,直至从属器件准备就绪。

3-2、数据方向和通信速度

数据传输首先从最高位开始。I2C总线设计用于三种数据传输速度,每个都向下兼容性:

低速,数据传输率为0到100kbps;快速,数据传输率可以高达400kbps;高速,数据传输率可以高达3.4Mbps。

3-3、I2C与SPI比较

I2C和SPI都能用于低速器件的通信,而SPI的数据传输速率高于I2C。此外,SPI具有一个内在地址功能,不需要设计一个额外的寄存器来测试地址,从而减少软件和硬件的设计开销。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: