1、I2C简介
I2C 通讯协议(Inter-Integrated Circuit)是由Phiilps公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要USART、CAN等通讯协议的外部收发设备,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。
2、I2C物理层
I2C总线只需要两条总线线路,一条双向串行数据线(SDA) ,一条串行时钟线 (SCL)。SDA线用来装载数据,SCL线用于控制收发。I2C支持多设备的总线。支持多个通讯主机及多个通讯从机。
3、I2C协议层
3.1、协议层总述
IIC总共有三种信号:
-
开始信号:SCL=1 & SDA下降沿触发
-
传输信号:SCL=0、SCL=1、SCL=0(传输SDA已装载数据)
-
结束信号:SCL=1 & SDA上升沿触发
下图是IIC传输协议,图中Bn是数据,S代表Start,P代表Pause