尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
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 由低变高产生上升沿表示通信结束。
RELATED

相关推荐

Jira替代方案选型指南:Gitee等国产研发管理工具对比与落地实践

Jira替代方案选型指南:Gitee等国产研发管理工具对比与落地实践

1. 研发管理工具选型的底层逻辑与市场格局 1.1 为什么“替代 Jira”这件事突然变得紧迫 做研发管理的朋友这两年应该都有一个明显感受:团队里讨论“要不要换掉 Jira”的频率越来越高。原因其实不复杂,我把它拆成三层来看。 第一层是 成本与合规 。Ji…

📅 2026/9/24 18:50:35
formily-react ObjectField 组件完全指南:动态对象表单的 ViewModel 桥接与属性增删实战

formily-react ObjectField 组件完全指南:动态对象表单的 ViewModel 桥接与属性增删实战

前端UI组件 【免费下载链接】formily 📱🚀 🧩 Cross Device & High Performance Normal Form/Dynamic(JSON Schema) Form/Form Builder -- Support React/React Native/Vue 2/Vue 3 项目地址: https://gitcode.com/gh_mirrors…

📅 2026/9/24 18:50:35
iOS开发工具选型指南:Xcode、AppCode等五款工具对比与实战

iOS开发工具选型指南:Xcode、AppCode等五款工具对比与实战

1. iOS开发工具选型的底层逻辑 1.1 为什么工具选择会直接影响开发效率 干了十来年iOS,我越来越觉得,工具选型这件事被很多新手严重低估了。大多数人刚入门的时候,脑子里只有一个概念——写iOS就得用Xcode,其他都是花里胡哨。但实…

📅 2026/9/24 18:50:35
MORE NEWS

更多资讯

📰

MySQL基础(二):增删改查、索引优化与锁表排查实战

1. 写在前面的几句唠叨我估计点进这篇文章的兄弟,多半是刚把 MySQL 装上、能连上服务、也会敲几条最简单的 SELECT 了。基础(一)里我们聊过怎么下载安装、怎么启动服务、怎么建库建表,那期的评论里问得最多的就是“装好了然后呢”…

📰

ClickHouse 高性能分析实战指南:表引擎选型、查询优化与数据管道设计(基于 AAS cc-skill-clickhouse-io)

ClickHouse 高性能分析实战指南:表引擎选型、查询优化与数据管道设计(基于 AAS cc-skill-clickhouse-io) 【免费下载链接】agentic-awesome-skills AAS Core is the local, agent-first control plane for complete catalog discovery, agent…

📰

深入解析Mach-O __common节:C语言全局变量与链接器合并机制

1. 从链接器视角重新认识 __common 节如果你跟我一样,平时喜欢把 Mach-O 文件拆开看,会发现大部分精力都花在__TEXT、__DATA这些常规段上,__common节总是一笔带过。但真正踩过坑的人都知道,__common节恰恰是理解“C 语言全局变量到…

📰

栅格数据组织、转换与统计导出Excel的完整实践指南

从去年年底开始,我一直在处理一套覆盖全省的多时相土地利用栅格数据。前两篇写栅格基础操作时,评论区问得最多的不是“怎么做重分类”,而是“那么多景影像到底怎么管”“分析完怎么把数导出来给不会GIS的同事”。说实话,这些问题才…

📰

RS485通讯从原理到实战:参数、外围电路与接线排查全解析

1. 认识485之前,先聊聊它到底解决了什么问题做嵌入式开发和工业控制的人,几乎都绕不开485通讯。不管是PLC和变频器通信、电表抄表、传感器数据采集,还是STM32控制伺服电机,485都是出场率极高的物理层接口。我在实际项目里用过不少…

📰

Windows上配置codex辅助JS逆向:从安装到实战的完整指南

这几天我一直在 Windows 上折腾 codex,拿它来辅助 JS 逆向。刚开始装的时候,说实话挺崩溃的,光一个登录认证就卡了半天,后面又遇到配置切换后 endpoint 连接失败的怪问题。但把所有坑填平之后,回头再看,这套…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬