1.IIC总线的特点:

     同步,串行,半双工,支持多主多从,传输速率较低。

     同步因为有SCL串行时钟线,所以主机可以控制从机的通信速度。

     串行因为数据线很少。

     半双工数据只有1根,无论主机还是从机在发送数据时都需要占用同1根线,不能同时发送

2.IIC的通信速度:

      标准模式:100Kbps

      快速模式:400Kbps

      高速模式:3.4Mbps

3.IIC总线的构成:

      SDA:串行数据线

      SCL:串行时钟线

       IIC总线的所有设备(主机和从机)的SDA,SCL的线路分别来连接到一起,且总线上SDA,SCL线路均连接上拉电阻。

       上拉电阻的作用:1):增强总线的驱动能力

                                    2):使总线空闲时线路能够被自动拉高,与应答机制有关

4.IIC的数据帧格式:

     一帧数据8bit,先发送高位。

5.IIC通信的特殊信号:

     起始信号:保持SCL拉高,SDA由高到低。

     停止信号:保持SCL拉低,SDA由低到高。

     应答信号:有最近的一次数据帧的接收方提供;逻辑0有效应答,逻辑1无效应答。

6.IIC的多主场景下的仲裁机制:

1):线与机制,意思是低电平时优势电平,谁先提供低电平,谁控制。

2):所有主机在控制总线前,需要检测到总线保持高电平(空闲状态)

7.IIC通信的流程:

1):写从机流程(对从机的寄存器进行写入)

     主机产生信号。

     主机发送寻址地址:从机的7bit设备地址+1bit读写方向(写,逻辑0)。

     从机应答:若主机接收到0,通信继续,若主机接收到1,考虑寄存器地址有误或者设备故障,通信停止。

      主机发送寄存器地址。

      从机应答::若主机接收到0,通信继续,若主机接收到1,考虑寄存器地址有误或者设备故障,通信停止。

      主机发送写入的数据。

      从机应答:若主机接收到0,通信继续,若主机接收到1,设备故障,通信停止。

      主机产生停止信号。

2):读从机流程(对从机的寄存器读取)

      主机产生起始信号。

      主机发送寻址数据:从机的7bit设备地址+1bit读写方向(读,逻辑1)。

      从机应答:若主机接收到0,通信继续,若主机接收到1,考虑寄存器地址有误或者设备故障,通信停止。

     从机发送的数据:主机接收。

     主机应答:若主机想要继续通信,则应答0;若主机想要停止通信,则应答0.

    主机产生停止信号。

8.IIC的用途:

      主要用于驱动(低速的)传感器、存储器、显示器。

     比如:心率血氧模块、陀螺仪模块、电容键盘模块、OLED显示屏。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐