IIC协议
(1)IIC简介
IIC总线是一种串行的、半双工总线,主要用于近距离、低速的芯片之间的通信;IIC总线有两根双向的信号线:一根数据线SDA用于收发数据,一根时钟线SCL用于通信双方时钟的同步;IIC总线硬件结构简单,成本较低,因此在各个领域得到了广泛的应用。
(2)IIC相关概念
IIC总线是一种多主机总线,连接在IIC总线上的器件分为主机和从机。主机有权发起和结束一次通信,而从机只能被主机呼叫;当总线上有多个主机同时启用总线时,IIC也具备冲突检测和仲裁(采用总线监听方式)的功能来防止发生错误产生;每个连接到IIC总线上的期间都有一个唯一的地址(7bit),且每个期间都可以作为主机也可以作为从机(同一时刻只能有一个主机),总线上的器件增加和删除不影响其他器件正常工作;IIC总线在通信时总线上发送数据的一端为发送端(source),接收数据的一端为接收端(destination)(这里的source不一定是主机,同理,destination也不一定是从机)。
- 起始位:在 SCL 为高电平的时候,SDA 出现下降沿就表示为起始位。
- 停止位:在 SCL 位高电平的时候,SDA出现上升沿就表示为停止位。
- 数据传输:数据传输需要保证在 SCL 高电平期间,SDA 上的数据稳定 ,在SCL为低电平时将数据送到SDA线上。
<