I2C总线原理及总线信号的实现

IIC通信基础知识点 2、主机收到最后一个数据后,向从机发送结束传送的信号(对从机发送非应答,过程中会将SDA拉低),然后从机释放SDA线(防止SDA拉低以后主机无法将其拉高),从而允许主机产生终止信号 (IIC总线上可以挂多个器件,每个器件有唯一的地址,从而标识通信目标(从机通过对比自己的地址与主机发送的是否相符,以确定自己是否为发射的对象)规定:在起始信号后必须传送一个从机的地址,从机地址占7位,第八位是数据的传送方向位(0表示主机发送数据,1为主机接收数据)IIC 同步串行方式通信(一条时钟线SCL,一条数据线SDA). 阅读详情

目录

1. I2C总线简介

1.1 I2C电路规范

1.2 I2C总线的通信过程

1.3 I2C的寻址方式

1.4 起始信号与停止信号

1.5  字节传送与应答

1.6 主机向从机发数据

1.7 从机向主机发数据

1.8 发送应答与接收应答

 1.9 同步信号

2. 典型I2C时序

2.1 发送一帧数据(主机向从机发数据)

2.2 接收一帧数据(从机向主机发数据)

2.3  先发送再接收数据帧(复合格式)


1. I2C总线简介

I2C总线(Inter IC BUS)是由Philips公司开发的一种串行,同步、半双工总线;
通用的I2C总线,可以使各种设备的通信标准统一,对于厂家来说,使用成熟的方案可以缩短芯片设计周期、提高稳定性,对于应用者来说,使用通用的通信协议可以避免学习各种各样的自定义协议,降低了学习和应用的难度;

I2C总线是一种多主机总线,连接IIC总线上的器件分为主机和从机,主机有权发起和结束一次通信,而从机只能被主机呼叫;当总线上有多个主机同时启用总线时,I2C也具备冲突检测和仲裁的功能来防止错误产生;每个连接到IIC总线上的器件都有一个唯一的地址(7bit),且每个器件都可以作为主机也可以作为从机(同一时刻只能有一个主机),总线上的器件增加和删除不影响其他器件正常工作;I2C总线在通信时总线上发送数据的器件为发送器,接收数据的器件为接收器;主要用于近距离(抗干扰能力稍弱),低速的芯片之间的通信(传输视频,带宽要求比较高的场合也是不行的);I2C总线有两根双向的信号线,时钟线SCL(Serial Clock)用于通信双方时钟的同步、(I2C可以发送任意多个字节,因为收发双方用的是同一个时间基准)数据线SDA(Serial Data)用于收发数据,IIC总线硬件结构简单,成本较低,因此在各个领域得到了广泛的应用;

1.1 I2C电路规范

所有I2C设备的SCL连在一起,SDA连在一起
设备的SCL和SDA均要配置成开漏输出模式
SCL和SDA各添加一个上拉电阻,阻值一般为4.7KΩ左右
开漏输出和上拉电阻的共同作用实现了“线与”的功能,此设计主要是为了解决多机通信互相干扰的问题

1.2 I2C总线的通信过程

一: 主机发送起始信号启用总线

二:主机发送一个字节数据指明从机地址和后续字节的传送方向;

往总线上发一个字节数据:高7位地址,低一位为0主机向从机发数据;为1从机向主机发数据;

三:被寻址的从机发送应答信号回应主机;

应答:告诉主机“我存在,我听见了”

四:发送器发送一个字节数据

最低位为0发送器为主机,接收器为从机;

最低位为1发送器为从机,接收器为主机;

发送过程中不允许改变通信方向;

五:接收器发送应答信号回应发送器

0为应答1为非应答

. . . 循环步骤4和5

n:通信完成后主机发

I2C应答信号(ACK/NACK)硬件行为全面讲解 深入剖析I2C通信中ACK与NACK的硬件电平变化与时序逻辑,结合实际场景讲解i2c通信的详细讲解,帮助理解主从设备间的响应交互过程。 阅读详情

相关推荐

通信协议 —— I2C不再模糊

在传输数据时,主设备会按照一定的节奏,也就是SCL时钟信号的节拍,把数据一位一位地放在SDA线上传给从设备,从设备则在每个时钟节拍去读取SDA线上的数据,就像一个人按照一定的节奏说话,另一个人按照这个节奏听和理解。总线上的每个从设备(最多可达128或112个)都有一个自己的“名字”,也就是从机地址,就像每个人都有自己的名字一样,主设备想要和某个从设备交流,就得先叫出这个从设备的名字,然后从设备听到自己的名字才会回应。主设备在发起通信时,首先要发送从设备的地址,以便在总线上唯一标识要与之通信的从设备。

改变自己现在能改变的,珍惜自己现在所拥有的 4472

【FPGA——协议篇】:I2C总线协议详解+verilog源码

 1.what is I2C bus?    ① 2条双向串行线,一条数据线SDA,一条时钟线SCL。    ② SDA传输数据是大端传输,每次传输8bit,即一字节。    ③ 支持多主控(multimastering),任何时间点只能有一个主控。    ④ 总线上每个设备都有自己的一个addr,共7个bit,广播地址全0;系统中可能有多个同种芯片,为此addr分为固定部分和可编程部份,...

Lily_9的博客 1万+

I2C总线原理及应用实例

I2C(Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的

ncdawen的专栏 2755

eNSP-Pro配置又丢了?手把手教你用导出功能防患于未然

本文详细介绍了eNSP-Pro配置防丢失的全套方案,包括运行时内存、虚拟存储设备和宿主机文件系统的配置存储机制,以及多维度备份策略和特殊场景下的恢复技巧。通过优化保存流程、自动化定时导出和版本化管理,帮助网络工程师有效防止配置丢失,提升工作效率。

weixin_42665725的博客 238

交通流预测爬坑记(一):交通流数据集,原始数据

常用的交通流数据集,持续更新~~

K_first的博客 4万+

高效敏感词检测API平台对比与选型指南

本文为开发者提供了高效敏感词检测API平台的选型指南。文章对比了专业API平台、头部云厂商、新兴AI服务商及开源方案,从检测能力、集成易用性、成本、稳定性及扩展性五大维度进行分析,并给出实战选型建议,帮助团队根据业务场景快速选择最合适的敏感词检测服务。

weixin_29325955的博客 340

2025 年国人友好神刊盘点:20 本审稿快、分区高的 SCI 期刊,速抢发文先机!

科睿唯安最新发布的 2024 年影响因子(2025 年公布)显示,多本 TOP 期刊影响因子迎来大幅上涨!尤其是对国人友好的期刊,因审稿效率高、版面费亲民、国人发文占比超 40%,成为科研人员投稿热门。本文精选 20 本潜力神刊,涵盖Cell 子刊、顶流期刊、黑马期刊、性价比之王及新晋分区 TOP,附完整的影响因子、中科院分区、审稿周期、收稿方向攻略,助你抢占发文先机!

good_rrrrr的博客 5551

【零基础】手把手教你使用Docker部署Springboot项目(详细版)

还不会使用Docker部署Springboot项目的小伙伴,不妨进来看看呗,希望文中内容对你有所帮助!

fengprogrammer的博客 2万+

红米K70至尊版修复“nv损坏”主板电阻图示 mtk芯片工程固件刷写与步骤说明

💝💝💝红米K70至尊版 机型代码:rothko,搭载天玑9300+旗舰芯片.后置5000万像素索尼IMX906高动态OIS主摄,800万像素超广角镜头,200万像素微距镜头,前置2000万像素摄像头,也适用于以下型号的小米机型:2407FPN8EG,2407FPN8ER,XIG06,A402XM,2407FRK8EC。 💝💝💝通过博文了解 1💝💝💝-----此机型工程固件的资源刷写注意事项 2💝💝💝-----此机型刷写工程固件预览界面 3💝💝💝------红米K

小马哥的专栏 1456

高分SCI讨论部分必学AI写作套路!仅需五步结合GPT‑5辅助,让你的SCI论文更有说服力(附实用AI提示词)

对于很多写SCI论文的学术人来说,其实“讨论部分”才是最致命的,网上虽然有大量的写作技巧和模板提供参考,但往往让人眼花缭乱,还是不知道如何下手。即便是下手了,也很难兼顾学术性与可读性,实际上讨论部分的难点并不在于写,而在于你能研究结果说清楚。今天七哥教你借助GPT-5,用五步法结合精心设计的AI提示词,让你能在科学逻辑与语言表达上一次性解决“讨论部分”的结构、内容、润色和翻译问题,轻松写出符合高分SCI期刊要求的讨论段落。

智能AI让学术科研更容易 1329

微信小程序云开发 - 实现商家转账到零钱(微信企业付款到零钱) V3功能流程及完整实例代码,过微信云开发的云函数实现企业付款到零钱(提供详细示例源码纯云函数实现,证书、密钥、签名等各种常见问题解决方案

企业付款到零钱(微信小程序提现功能,提现到零钱)微信小程序-云函数实现微信企业付款到零钱功能,实现微信商户号中的企业付款到零钱的功能,微信小程序+云开发+商家转账至零钱+微信小程序用户提现,使用云开发环境的云函数实现微信小程序的支付功能,微信小程序实现微信企业付款到零钱功能的流程,V3 V2基于微信云开发的商家转账至零钱,小程序云函数企业付款到零钱功能实现,云开发实现微信商户支付企业付款到零钱功能,不用服务器纯云函数实现,详细示例代码demo教程,API证书错误,转账不到账怎么办,密钥生成有误,转账失败,有

🏆 前端领域优质创作者 1万+

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

上一篇: 51单片机——DS1302时钟
下一篇: AT24C02存储与读取数据
记忆&碎片
博客等级 码龄5年 229粉丝 42原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

记忆&碎片

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值