1. 从一个实际需求说起:为什么要做12V转5V/3.3V双路输出模块
很多做嵌入式、单片机或者语音交互类产品的朋友都会碰到一个很具体的场景:手头只有一路12V的电源适配器或者电池组,但板子上同时需要5V和3.3V两路供电。5V可能给继电器、传感器、显示屏背光或者USB接口用,3.3V则给主控MCU、语音芯片、无线模块这些数字电路用。如果分别买两个现成的电源模块,不仅占地方,成本也上去了,接线还乱。所以自己画一块PCB,把12V转5V和5V转3.3V集成在一起,做成一个双路输出的电源模块,是很自然的选择。
这个项目标题里提到的“12V转5V/3.3V双路输出PCB电源模块”,核心就是两件事:第一,把12V降到5V,这一步通常用降压型DC-DC芯片完成;第二,把5V再降到3.3V,这一步可以用LDO线性稳压器,也可以用第二级DC-DC。至于选哪种方案,后面我会详细拆解。散热技巧之所以被单独拎出来,是因为电源模块的发热问题在实际使用中非常突出,尤其是当输出电流比较大的时候,芯片烫手、效率下降、甚至热保护关断,都是新手经常踩的坑。
这篇文章适合谁看?如果你刚接触PCB设计,想找一个难度适中、又能学到东西的实战项目,这个双路电源模块非常合适。如果你已经画过一些板子,但对电源部分的布局布线、散热处理、芯片选型还没有系统性的认识,这篇文章也能帮你把思路理顺。我会从方案选型、原理图设计、关键参数计算、PCB布局布线、散热处理、焊接调试这几个环节,按照实际做项目的顺序,把每个步骤背后的逻辑讲清楚。
提示:本文涉及的芯片型号和参数是基于常见工程实践给出的参考方案,实际选型时请以你手头能买到的物料和具体负载需求为准。
2. 方案选型:12V转5V和5V转3.3V分别怎么实现
2.1 12V转5V:为什么首选同步降压DC-DC
12V转5V这一步,压差是7V。如果你用线性稳压器(比如常见的7805),那么当输出电流为1A时,芯片上消耗的功率就是(12-5)×1=7W。7W是什么概念?一个TO-220封装的7805,不加散热片的情况下,热阻大约在50°C/W左右,7W的功耗会让芯片温度升高350°C,显然是不现实的。即使加了很大的散热片,效率也只有5/12≈41.7%,大部分能量都变成了热。所以12V转5V这一步,只要输出电流超过100mA,就应该优先考虑开关型DC-DC降压方案。
开关电源的核心思路是“用高频开关加电感电容来搬运能量”,而不是像线性稳压那样把多余的能量“烧掉”。常见的降压DC-DC芯片有LM2596、MP1584、MP2315、TPS5430等。对于新手来说,我比较推荐MP2315或者MP1584这类SOT-23-8封装的小芯片,外围元件少,效率高,价格也便宜。MP2315的输入电压范围是4.5V到24V,输出电流可以到3A,开关频率500kHz,效率在12V转5V、1A负载下能到90%以上。
选芯片的时候要重点看几个参数:输入电压范围要覆盖你的12V(考虑±10%的波动,最好选上限20V以上的)、输出电流要留够余量(比如实际需要1A,选3A的芯片)、开关频率尽量高一些(频率高,电感和电容可以选小一点,但开关损耗会增加)。另外,芯片的封装也很重要,SOT-23-8或者ESOP-8这种带散热焊盘的封装,散热效果比纯SOT-23-6要好很多。
2.2 5V转3.3V:LDO还是第二级DC-DC
5V转3.3V这一步,压差只有1.7V。如果3.3V这一路的电流不大(比如200mA以内),用LDO是最简单、最干净的选择。LDO的输出纹波极低,没有开关噪声,对语音芯片、射频模块这类对电源质量敏感的负载非常友好。常见的3.3V LDO有AMS1117-3.3、TLV70233、RT9013等。AMS1117-3.3便宜好买,但它的静态电流比较大,压差也偏高(约1.1V),在5V转3.3V、200mA负载下,功耗是(5-3.3)×0.2=0.34W,SOT-223封装加一小块铜皮就能应付。
但如果3.3V这一路的电流超过500mA,LDO的功耗就会变得很可观。比如500mA时,功耗是(5-3.3)×0.5=0.85W,虽然还能用,但效率只有66%,而且发热会明显增加。这时候可以考虑用第二级DC-DC,比如MP2315再降一次,或者用TPS562201这类小封装同步降压芯片。第二级DC-DC的效率也能到90%左右,但代价是引入了开关噪声,需要在布局和滤波上多花心思。
我的建议是:如果你的3.3V负载是MCU、传感器、语音芯片这类电流不大但对噪声敏感的器件,优先用LDO;如果是驱动LED灯带、多个无线模块同时工作这种大电流场景,再考虑第二级DC-DC。很多实际项目里,5V转3.3V用一颗AMS1117-3.3就搞定了,简单可靠。
2.3 双路输出的整体架构
把这两级串起来,整体架构就是:12V输入 → 第一级DC-DC降压到5V → 第二级LDO(或DC-DC)降到3.3V。5V和3.3V同时输出,各自带各自的负载。这里有一个细节需要注意:第一级DC-DC的输出电流能力要大于5V负载和3.3V负载的总和。比如5V这边需要1A,3.3V这边需要0.3A,那么第一级DC-DC至少要能输出1.3A,再留20%余量,选1.6A以上的芯片比较稳妥。
另外,输入端的滤波和保護也不能省。12V输入端建议加一个TVS管(比如SMBJ15A)做浪涌保护,再加一个π型LC滤波(比如10μH电感加两个100μF电解电容),可以有效抑制输入线上的高频噪声。输出端也要加滤波电容,5V输出用22μF陶瓷电容加100μF电解电容,3.3V输出用10μF陶瓷电容加47μF电解电容,基本就能满足大多数场景。
3. 原理图设计与关键参数计算
3.1 第一级DC-DC的外围元件计算
以MP2315为例,它的外围元件主要包括输入电容、输出电容、电感、反馈电阻和自举电容。这些元件的取值不是随便选的,需要根据输入输出电压、输出电流和开关频率来计算。
先说电感。MP2315的开关频率是500kHz,电感值可以用公式L = (Vout × (Vin - Vout)) / (Vin × ΔIL × fsw)来估算。其中ΔIL是电感纹波电流,一般取输出电流的30%左右。假设Vin=12V,Vout=5V,Iout=2A,ΔIL=0.6A,fsw=500kHz,代入公式:L = (5 × (12-5)) / (12 × 0.6 × 500000) ≈ 9.7μH。实际选型时取标准值10μH,饱和电流要大于输出电流加上一半的纹波电流,也就是2A+0.3A=2.3A,选3A以上的屏蔽电感比较稳妥。
输出电容的选择主要看纹波电压要求。MP2315的数据手册建议输出电容在22μF到100μF之间。我一般用两颗22μF的X7R陶瓷电容并联,再并一颗100μF的铝聚合物电容,这样高频和低频的滤波效果都能兼顾。输入电容同样重要,要选低ESR的陶瓷电容,至少10μF,靠近芯片的VIN引脚放置。
反馈电阻的计算比较简单。MP2315的反馈基准电压是0.8V(具体看数据手册),输出电压由FB引脚的两个分压电阻决定:Vout = Vfb × (1 + R1/R2)。假设Vfb=0.8V,想要Vout=5V,那么R1/R2 = (5/0.8) - 1 = 5.25。选R2=10kΩ,则R1=52.5kΩ,取标准值51kΩ或52.3kΩ,实际输出会在4.95V左右,完全够用。
3.2 第二级LDO的选型和外围
AMS1117-3.3的外围非常简单,输入端加一个10μF陶瓷电容,输出端加一个22μF钽电容或者陶瓷电容就行。需要注意的是,AMS1117对输出电容的ESR有一定要求,如果用陶瓷电容,建议选X5R或X7R材质,容量不要低于10μF,否则可能会振荡。如果对稳定性要求高,可以在输出端串一个0.1Ω到0.5Ω的小电阻,再并电容,这样ESR就人为增加了,稳定性会好很多。
TLV70233这类新一代LDO对陶瓷电容更友好,不需要额外的ESR,静态电流也更低,适合电池供电的场景。但价格比AMS1117贵一些,看你的预算和采购渠道。
3.3 保护电路和指示电路
一个完整的电源模块,除了降压本身,还应该有一些基本的保护。输入端我一般会加一个自恢复保险丝(PPTC),比如0.5A或1A的,防止短路时烧毁上游电源。TVS管用来吸收浪涌,选SMBJ15A或者SMAJ15A都可以。输出端可以加一个LED指示灯,5V和3.3V各一个,串联1kΩ电阻,用来快速判断哪一路有输出。
如果你做的是给语音芯片供电的模块,3.3V这一路还可以加一个过压保护电路。最简单的方案是用一颗稳压二极管加一个PNP三极管,当电压超过3.6V时,稳压管导通,三极管截止,切断输出。不过这种分立方案精度一般,要求高的话可以用专用的过压保护芯片,比如TPS3703或者MAX809。
4. PCB布局布线:电源模块的成败关键
4.1 布局原则:先大后小,先高后低
电源模块的PCB布局,核心原则是“先放大的、发热的、高的元件,再放小的、不发热的、矮的元件”。具体到这个项目,第一级DC-DC芯片和电感是发热大户,应该放在板子的一侧,并且尽量靠近输入端子。第二级LDO发热小一些,可以放在DC-DC的旁边或者下方。输入输出端子放在板子边缘,方便接线。
DC-DC的布局有一个经典的“热回路”概念。所谓热回路,就是输入电容、芯片的VIN和GND引脚、以及芯片内部的开关管构成的环路。这个环路的面积越小,电磁辐射和开关噪声就越小。所以输入电容必须紧贴芯片的VIN和GND引脚,走线要短而粗。电感放在芯片的SW引脚旁边,走线也要短,但不用像输入电容那么苛刻。
反馈电阻要靠近FB引脚,并且远离电感和SW节点,防止噪声耦合到反馈线上。反馈走线要细一点,并且用地线包围起来,减少干扰。
4.2 布线要点:线宽、过孔和铺铜
电源走线的线宽要根据电流来定。有一个经验公式:1盎司铜厚的情况下,1mm线宽大约能承载1A电流,温升10°C左右。如果输出电流是2A,那么走线宽度至少2mm,最好3mm。如果板子空间有限,可以用多层板,把电源走线放在内层,或者用多个过孔并联来增加载流能力。
过孔的选择也有讲究。一个0.3mm孔径、0.6mm焊盘的过孔,载流能力大约是0.5A到1A。如果需要在顶层和底层之间传输2A电流,至少打4个这样的过孔。过孔要尽量靠近焊盘,减少走线长度。
铺铜是电源板的重要技巧。芯片的GND引脚、输入输出电容的GND端、电感的GND端,都应该用大面积的铜皮连接,并且多打过孔到板子背面的地平面。这样不仅降低了接地阻抗,还能帮助芯片散热。MP2315这类芯片的底部有散热焊盘,必须在PCB上对应位置开窗,并且打上9个以上的过孔,把热量传导到背面铜皮。
4.3 散热设计:从芯片到铜皮到空气
散热是这个小模块最容易被忽视、也最容易出问题的地方。MP2315在12V转5V、2A输出时,效率大约90%,损耗是5V×2A×(1/0.9-1)≈1.1W。这1.1W全部变成热,如果散热不好,芯片结温会迅速升高。MP2315的结到环境热阻大约是60°C/W(取决于PCB铜皮面积),1.1W的功耗会让结温比环境高66°C。如果环境温度是40°C,结温就是106°C,虽然还没到150°C的极限,但已经很烫了。
改善散热的手段有几个。第一,增大芯片底部散热焊盘连接的铜皮面积,最好在顶层和底层都铺大面积铜皮,并用过孔阵列连接。第二,如果空间允许,可以在芯片旁边留一个小的散热片位置,用导热胶粘一个铝片。第三,降低损耗,比如选效率更高的芯片,或者降低输出电流。第四,如果实在热得厉害,可以考虑加一个小风扇,但这对小模块来说有点夸张。
LDO的散热同样要注意。AMS1117-3.3在5V转3.3V、300mA时,功耗是(5-3.3)×0.3=0.51W,SOT-223封装的散热焊盘要连接到足够大的铜皮,否则也会烫手。
注意:散热铜皮不要只放在芯片正下方,要向外延伸,利用整个板子的面积来散热。如果板子背面也有空间,背面也铺上铜皮,用过孔连起来,散热效果会好很多。
5. 焊接调试与常见问题排查
5.1 焊接顺序和注意事项
拿到PCB空板后,先不要急着把所有元件都焊上去。我的习惯是分步焊接、分步测试。第一步,先焊电源输入端的保险丝、TVS管和输入电容,然后上电测一下输入端有没有短路。第二步,焊第一级DC-DC芯片和它的外围元件,包括电感、输出电容、反馈电阻。上电后先不接负载,用万用表测5V输出是否正常。第三步,焊第二级LDO和它的外围,再测3.3V输出。最后焊指示灯和输出端子。
焊接DC-DC芯片时,风枪温度不要太高,300°C左右就够了,时间控制在10秒以内,防止芯片内部损坏。芯片底部的散热焊盘一定要焊好,可以用少量焊锡膏加风枪吹,或者用烙铁从侧面补焊。电感和大电容可以用烙铁焊,但要注意极性,电解电容的正负极不能接反。
5.2 上电测试和带载测试
空载测试通过后,不要马上接满载。先用一个功率电阻或者电子负载,从100mA开始,逐步增加到额定电流,每一步测一下输出电压和芯片温度。如果输出电压在负载增加时明显下降,可能是电感饱和了,或者输入电容不够。如果芯片温度上升很快,超过80°C,就要检查散热铜皮是否足够,或者考虑降低输出电流。
带载测试时,最好用示波器看一下输出纹波。DC-DC的输出纹波一般在几十毫伏以内是正常的,如果纹波超过100mV,可能是输出电容不够或者布局有问题。LDO的输出纹波应该非常小,如果看到明显的开关噪声,说明DC-DC的噪声耦合过来了,需要加强滤波或者调整布局。
5.3 常见问题速查表
| 现象 | 可能原因 | 排查方法 | 解决措施 |
|---|---|---|---|
| 上电无输出 | 输入保险丝熔断 | 万用表测保险丝通断 | 检查输入端是否短路,更换保险丝 |
| 5V输出偏低 | 反馈电阻取值错误 | 测FB引脚电压是否为0.8V | 重新计算并更换反馈电阻 |
| 芯片发热严重 | 散热铜皮不足 | 测芯片表面温度 | 增大铜皮面积,加过孔,降低负载 |
| 输出纹波大 | 输出电容不够或ESR高 | 示波器测纹波 | 并联低ESR陶瓷电容 |
| 3.3V输出振荡 | LDO输出电容ESR不合适 | 观察输出波形 | 换钽电容或串小电阻 |
| 带载后电压跌落 | 电感饱和或线宽不够 | 测电感电流波形 | 换大饱和电流电感,加粗走线 |
| 噪声耦合到3.3V | DC-DC布局太近 | 对比空载和带载纹波 | 增加LC滤波,拉开距离 |
5.4 几个容易踩的坑
第一个坑是电感选型只看电感值,不看饱和电流。有些便宜的电感标称10μH,但饱和电流只有1A,你的负载是2A,一上电电感就饱和了,相当于短路,芯片瞬间过流保护。所以买电感的时候一定要看饱和电流参数,至少要是输出电流的1.5倍。
第二个坑是反馈电阻走线太长。FB引脚是高阻抗节点,很容易被SW节点的噪声干扰。如果发现输出电压不稳定,先检查FB走线是不是太长了,是不是靠近电感了。把反馈电阻移到芯片旁边,走线尽量短,问题通常就能解决。
第三个坑是忽略输入电容的ESR。有些电解电容的ESR很高,在高频开关下起不到滤波作用,导致输入电压波动大,芯片工作不稳定。输入端一定要用低ESR的陶瓷电容,电解电容只能作为辅助。
第四个坑是散热焊盘没焊好。MP2315这类芯片的散热焊盘如果虚焊,热量传不出去,芯片会很快过热保护。焊接时要用风枪把焊盘和芯片底部都加热到位,或者用烙铁从PCB背面的过孔补焊。
6. 实测数据与优化方向
我用MP2315加AMS1117-3.3的方案做了一版模块,PCB尺寸是30mm×20mm,双面铺铜,1.6mm板厚。实测数据如下:12V输入,5V输出带1.5A负载时,效率约91%,芯片表面温度约65°C(环境25°C);3.3V输出带300mA负载时,LDO表面温度约55°C。输出纹波方面,5V在1.5A负载下约35mV,3.3V约5mV。这个性能对于大多数嵌入式项目来说已经足够了。
如果想进一步优化,有几个方向。第一,把第一级DC-DC的开关频率提高到1MHz以上,电感和电容可以更小,但开关损耗会增加,需要权衡。第二,用两级DC-DC替代LDO,效率能提高到85%以上,但噪声会大一些,需要加LC滤波。第三,如果对散热要求极高,可以把PCB改成铝基板,散热效果会好很多,但成本也上去了。
我个人在实际操作中的体会是,电源模块这个东西,原理图画对只是第一步,PCB布局和散热才是真正决定成败的地方。同样的电路,布局不同,性能和温升可以差很多。新手最容易犯的错误就是先把元件随便摆上去,走线连通就行,结果调试的时候发现各种问题。所以画板子的时候多花半小时想想布局,后面能省好几个小时调试。
最后再分享一个小技巧:如果你手头没有电子负载,可以用大功率水泥电阻代替,比如5V输出想测1A,就用5Ω/10W的电阻。虽然精度不如电子负载,但用来判断模块能不能带载、发热是否正常,完全够用了。