IIC是一种同步半双工串行总线
同步
说明这个总线有一根SCL线,也就是有共同时钟线
半双工
可以进行双向通信,但是收发不能同时进行,发的时候禁止接收,接的时候禁止发送
【资料图】
串行
数据是一位一位发送的
总线
两根线(SCL SDA)可以接多个IIC类型器件,如AT24CXX,四针OLED,SHT30,AHT10
如何识别每个器件?
通过从机地址与每个器件通信
以24C02为例,他的从机地址为1010xxx(一共7位),1010固定不变,xxx由硬件的引脚决定,接3V3就是1,接GND就是0,如果三个硬件引脚都接GND,则地址为1010000。
发送要求
从高位开始发(从左到右),例如1010,发送的顺序为1,0,1,0
固定信号 起始信号
数据线的下降沿时钟线的下降沿
以常用的四针OLED驱动为例子
固定信号 应答信号
SDA发送高电平
固定信号 结束信号
时钟线上升沿数据线上升沿也就是开始信号的反向
总结
IIC规范为厂商留下了一些自由度,所以IIC的固定驱动也略有不同
在I2C总线中,一些信号是固定的,不是按照从机设备来定的。以下是这些固定信号:
时钟信号(SCL):主设备控制总线上的时钟信号。时钟信号用于同步数据传输,它的频率决定了数据传输速度。
数据信号(SDA):主设备和从设备都可以在总线上发送和接收数据。SDA线上的电平表示二进制数据的比特值。
起始信号(Start):由主设备发送,用于指示开始一次数据传输。
停止信号(Stop):由主设备发送,用于指示本次数据传输结束。
应答信号(Acknowledge):由从设备发送,用于响应主设备的读写请求。如果从设备正确接收到了数据,则会返回一个应答信号。
设备地址:用于寻址和访问每个设备。每个设备都有一个唯一的地址,用于在总线上进行识别和寻址。
这些信号的作用和使用方法是固定的,不受从机设备的影响。
标签: