0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

聊聊I2C总线上拉电阻

电子电路设计 来源:电子电路设计 作者:电子电路设计 2023-07-14 12:49 次阅读

I2C总线上的上拉电阻的解析

首先我们来聊聊,为啥I2C总线的SCL,SDA需要接上拉电阻?这个电阻有啥作用?选多大的电阻合适?

wKgZomSw0GqARMDxAACPCcEFQ8M805.png

1)上拉电阻的作用

我们看I2C的内部框架可以知道,I2C是开漏输出的,I2C总线协议支持多主多从,若不是开漏输出的话,可能会出现别的问题,比如若使用推挽输出,会出现主设备之间短路的情况,所以一般总线会用开漏输出。开漏输出的话,若想实现输出高电平,就必须接上拉电阻来实现,通过上拉电阻接到电源,可实现"线与"功能,且总线空闲时,SCL,SDA这两条线可以高电平。电路大概如下:

2)阻值的选择

我们都知道一般IO口的驱动能力一般在2mA~4mA左右,若阻值太小,电源VCC灌入端口电流较大,功耗会较大,导致端口输出的低电平值增大;而实际I2C协议规定,端口输出的低电平不能大于0.4V。若VCC=3.3V,灌入电流约3mA左右时,上拉电阻要选择≥1KΩ的电阻。但是阻值不能选太大,若电阻过大,可能导致RC延时增大,波形会偏离方波,甚至会偏向正弦波,数据读写可能会不正确,且会影响读写的速度。一般上拉电阻选用1.5K~4.7K。

3)I2C总线负载电容

I2C总线协议规定负载电容不能超过400pF;当I2C总线上器件增多时,总线的负载电容也会越来越大,,当总线的负载电容超过400pf时,可能会出现工作异常。

I2C总线工作的基本原理:当总线空闲时两根线均为高电平,假设主设备B需要启动I2C,它需要在SCL为高电平时,将SDA由高转低时作为启动信号,主设备B拉高SDA后需要检查下SDA电平,因线与,可能有其他设备拉低SDA,说明有其他设备抢占总线比它早,主设备B只能放弃使用总线,若SDA为高电平,说明主设备B可以使用总线,可以将SDA拉低来进行通信

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 上拉电阻
    +关注

    关注

    5

    文章

    346

    浏览量

    30259
  • I2C总线
    +关注

    关注

    8

    文章

    357

    浏览量

    60409
  • SDA
    SDA
    +关注

    关注

    0

    文章

    122

    浏览量

    27556
  • SCL
    SCL
    +关注

    关注

    1

    文章

    239

    浏览量

    16884
  • 负载电容
    +关注

    关注

    0

    文章

    128

    浏览量

    10276
收藏 人收藏

    评论

    相关推荐

    i2c总线协议pdf

    ................................................................... 3016.1 标准模式I2C 总线器件电阻Rp 和RS 的最大和最小值
    发表于 08-13 17:16

    I2C规范,I2C总线原理

    ................................................................... 3016.1 标准模式I2C 总线器件电阻Rp 和RS 的最大和最小值
    发表于 04-09 18:34

    浅谈I2C总线

    一个上电阻接到正电源,因此在不使用的时候扔保持高电平。使用 I2C 总线进行通信的设备驱动这两根线变为低电平,在不使用的时候就让它们保持高电平。每个连到
    发表于 11-30 11:50

    I2C 总线协议图解

    接口可编程时钟来实现传输速率的调整,同时也跟所接的上电阻的阻值有关。 I2C总线上的主设备与从设备之间以字节(8位)为单位进行双向的数据传输。3I
    发表于 08-01 16:12

    I2C IP核Core I2C怎么样?

    器件都有一个唯一的识别地址,而且都可以作为一个发送器或接收器。当连接在I2C总线上的多个主机器件同时传输数据时,通过仲裁来避免冲突。SDA和SCL都是双向线路,通过一个电流源或上电阻
    发表于 08-05 06:33

    I2C总线协议的基础知识

    物理层的连接可以说是非常简单,这也是它最大的优势,原理就是通过控制SDA和SCL线的高低电平时序,来产生I2C总线协议所需要的信号进行数据传输。在总线处于空闲状态时SCL和SDA被上
    发表于 08-25 11:16

    I2C总线:硬件实现细节

    慢于从高到低的过渡,从而产生经典的I2C“锯齿”波形:这两个示波器捕获显示了具有1kΩ上电阻和最小电容(总线上只有两个器件,且PCB走线短)的I2
    发表于 09-20 08:37

    I2C总线是什么

    I2C总线I2C总线(读做“IC”或“I2C
    发表于 07-21 09:03

    【原创分享】你知道I2C为什么要接上吗?

    查找从机。因为I2C 通信IO口输出结构都是配置为漏极开路或集电极开路输出。所以时钟线和数据线必须外部都接上电阻,当一对多输出的时候,很多GPIO口会连接在同一根线上,可能会存在某个
    发表于 09-07 14:22

    开发板I2C总线上为什么没有上电阻

    开发板I2C连接到RTC(RX8010)芯片,I2C总线上没有接上电阻,LS1012A手册上说它的I2
    发表于 01-05 06:28

    单片机I2C时序相关资料推荐

    单片机 I2C 时序介绍在硬件上,I2C 总线是由时钟总线 SCL 和数据总线 SDA 两条线构成,连接到
    发表于 01-07 06:19

    I2C总线简析

    在硬件上,I2C 总线是由时钟总线 SCL 和数据总线 SDA 两条线构成,连接到总线上的所有器件的 SCL 都连到一起,所有 SDA 都连
    发表于 01-07 06:03

    I2C总线的原理是什么

    SDA,另外一根时钟线SCL,接上电阻总线空闲为高电平。只要有低电平,总线就会被低电平。主机通过I
    发表于 01-18 07:36

    I2C总线的学习资料分享

    数据线,为OD门,与其它任意数量的OD与OC门成\线与\关系。I2C总线通过上电阻接正电源。当总线空闲时,两根线均为高电平(SDL=1;S
    发表于 01-19 08:05

    I2C总线上电阻设计要点

    都是可以的。虽然上电阻阻值大体选好了,但最好要实测小I2C总线波形是否正常等,因为假设了一些东西比如CL=50pf,实际参数不一定是这样的。至于I
    发表于 11-29 08:00