I2C总线的工作原理以及优缺点解析

主设备将与其通信的从设备的地址发送给与其连接的每个从设备。然后,每个从设备将从主设备发送的地址与其自己的地址进行比较。如果地址匹配,则将低电压ACK位发送回主机。如果地址不匹配,则从器件不执行任何操作,SDA线保持高电平。

I2C总线的工作原理以及优缺点解析

读/写位

地址帧在末尾包括一个位,用于通知从设备,主设备是想要向其写入数据还是从主设备接收数据。如果主设备想要向从设备发送数据,则读/写位是低电平。如果主设备向从设备请求数据,则该位是高电平。

数据框架

在主设备检测到来自从设备的ACK位之后,准备好发送第一个数据帧。

数据帧始终为8位长,并以最高有效位先发送。紧接着每个数据帧的ACK / NACK位以验证帧已被成功接收。在发送下一个数据帧之前,主机或从机必须接收ACK位(取决于发送数据的人)。

在发送了所有数据帧之后,主设备可以向从设备发送停止条件以停止传输。停止条件是SCL线上从低电平到高电平转换后,SDA线上从低电平变为高电平,SCL线保持高电平。

I2C数据传输步骤

1.主机向每一个连接的从设备发送数据,然后将SDA信号从高切换到低,之后在将SCL从高切换到低电平。

2.主设备向每个从设备发送它想要与之通信的从设备的7或10位地址,以及读/写位:

I2C总线的工作原理以及优缺点解析

3.每个从设备将主设备发送的地址与其自己的地址进行比较。如果地址匹配,则从器件通过将SDA线拉低一位来返回ACK位。如果主设备的地址与从设备的地址不匹配,则从设备将SDA线保持为高电平。

I2C总线的工作原理以及优缺点解析

4.主设备发送或接收数据帧:

I2C总线的工作原理以及优缺点解析

5.在传输了每个数据帧之后,接收设备将另一个ACK位返回给发送方以确认成功接收到该帧:

I2C总线的工作原理以及优缺点解析

6.要停止数据传输,主机通过在将SDA切换为高电平之前切换SCL为高电平来向从机发送停止条件:

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查