嵌入式技术栈之I2C

2022-04-13 14:07:31 浏览数 (2)

1.I2C的速率

i2c的速率在100kbit/s--3.4Mbits之间。

标准模式:100kbit/s

快速模式:400kbit/s

2.I2C总线

SDA-串行数据线

SCL_串行时钟线

由于只有一根数据线,所以I2C是半双工通信。

3.i2c协议描述

i2c时序图如下图所示:

对上图解释下

1)I2C的数据格式:

S-起始信号,SLAVE_ADDRESS 从机地址,R/W 是读写信号,应答ACK,数据,p,停止信号。

读写为,0表示写,1表示读。

2)起始信号时钟是SCL为高时,SDA从高变换到低电平;

从机地址:有两种,一种为7bit地址,一种是10bit地址。

数据:一个SCL时钟周期,数据传输1bit。只有SCL为高电平时,SDA的数据才是有效的,SDA的高电平表示数据位1,低电平表示为0.

3)ACK,主机发送地址后,从机会响应一个ACK,然后主机可以继续发送数据,这个数据没发送一个字节,从机就响应一个ACK. 4)NACK,是非应答响应。表示主机可以结束数据传输了。

5)停止信号:SCL高电平时,SDA从低电平变为高电平,就产生一个停止信号。

(未完待续)

0 人点赞