一、IIC(Inter-Integrated Circuit)介绍
IIC(Inter-Integrated Circuit)是一种具有两线传输的串行通信总线,适用于数据量不大且传输距离短的场合。
IIC串行总线由两根信号线组成,一根是双向的数据线SDA,另一根是单向的时钟线SCL,在空闲状态时,SDA和SCL线都置’1‘,为高电平。
IIC为同步的半双工通信方式,常见的传输速率有:100kb/s、300kb/s、3.4Mkb/s。
二、传输协议
IIC由两根通信信号线组成,SCL是由主模块输入的时钟信号,是单向的信号,而SDA是由主机或从机控制的数据信号,是双向信号。
在空闲状态下,SCL及SDA都是置高的状态,当需要进行一次IIC传输时,由START信号指示当前数据传输开始,由STOP信号指示当前的数据传输结束。
START信号的标识是在SCL高电平情况下,SDA信号由高变低 ,即视为START开始;
STOP信号标识是在SCL高电平情况下,SDA信号由低变高,即视为STOP结束;
起始和结束时序图如下:
用到的IIC引脚定义:
其中SCL接到了PA11,SDA接到了PA12;
/