上下拉电阻有啥研究的

三炮儿每周二早七点

分享/更新一篇硬件开发学习笔记

学习分享以助能力增长♥经验交流以期跻身一流

目录

1. 上/下拉电阻的定义

2. 拉电流和灌电流

3. 上下拉电阻的应用场景

3.1 电平标准匹配

3.2 获取输出高电平能力

3.3 增加输出管脚的驱动能力

3.4 维持输入管脚为稳定态

3.5 低电平中断检测

3.6 增强电路抗干扰能力-终端匹配

4. 上下拉电阻选型

4.1 从功耗消耗的角度

4.2 从驱动能力的角度

4.3 从信号速率的角度

                        ✍

某日摸鱼水群时,看到一表情包,如下

三炮儿当时心想,就一破电阻有啥好研究的!?

有这时间,还不如研究下怎么才能撩到隔壁软件组刚来的漂亮妹子,

晚上下班等电梯偶遇妹子,听她接电话说了句:老公我这就下班,你等我。

三炮儿瞬间觉得晴天霹雳,果然软件女神不属于我,属于我的只会是软件甩来的锅;

为了以后把锅扔回去,啪啪砸软件脸上,我还是抽时间研究了会上下拉电阻。

对大家兴许有用。

1. 上/下拉电阻的定义

无论是上拉还是下拉电阻,本质都是电子元器件中的一个常用器件:电阻;

而上拉、下拉是大家为了突出某颗电阻的使用场景的叫法。

上拉电阻:信号通过电阻连接到一个固定的高电平VCC,在空闲状态时该信号被保持为VCC电平,该电阻被称为上拉电阻

下拉电阻:信号通过电阻连接到一个固定的低电平,在空闲状态时该信号被保持为GND电平,该电阻被称为下拉电阻

在数字电路中,上述的固定高电平、固定低电平分别被称作逻辑1、逻辑0

一句话理解:

上拉是将不确定的信号通过一电阻钳位在高电平(逻辑1)

下拉是将不确定的信号通过一电阻钳位在低电平(逻辑0)

如下图,R0为上拉电阻,R1为下拉电阻;

其阻值由具体的使用场景确定,一般10kΩ、4.7kΩ、2.2kΩ较为常见。

值得注意的是

当R0阻值达到上百K时,使信号线得到的负载电流很小,对负载充电会比较慢,被称作弱上拉

当下拉电阻阻值很大时,信号被下拉的速度比较缓慢,称作弱下拉

而当上下拉电阻很小时,信号线得到较大的电流,信号边沿变化速度快,被称作强上拉或强下拉。

一般认为,上拉是为了增大电流,下拉电阻则是用来吸收电流;这就需要看下另外的概念:拉电流和灌电流。

2. 拉电流和灌电流

拉电流source current和灌电流sink current

通常,灌电流(Source Current)和拉电流(sink current)都是针对IC器件的输出端口而言的,如MCU的输出管脚,在IC器件的规格书中一般可查到拉电流、灌电流的阈值范围,有的还可通过寄存器配置其大小,来改善端口的信号质量,改善或避免信号上、下冲。

拉电流:对于一个MCU输出端口,若电流流向端口外,称为“拉电流",是主动的;

拉电流:对于一个MCU输出端口,若电流流向端口内,称为“灌电流",是被动的;

在数字电路中,输出只有高、低(1、0)两种电平值

高电平输出时,一般是输出端对负载提供电流,该电流叫“拉电流”

低电平输出时,一般是输出端要吸收负载的电流,该吸收电流的“灌电流”

如下图,

PA0输出 0,点亮LED0 会亮,电流是由MCU外部流向 PA0的 ,即灌电流

PA1输出 1,点亮LED1 会亮,电流是由 PA1流向MCU外部的 ,即拉电流

3. 上下拉电阻的应用场景

上下拉电阻的叫法是突出电阻的使用场景,下面归纳了上下拉电阻的典型应用。

3.1 电平标准匹配—如TTL驱动CMOS

标准TTL的高电平最大输出值为2.4V,而CMOS的高电平输入最小值为3.5V,

若直接使用TTL驱动CMOS,当TTL高电平输出为最小值2.4V(<3.5V)时,CMOS无法识别为高电平,

这就需要在TTL的输出端加一个上拉电阻,将TTL的输出高电平钳位5V(>3.5V),使CMOS有效识别高电平。

TTL驱动CMOS时,TTL的低电平输出为最大值0.4V,小于CMOS的低电平输入最大值的1.5V,CMOS可有效识别TTL低电平。

这里对于上拉电阻R的选型是需要注意的,

R太大,会使TTL端的饱和压降增大,导致TTL输出的低电平很高,

R太大,会使TTL输出信号的上升沿变缓。

3.2 获取输出高电平能力—如OC和OD门

采用OC和OD门结构的电路本身无法输出高电平,在添加上拉电阻后能够输出高电平。

I2C是典型的OD结构,因此SDA和SCL信号上都需要加上拉电阻,不加上拉电阻,OC和OD是无法输出高电平的。

下图为IIC的OD结构拓扑,SCL和SDA信号线都需要上拉电阻,上拉电阻的大小需要根据实际的I2C速率和信号质量确定,常见的为4.7kΩ、2.2kΩ等。

3.3 增加输出管脚的驱动能力

有些芯片输出管脚本身并不是OC或OD门,

我们也会增加一个上拉或者下拉电阻,通过上拉或下拉来增加或减小驱动电流,

例如一个单片机的IO口内部有一个电阻为几十kΩ,输出电流低于mA级,

为增加高电平输出能力,可以添加一个上拉电阻,与内部上拉电阻形成并联提高驱动电流。

3.4 维持输入管脚为稳定态

3.5 低电平中断检测

在低电平中断触发电路设计中,通常在检测端会添加上拉电阻,当INT_n低电平到来时MCU_INT会变为低电平,触发MCU中断。

R1太大,MCU_INT的上升沿很缓,R1太小,有可能造成灌电流过大,导致MCU管脚烧坏。

3.6 增强电路抗干扰能力—终端匹配

在长线传输中,由于传输线的阻抗不连续会引起信号的反射,导致波形出现过冲、回沟、振铃等现象;

添加上拉/下拉电阻即终端匹配,能有效的抑制反射波干扰

终端匹配常规来说具有两种类型,并联端接和戴维南端接

①并联端接

在终端并联一个与传输线特征阻抗一致的电阻到VCC或GND,使信号能量反射回源端之前,在负载端会消除掉;

优点

  • 适用于多个负载
  • 只需要一个电阻并且阻值容易选取

缺点

  • 增加了直流功耗
  • 并联端接是上拉到电源或下拉到地,会使低电平升高或高电平降低,减小了噪声容限

②戴维南端接

戴维南端接也称为分压器端接,采用上拉电阻和下拉电阻同时接在终端上,降低了终端对源端驱动能力的要求

优点

  • 适用于多个负载
  • 适用于SSTL/HSTL电平上拉或下拉输出阻抗很好平衡的情况

缺点

  • 直流功耗增加
  • 需要两个器件
  • 端接电阻上拉到电源或下拉到地,会使得低电平升高或高电平降低
  • 电阻值较难选择,电阻值取值小会使低电平升高,高电平降低更加恶劣;电阻值取大有可能造成不能完全匹配,使反射增大,可以通过仿真来确定

常见的阻抗匹配方式还有串联端接AC并联端接二极管并联端接

③串联端接

最常用的一种端接方式,发送端的输出阻抗比较小,在电路上直接串联一个电阻(通常22R或33R),

使得远端输出阻抗RD加上串联电阻RT的总阻抗等于传输线阻抗Z0,保证阻抗的连续性,减小信号的反射。

优点

  • 只需要一个电阻,
  • 没有多余的直流功耗
  • 消除驱动端的二次反射
  • 不受接收端负载变化的影响

缺点

  • 接收端的一次反射仍然存在
  • 信号边沿会有一些变化
  • 电阻需要靠近驱动端放置,不适合双向传输信号
  • 在线上传输的电压是驱动电压的一半,不适合菊花链型的多负载结构

如果串联过小,则依然会有过冲存在;

如果串联过大,则接收端信号会过缓甚至会有台阶。

④AC并联端接

AC并联端接是并联端接的升级,就是在并联到地的电阻下面再增加一颗电容。

这样既能够和并联端接一样减小反射,同时电容的存在隔离了直流,减小了直流功耗。

当然缺点也很明显,RC电路的时间常数会影响信号的上升时间,在高速电路使用中要仔细计算

优点

  • 适合于多个负载
  • 无直流功耗增加

缺点

  • 需要二个器件
  • 增加了终端容性负载,增加了RC电路造成的延时
  • 不适合周期信号

⑤二极管并联端接

又叫肖特基并联端接,通常应用在器件内部;很多器件自带有输入保护二极管

优点

  • 能有效减小信号过冲和下冲,

缺点

  • 并不能消除反射
  • 二极管的开关速度会限制响应时间,不大适合高速系统

在实际的电路设计中,具体使用哪种端接,需要具体问题具体分析;

需要在信号质量的提高(稳定性/可靠性)与产品成本控制之间作平衡,

但作为靠谱的硬件工程师最好预留端接方案,

避免因信号质量问题导致改版。

4. 上下拉电阻选型

从上文的介绍可以看出来,电阻拉不拉很重要,上拉还是下拉以及拉大少也至关重要,

上下拉电阻阻值大小的选取一般需要从以下几个方面综合考虑

4.1 从功耗消耗的角度

上拉电阻和电源相连接,下拉电阻和GND相连接,

在确定电阻阻值时,电阻本身的功率消耗不容忽略。

在按键电路中,电阻取10kΩ能满足需求,取20kΩ也能满足;

但20kΩ时电阻功率消耗更低,是更优值。

4.2 从驱动能力的角度

驱动能力的大小和提供的电流有关系,电阻过大,无法信号网络提供较大的电流提供较大的电流;电阻过小,又可能会因过流损坏器件。

如下图,LED0正常工作时需要5~10mA电流,如果电阻取值太大为10kΩ,PA1为0时LED0灯无法点亮(VCC=3.3V)

4.3 从信号速率的角度

这其实也是考虑驱动能力的一种角度,之所以单独拿出来是因为在I2C总线中上拉电阻的选型比较典型。

上拉电阻过小,总线上电流增大,端口输出低电平增大。

上拉电阻过大,上升沿时间增大,方波可能会变成三角波

I2C的上拉电阻经验上常用2.2kΩ、4.7K等阻值,

但了解上拉电阻阻值的理论计算方式也是很有必要的,

其计算公式如下:

tr :上升沿时间 tr 、 Cb:负载电容 、0.8473:标准上升沿时间

Vdd :电源电压、Vol:端口最大输出电压, 与端口的最大电流 Iol 有关

一般来说

电源电压限制了上拉电阻的最小值

负载电容(总线电容)限制了上拉电阻的最大值

三炮儿才疏学浅,对于上下拉电阻的认识也就这么多

大家觉得上下拉电阻还有哪些方面需要研究

请洒潘江各倾陆海云尔

END

这里是软磨硬泡公众号,号主三炮儿的硬件开发学习笔记、经验分享

学习分享以助能力增长,经验交流以期跻身一流

同名微信公众号:软磨硬泡

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值