ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

I2C 通信协议详解:时序、EEPROM 读写流程与实战总结

I2C 通信协议详解:时序、EEPROM 读写流程与实战总结 低速版本(免费)100hz高速版本ghz以上的速率正常高速设备大概在400hz串行同步半双工通信总线方式有主机 从机数据线时钟线要接上拉电阻4.7k----10k欧姆之间i2c时序scl高电平进行采样 sda数据线不能改变电平1.起始位起始信号scl时钟信号线为高电平时SDA数据信号线由高变低出现下降沿2.数据位e2prom芯片我们使用的设备地址是2k的这个写入流程时序1.主机发送起始信号设备地址写位信号2.主机等待丛集回复ACK应答3.主机发送寄存器地址等待丛集应答4.主机向从机发送数据等待从机回应5.主机发送停止信号读时序1.主机发送起始信号设备地址写位。等待丛机应答2.主机发送寄存器地址等待丛机回应3.主机从新发送起始信号设备地址读位等待丛机ack地址4.主机接收丛机数据主机回复ack5.当主机接收完最后一个字节数据项丛机回复NO ACK应答6.主机发送停止信号1. 总结 I2C 工作流程I2C 是一种串行同步半双工通信总线通过 SCL 时钟线和 SDA 数据线实现主机与从机之间的数据交互。通信过程以起始信号开始主机依次发送设备地址、寄存器地址和数据从机通过 ACK 应答确认接收最后以停止信号结束。读操作则在写地址后重新发起起始信号并切换为读位主机接收数据后回复 ACK最后一个字节回复 NACK 并发送停止信号。2. 应用场景I2C 总线广泛应用于嵌入式系统中常见场景包括EEPROM 存储如本文章节提到的 E2PROM 芯片用于保存配置参数和少量数据。传感器采集连接温湿度、气压、加速度等传感器读取环境数据。显示屏驱动驱动 OLED、LCD 等小尺寸屏幕减少引脚占用。时钟芯片与 RTC 实时时钟芯片通信获取或设置时间。3. 什么是 I2CI2CInter-Integrated Circuit集成电路间总线是一种由飞利浦公司开发的串行通信总线用于在微控制器与外围设备之间传输数据。它采用两根线完成通信SCL串行时钟线负责同步时钟信号SDA串行数据线负责传输数据。I2C 属于同步、半双工通信方式支持一主多从或多主多从的总线结构每个从设备都有唯一的设备地址主机通过地址寻址来访问指定设备。其优点是引脚占用少、连接简单适合短距离、低速率的设备通信。4. 描述 I2C 时序I2C 时序以起始信号开始以停止信号结束整个过程由 SCL 时钟线同步。具体时序如下起始信号SCL 为高电平时SDA 由高变低产生下降沿表示通信开始。数据位传输SCL 高电平期间 SDA 数据保持稳定SCL 低电平期间 SDA 允许变化每个时钟周期传输 1 位数据高位在前。ACK 应答每传输完 8 位数据后接收方在第 9 个时钟周期将 SDA 拉低表示应答确认。停止信号SCL 为高电平时SDA 由低变高产生上升沿表示通信结束。
返回列表