IIC总线简介
IIC总线是由飞利浦公司推出的一种串行通信总线,主要由数据线SDA和时钟线SCL两根线构成。IIC总线支持多主和多从模式,接在IIC总线上的设备都一个唯一的地址,通过该唯一的地址,主设备可以指定与某个从设备进行通信,通信内容主要包括开始条件、从机地址、数据、应答、停止条件等数据。
开始条件
IIC总线在空闲状态下,SDA和SCL都为高电平。开始条件只能由主设备发送,用于通知其它设备,要开始传输数据了,准备好对从机地址的比较和对数据的接收应答等。开始条件为:
SCL为高电平时,SDA由高电平跳转为低电平。
在开始条件之后的数据,数据的有效性如下:
1.SCL为高电平时,SDA的数据需保持稳定,此时接收数据的设备进行数据的采样读取;
2.SCL为低电平时,SDA的数据才允许变化,此时发送的数据可以进行改变。
从机地址
在主设备发送完开始条件后,主设备需通过发送从机地址+读写位来指定与某个从设备进行读还是写的操作,从机地址有7位和10位的,此处只对7位的从机地址进行介绍。若是7位的从机地址,则在发送完开始条件后,主设备需发送8位的数据,高7位代表从机的地址,第1位代表读写位,读写位如果为0的话则代表主设备写数据给从设备,若为1的话则代表主设备读取从设备的数据。各个从设备根据主设备发送的第一个字节的数