小信号,怎样控制另一条电流?|引脚电路 05

封面为 AI 辅助概念插画;电路工作过程以正文动画为准。

课程插图

GPIO 能给出控制信号,但不适合直接承担所有负载电流。常见解决办法是在外部加晶体管。本课先看 NPN 三极管作为低侧开关的工作思路。

GIF 是简化 NPN 开关模型,非芯片仿真、非硬件实测。只讨论低压直流和电阻性负载,暂不加入电感;动画把控制与电流变化放慢。示意数值不是完整选型方案。

控制支路与负载支路

GPIO经基极电阻控制NPN,另一条支路为负载供电

典型连接是:负载上端接正电源,下端接集电极 C;发射极 E 接地;GPIO 通过基极电阻连接基极 B。非隔离接法中,控制端与发射极需要明确的共同参考地。

基极没有足够驱动时,负载路径处于关断状态;提供合适基极驱动后,集电极到发射极可以承载负载电流。橙色箭头显示负载电流,绿色箭头显示控制支路,两条支路有关联,却不是同一条路径。

负载电流的能量来自负载电源,不能说它是 GPIO 电流“凭空放大出来”的能量。晶体管也不能突破自身电压、电流、功耗和温度限制。

电阻不是可有可无

相同GPIO电压下,基极电阻限制控制电流

基极—发射极具有结的特性,不能把它当作无限高阻输入直接随意驱动。串联电阻的作用,是让控制电流受到约束。

用一个粗略估算帮助理解:假设输出 3.3V、基极—发射极压降取 0.8V、电阻 2.2kΩ,则基极电流约 (3.3−0.8)/2200 ≈ 1.14mA。这些是假设,不是所有三极管恒定的压降。

实际计算还应考虑 GPIO 输出电压保证值、晶体管参数分散和温度条件。若需要更大基极电流,也要检查 GPIO 是否能满足,不能只把电阻越换越小。

开关设计不要只背放大倍数

截止、驱动不足、充分驱动三种状态的区别

初学者容易记住 Ic≈βIb,然后用典型 β 直接设计所有开关。问题是这个关系有工作区域和条件;当三极管用作饱和开关时,应关注数据手册给定集电极电流、基极电流下的饱和压降,而不是把线性放大区公式无限延伸。

第三张图只对比三种概念状态:截止时负载基本不通;驱动不足时晶体管可能承担较大压降;充分驱动时压降较低但仍不为零。图中并未计算某个真实型号的非线性特性。

晶体管消耗的功率与自身压降和电流有关。负载亮了,只证明某种电流已经存在,不证明驱动余量、温升和长期可靠性都合格。

复位时也要有确定状态

GPIO 上电复位时未必立即输出你期望的电平。适当的基极—发射极下拉可以帮助建立默认关断状态,但阻值与具体电路要一起设计。还要查看所选封装的引脚排列:外形相似不保证 B、C、E 顺序相同。

看完再猜

如果负载电源从 5V 换成 12V,GPIO 还是 3.3V,就一定不需要改设计吗?不是。晶体管耐压、负载电流、功耗以及所有连接都需要重新核对。

资料:onsemi 2N3903/2N3904 数据手册。重点看饱和压降的测试条件,而不是照搬本课估算值。

发现更多好玩的开源项目

专注 Arduino、开源硬件、端侧 AI 和值得收藏的开发者工具。

课程插图

长按二维码关注「GitStar」

所有动画为教学原理示意,非芯片仿真、非硬件实测。网页发布:2026-09-22。