一、上拉电阻
上拉就是将不确定的信号通过一个电阻钳位在高电平,电阻同时起限流作用。上拉电阻可以提高电路驱动能力。
那么,为什么会有不确定的信号呢?
举个例子:
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Ω
三、典型场景阻值怎么选
小结口诀
“浮空必上拉,开漏要上拉,长线强上拉,低功耗大阻值。”
点击蓝字
关注我