3. I2C总线

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具有一个内在地址功能,不需要设计一个额外的寄存器来测试地址,从而减少软件和硬件的设计开销。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值