全面解析 I2C 总线协议:特征、传输与操作

出处:网络整理 发布于:2026-05-14 14:33:56

  在电子系统中,I2C(Inter - Integrated Circuit)总线协议是一种极为重要的通信协议,它为设备间的数据交互提供了高效、可靠的解决方案。下面将对 I2C 总线协议进行详细的剖析。
  I2C 总线物理拓扑结构
  I2C 总线在物理连接方面相对简单,主要由 SDA(串行数据线)、SCL(串行时钟线)以及上拉电阻构成。其通信原理是通过对 SCL 和 SDA 线高低电平时序的精准控制,来产生 I2C 总线协议所需的信号,从而实现数据的传递。在总线处于空闲状态时,这两根线通常会被所接的上拉电阻拉高,保持高电平。从电子电路的角度来看,上拉电阻的作用至关重要,它可以确保总线在空闲时处于稳定的高电平状态,避免信号的干扰和误判。

  I2C 总线特征
  I2C 总线上的每个设备都具备主设备或从设备的双重角色,并且每个设备都有一个的地址,该地址可以从 I2C 器件的数据手册中获取。在实际应用中,通常将带有 I2C 总线接口的 CPU 模块作为主设备,而挂接在总线上的其他设备则作为从设备。主从设备之间通过这个地址来确定通信对象。
  I2C 总线上可挂接的设备数量受到总线电容 400pF 的限制。如果挂接的是相同型号的器件,还会受到器件地址位的限制。在数据传输速率方面,I2C 总线在标准模式下可达 100kbit/s,快速模式下可达 400kbit/s,高速模式下甚至可达 3.4Mbit/s。其传输速率一般通过 I2C 总线接口可编程时钟来调整,同时也与所接的上拉电阻的阻值密切相关。上拉电阻阻值的大小会影响总线信号的上升和下降时间,进而影响数据传输的速率和稳定性。I2C 总线上的主设备与从设备之间以字节(8 位)为单位进行双向的数据传输。
  I2C 总线协议
  I2C 协议规定,总线上数据的传输必须以一个起始信号作为开始条件,以一个结束信号作为传输的停止条件,且起始和结束信号总是由主设备产生。当总线处于空闲状态时,SCL 和 SDA 都保持高电平。当 SCL 为高电平而 SDA 由高到低跳变时,表示产生一个起始条件;当 SCL 为高而 SDA 由低到高跳变时,表示产生一个停止条件。在起始条件产生后,总线处于忙状态,由本次数据传输的主从设备独占,其他 I2C 器件无法访问总线;而在停止条件产生后,本次数据传输的主从设备将释放总线,总线再次处于空闲状态。

 

  数据传输以字节为单位。主设备在 SCL 线上产生每个时钟脉冲的过程中,会在 SDA 线上传输一个数据位。当一个字节按数据位从高位到低位的顺序传输完后,紧接着从设备将拉低 SDA 线,回传给主设备一个应答位,此时才认为一个字节真正被传输完成。不过,并非所有的字节传输都必须有一个应答位,例如当从设备不能再接收主设备发送的数据时,从设备将回传一个否定应答位。

 

  I2C 总线上的每个设备都对应一个的地址,主从设备之间的数据传输是建立在地址的基础上。主设备在传输有效数据之前要先指定从设备的地址,地址指定的过程和数据传输的过程类似。大多数从设备的地址是 7 位的,协议规定再给地址添加一个位用来表示接下来数据传输的方向,0 表示主设备向从设备写数据,1 表示主设备向从设备读数据。

 

  I2C 总线操作
  对 I2C 总线的操作实际上就是主从设备之间的读写操作,大致可分为以下三种情况:
  主设备往从设备中写数据:主设备首先发送起始信号,然后发送从设备的地址和写操作标志,接着依次发送要写入的数据,发送停止信号。

  

  主设备从从设备中读数据:主设备发送起始信号和从设备地址及读操作标志,从设备返回数据,主设备接收数据后发送停止信号。
  主设备往从设备中写数据,然后重启起始条件,紧接着从从设备中读取数据;或者主设备从从设备中读数据,然后重启起始条件,紧接着主设备往从设备中写数据:这种操作在单个主设备系统中,重复开启起始条件机制要比用 STOP 终止传输后又再次开启总线更有效率。

  

关键词:I2C 总线  

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:
技术客服:

0571-85317607

网站客服电话

0571-85317606

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!