0、概要
IIC(IIC,I2C,inter-Integrated circuit),两线式串行总线,用于MCU和外设间的通信。
IIC只需两根线:数据线SDA和时钟线SCL。以半双工方式实现MCU和外设之间数据传输,速度最高可达400kbps,因此适用于慢速设备。
IIC设备使用7位地址(也有的是10位地址),所以在总线上最多支持127个设备,即我们看到代码的IIC地址一般不会超过0xff。
多主机I2C总线结构
注意SDA和SCL两根总线需要上拉,使总线处于空闲状态。
1、IIC协议
1-1 空闲状态
协议规定,SDA和SCL同时为高电平时,总线处于空闲状态。上拉电阻保证电平处于高电平。
1-2 起始信号和停止信号
- 起始信号:SCL为高电平时,SDA电平发生