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

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

3天内不再提示

i2c总线电路的上拉电阻选择技巧

GLeX_murata_eet 来源:互联网 作者:佚名 2017-11-06 17:34 次阅读

I2C(Inter-Intergrated Circuit)总线是微电子通信控制领域中常用的一种总线标准,具有接线少,控制方式简单,通信速率高等优点。

I2C总线的内部结构图如图1所示,I2C器件连接到总线输出级必须是集电极开路或漏极开路形式才能实现线“与”的逻辑功能。输出端未接上拉电阻的时候只能输出低电平,所示保证I2C总线正常工作输出端必须接上拉电阻。

在I2C电路中常见的上拉电阻是1K,1.5K,2.2K,3.3K,4.7K,5.1K,10K等等,但选哪一个阻值更合适?

图1 I2C总线内部结构

I2C总线上拉电阻阻值如何选?

I2C规范将低于VIL或低于0.3VDD的电压定义为逻辑低电平,同样将高于VIH或高于0.7VDD的电压定义为逻辑高电平,如图2所示。

图2 指定为逻辑高电平和逻辑低电平的电压电平

电源电压限制了可允许总线拉低的最小上拉电阻值,过强的上拉会阻止器件充分拉低拉线的电平,导致无法确保逻辑低电平能被检测到。在输出级V_OLmax=0.4V 时指定I_OL为3mA,允许总线电压拉低的最小上拉电阻公式:

V_DD与Rp的函数关系分别如图3所示。

图3 Rp的最小值是电压的函数

由于端口的输出的高电平是通过上拉电阻实现,线上的电平从低变到高时,电源通过上拉电阻对线上负载电容CL充电,这需要一定的时间,即上升时间,上拉电阻的最大值由总线容限负载决定,总线负载图如图4所示。

图4 总线负载结构图

总线电容主要由引脚、连接、PCB走线和导线等因素引起,总线电容与上拉电阻R具有一个RC时间常数,随着I2C通信速率的增加,该常数变得越发重要。通过电阻对电容进行充电的一般公式:

重新排列,

之后我们可计算电压上升至VIL的时间T1、上升至VHL的时间T2以及精确计算两个电平之间的时间TR,如图5所示。由于VIL与VHL都是有V_DD产生,因此该公式与电源电压无关,V_DD项已抵消。

图5 总线电平上升时间

求解,

在I2C标准模式下,100Kbps总线的负载最大容限小于等于400pF;快速模式,400Kbps总线的负载最大容限小于等于200pF,快速模式下I2C总线上升时间更快,总线上拉电阻要比标准模式小,设计时以快速模式50Pf~200pF为参考,由上面(6)式得最大Rp值与总线电容的关系如图6所示。

图6 符合快速模式I2C总线TRmax要求的Rp最大值是总线电容的函数

由上面的计算可得出上拉电阻RP可以取的范围是1.53K~7K @VDD = 5V,一般取5.1K ,综合到3.3V VDD低功耗设计中,通常选用4.7K牺牲速度换取电池使用时间,此阻值也是常规阻值。

关于I2C的上拉电阻,最好的方式是看官方给出的参考设计,如果走线长了或总线上有多从机,就相应把电阻改小一些,如若参考设计没有就在计算范围内选用一个常规阻值。实际的时候我们没有去测量总线电容的问题,只能在选件、走线的时候给予些许关注。

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

原文标题:I²C总线上拉电阻阻值如何选择?

文章出处:【微信号:murata-eetrend,微信公众号:murata-eetrend】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    i2c总线协议pdf

    ....................................................................... 3317.2 快速模式I2C 总线器件的开关上
    发表于 08-13 17:16

    I2C规范,I2C总线原理

    ....................................................................... 3317.2 快速模式I2C 总线器件的开关上
    发表于 04-09 18:34

    I2C信号一般需要外接上电阻,如果主控内部有电阻,是否可以省略外部

    I2C信号一般需要外接上电阻,如果主控内部有电阻,是否可以省略外部
    发表于 06-07 10:01

    浅谈I2C总线

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

    LTC4311 I2C逻辑缓冲器的典型低压应用电路

    LTC4311 I2C逻辑缓冲器的典型低压应用电路。利用LTC4311低压I2C / SMBus加速器,利用低功耗总线加速器提高I2C或SM
    发表于 06-05 09:06

    请问用TMS320C5515的GPIO口模拟I2C总线需要接外部电阻吗?

    请问用TMS320C5515的GPIO口模拟I2C总线需要接外部电阻吗?需要的话阻值为多少比
    发表于 10-28 09:37

    I2C总线:硬件实现细节

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

    I2C不迷茫--系列文章讲透I2C

    I2C设计数学:电容和电阻了解I 2 C及其随之而来的一些设计挑战,包括逻辑阈值,影响电容的因素以及最小和最大
    发表于 09-22 09:31

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

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

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

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

    I2C总线简析

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

    如何去实现一种I2C电阻的设计呢

    I2C电阻 在一些PCB的layout中,大家往往会看到在I2C通信的接口处,往往会接入一个4.7K的
    发表于 01-14 07:22

    I2C总线的原理是什么

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

    I2C总线的学习资料分享

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

    I2C总线电阻设计要点

    的,因为电路板会有寄生效应如寄生电容,它和电阻正好形成了串联RC电路,会有时间延迟,而这个延迟必须要小于电平低有效到高有效的时间,否则芯
    发表于 11-29 08:00