4. 电源电路设计:3.3V LDO选型、滤波电容布局、电源纹波要求、电池供电方案
体温计这东西,说白了就是个低功耗、高精度的模拟小系统。电源要是搞不好,后面ADC采出来的温度数据全是毛刺,你软件滤波写得再好也白搭。我这些年经手过好几个医疗级体温计项目,每次画板子之前,电源方案都是第一个要敲定的。
嗯,咱们直接进入正题。这一节我重点讲四个事:LDO怎么选、电容怎么摆、纹波控到多少才算合格、以及电池供电时那些坑。
4.1 3.3V LDO选型:别只看输出电压
很多人选LDO,上来就看封装小不小、价格低不低。其实体温计这种应用,有几个参数比价格重要得多。
核心选型指标(我个人的筛选顺序):
- 静态电流(Iq):体温计大部分时间在待机,LDO自身的耗电必须极低。我一般选Iq < 1μA的型号,比如TPS7A02或类似级别。你想想看,电池总共就几十mAh,LDO自己吃掉几个μA,待机一年就没电了。
- 压差(Dropout Voltage):电池电压会从4.2V降到3.0V甚至更低。LDO的压差必须小于0.3V@100mA,否则电池还有电,LDO已经稳不住3.3V了。
- 输出噪声:体温计的ADC分辨率通常是16位甚至24位,LDO的输出噪声如果超过30μVrms,会直接耦合到参考电压上。我建议选噪声 < 15μVrms的型号。
- PSRR(电源抑制比):在100Hz~1kHz频段,PSRR至少要60dB以上。为什么?因为体温信号变化很慢,但开关噪声和射频干扰都在这个频段。
我在项目中遇到过用某国产LDO,静态电流标称1μA,实际测出来3.5μA,而且温度一低还飘。后来换了TI的TPS7A02,才算踏实。所以选型时,一定要看datasheet里的典型曲线,别只看表格里的最大值。
一个小技巧:如果成本允许,优先选带“Power Good”引脚的LDO。这样MCU可以等电源稳定后再启动ADC,避免上电瞬间的毛刺被采集到。
4.2 滤波电容布局:位置比容量重要
电容选多大?很多人张口就是10μF+0.1μF。但体温计这种对纹波敏感的设备,布局比容量更关键。
我个人的习惯是:
- 输入电容:放在LDO的输入引脚旁边,距离不超过2mm。容量选1μF~4.7μF,X5R或X7R材质。别用Y5V,温度一变化容量能掉70%。
- 输出电容:放在LDO输出引脚和地之间,同样紧贴引脚。容量按datasheet推荐,通常是1μF~10μF。注意ESR要匹配,有些LDO对ESR有严格要求,太大或太小都会导致振荡。
- 去耦电容:每个IC的电源引脚旁边放一个0.1μF的MLCC,距离引脚< 1mm。如果空间允许,再加一个1μF的电容并联。
我曾经踩过的坑:有一次为了省空间,把LDO的输出电容放到了板子背面,过孔走了5mm长。结果纹波从5mV飙到了25mV,ADC读数跳了3个LSB。后来把电容挪到正面,紧贴引脚,纹波立刻降回6mV。所以记住:电容到引脚的走线,越短越粗越好,过孔能不用就不用。
另外,体温计里通常有模拟地和数字地。我的做法是:LDO的输出电容和模拟电路的去耦电容,都接到模拟地。数字部分的噪声不要回流到模拟地平面。
4.3 电源纹波要求:别被datasheet骗了
很多LDO的datasheet上写着“输出纹波10μVrms”,但那是在理想负载下测的。实际电路中,纹波来源主要有三个:
| 纹波来源 | 典型幅度 | 应对方法 |
|---|---|---|
| LDO自身噪声 | 5~30μVrms | 选低噪声LDO,输出加RC滤波 |
| 负载瞬态响应 | 10~50mVp-p | 加大输出电容,降低ESR |
| 电池电压波动 | 50~200mVp-p | 输入加π型滤波,LDO选高PSRR型号 |
对于体温计,我的经验是:ADC参考电压上的纹波,必须小于1/2 LSB。比如你用16位ADC,参考电压3.3V,那么1 LSB = 3.3V / 65536 ≈ 50μV。所以纹波要控制在25μVp-p以内。嗯,这个要求其实挺苛刻的。
怎么测?别用普通万用表,要用示波器,探头打到20MHz带宽限制,用短地弹簧接地。我见过有人用长地线夹子测纹波,测出来全是空间耦合的噪声,根本不是真实的电源纹波。
实测技巧:在LDO输出端加一个10μF+0.1μF的电容组合后,再串一个10Ω电阻和10μF电容组成RC低通滤波,专门给模拟电路供电。这样纹波能再降一个数量级。代价是压降一点点,但体温计电流小,10Ω上只掉几mV,完全能接受。
4.4 电池供电方案:从电池到LDO的细节
体温计常用纽扣电池(CR2032)或小型锂电池。这两种方案我都做过,各有各的讲究。
方案一:纽扣电池(CR2032)
- 电压范围:2.0V~3.0V(新电池3.0V,旧电池2.0V)
- 内阻:约10Ω~30Ω,大电流时压降明显
- LDO选型:必须选低压差型,比如XC6206系列,压差仅0.2V@100mA
- 注意:纽扣电池不适合持续大电流放电。体温计测量时电流约5mA~10mA,待机时< 1μA,正好匹配
方案二:小型锂电池(如401230)
- 电压范围:3.0V~4.2V
- 需要充电管理芯片(如TP4056)
- LDO选型:压差要求放宽,但要注意输入耐压,至少5V
- 我建议加一个电池保护板,防止过放
不管哪种方案,电池到LDO的走线一定要短。我曾经在项目里把电池座放在板子一端,LDO放在另一端,中间走了10cm细线。结果测量时电流一拉,线上压降就有0.3V,LDO输入电压掉到2.7V,输出开始掉电。后来把LDO挪到电池座旁边,问题解决。
电池供电的避坑清单(我每次画板前都会过一遍):
- 电池座要选带弹片的,接触电阻小
- 电池正极到LDO输入之间,加一个10Ω电阻+10μF电容的π型滤波,防止电池内阻引起振荡
- LDO的使能引脚(如果有)不要悬空,上拉到VIN或通过100kΩ电阻接地
- 在电池两端并联一个0.1μF电容,滤除高频噪声
- 如果使用纽扣电池,建议加一个二极管防反接,但注意二极管的压降(约0.3V),会进一步压缩LDO的裕量
最后说一句,电源电路设计好了,体温计的精度就成功了一半。剩下的就是布局布线和软件滤波了。下一节我会讲ADC参考电压的布局,那个更讲究,咱们到时候细聊。