上拉电阻的原理及阻值确定

一、上拉电阻

上拉就是将不确定的信号通过一个电阻钳位在高电平,电阻同时起限流作用。上拉电阻可以提高电路驱动能力。

那么,为什么会有不确定的信号呢?

举个例子:

MCU 的 GPIO 在上电复位后往往默认为 浮空输入(高阻态)。

如果外部没有有效驱动源,引脚就像“天线”,容易耦合噪声 → 电平在 0/1 之间随机跳动。

长走线、连接器、按键开路、开漏/集电极开路输出等都会使线路呈现高阻态。

上拉电阻如何“确定”信号?

硬件做法:在信号线与 VCC 之间接一个电阻 R。

无外部驱动时 → R 提供微弱电流 → 将节点拉向 VCC(逻辑 1)。

外部器件需要发 0 时 → 它只需把线拉到 GND,R 限流即可

二、阻值如何确定?

阻值选择需平衡信号速度、功耗、驱动能力 三大因素,遵循以下计算逻辑:

1. 最小阻值:由驱动端的灌电流能力决定

VOL:输出低电平电压(通常 ≤0.4V)

IOLIOL:驱动端最大允许灌电流(查芯片手册)

示例:

VCC=5VVCC=5V, VOL=0.4V VOL=0.4V, IOL=20mA IOL=20mA(典型MCU GPIO)

→ 实际需 ≥ 230Ω(否则烧毁IO口!)

2. 最大阻值:由信号上升时间和总线电容决定

trisetrise:信号允许的最大上升时间(由通信速率决定)

Cbus:总线总电容(导线电容 + 器件输入电容)

示例(I²C总线):

速率 100kHz → 要求 trise<1 μstrise<1 μs

Cbus=200 pF,Cbus=200 pF(2个器件 + PCB走线)

→ 实际需 ≤ 2.2kΩ

三、典型场景阻值怎么选

小结口诀

“浮空必上拉,开漏要上拉,长线强上拉,低功耗大阻值。”

点击蓝字

关注我