2. 低功耗硬件选型:MCU、射频、电源与天线

做低功耗无线产品,硬件选型是第一步,也是最关键的一步。选错了芯片,后面软件再怎么优化也救不回来。我见过太多项目,因为前期选型拍脑袋,后期功耗压不下去,只能重新改板,浪费三个月起步。

这一节,咱们把四个核心器件的选型要点掰开揉碎讲清楚:MCU、射频芯片、电源管理芯片、天线。每个点我都会结合自己踩过的坑来说。

核心原则:低功耗选型不是选最省电的,而是选“在该干活时能干活,该睡觉时能睡死”的器件组合。
低功耗硬件选型知识体系 低功耗硬件选型 MCU 选型 射频芯片选型 电源管理选型 天线选型 睡眠电流 唤醒时间 接收灵敏度 发射电流 静态功耗 转换效率 阻抗匹配 选型不是孤立的,MCU 的唤醒时间会影响射频芯片的占空比设计 电源效率直接决定整机续航,天线匹配不好等于白费功率

2.1 MCU 选型要点

MCU 是系统的核心,也是功耗大头。选 MCU 不能只看数据手册上那个“超低功耗”的广告词,得看实际工况下的表现。

第一,看睡眠电流和唤醒时间。 这两个参数是绑定的。有些 MCU 号称睡眠电流 0.1µA,但唤醒要花 10ms,这期间电流可能跑到 mA 级。你想想看,如果产品每 10 秒唤醒一次,那 10ms 的唤醒时间就占了 0.1% 的占空比,平均功耗可能比睡眠电流大得多。

我个人习惯是:先算应用场景的唤醒周期,再反推允许的最大唤醒时间。比如做温湿度传感器,每 60 秒采集一次,那唤醒时间 1ms 以内就够用;但做门磁报警器,要求 100ms 内响应,那唤醒时间必须小于 100µs。

参数 低功耗 MCU 要求 普通 MCU 说明
睡眠电流 < 1 µA 5-50 µA RTC 保持模式下
唤醒时间 < 10 µs 100 µs - 10 ms 从深度睡眠到执行第一条指令
运行电流 (16MHz) < 2 mA 5-15 mA CoreMark 跑分时
外设自主运行 支持 部分支持 ADC/DMA 在 CPU 休眠时工作

第二,外设自主运行能力。 这个点很多人忽略。好的低功耗 MCU,它的 ADC、定时器、DMA、甚至部分通信接口可以在 CPU 深度睡眠时独立工作。我在项目中做过一个水表采集方案,MCU 休眠时 ADC 每 1 秒自动采样一次,DMA 把数据搬到 RAM,等采集满 60 次才唤醒 CPU 做一次处理。这样 CPU 99.9% 的时间都在睡觉,平均电流不到 3 µA。

选型技巧: 看数据手册里的“Peripheral in Sleep”章节。如果 MCU 在深度睡眠时还能跑定时器和 ADC,那才是真低功耗。否则就是假睡眠。

第三,电压范围和 LDO 集成度。 有些 MCU 支持 1.8V 到 3.6V 宽电压,但低电压下主频会受限。如果你用纽扣电池供电,电池电压从 3.0V 降到 2.0V,MCU 还能不能跑 16MHz?这个必须确认。我吃过一次亏,选了一颗标称 1.8V 工作的 MCU,结果在 2.0V 时内部 Flash 读取速度跟不上,只能降频到 4MHz,导致射频通信超时。

2.2 射频芯片选型

射频芯片的功耗,说白了就是发射电流、接收电流和休眠电流三个数。但这里有个坑:数据手册上的发射电流通常是在最大功率下测的,而实际产品可能只需要 0dBm 甚至 -10dBm。

接收灵敏度 vs 功耗的权衡。 灵敏度每提高 3dB,接收电流通常要翻倍。比如某款 Sub-1G 芯片,-110dBm 灵敏度时接收电流 10mA,-116dBm 时就要 20mA。如果你的产品通信距离要求 100 米,-110dBm 就够用,没必要多花一倍电流去追求那 6dB 的余量。

数据速率的影响。 速率越高,空中时间越短,平均功耗越低。但速率高了,灵敏度会下降。我常用的经验公式是:速率每翻一倍,灵敏度大约下降 3dB。所以选型时要算一笔账:

  • 低速模式(1kbps):灵敏度高,距离远,但单包传输时间长
  • 高速模式(250kbps):灵敏度低,距离近,但单包传输时间短
  • 最佳点:让单包传输时间刚好满足应用时延要求,同时灵敏度够用
避坑提醒: 我曾经选了一款蓝牙芯片,数据手册上写发射电流 5mA@0dBm,结果实际测试发现这个电流是“突发模式”下的平均值,实际峰值电流达到 15mA,而且持续时间 200µs。如果电源电容不够大,电压会被拉掉 200mV,导致 MCU 复位。所以射频芯片一定要看峰值电流,不能只看平均。

协议栈功耗。 如果你用 BLE,协议栈的功耗往往比射频本身还大。有些芯片的协议栈跑在 M0+ 核上,广播间隔 100ms 时平均电流 50µA,但换个芯片同样的广播间隔只要 20µA。这个差异来自协议栈的优化程度,不是射频硬件本身。我建议选型时直接跑一个标准的广播/扫描例程,用电流探头实测。

2.3 电源管理芯片选型

电源管理是低功耗系统的“隐形杀手”。很多人把精力花在 MCU 和射频上,结果电源芯片的效率在轻载时只有 30%,整机功耗直接翻倍。

静态电流(Iq)是第一指标。 对于电池供电产品,系统大部分时间处于休眠状态,负载电流可能只有 1-5 µA。这时候电源芯片的静态电流如果超过 1 µA,那它自己消耗的电量比负载还多。我一般要求 Iq < 1 µA,最好能到 0.5 µA 以下。

轻载效率曲线。 很多 DC-DC 芯片在 1mA 负载时效率 90%,但到了 10µA 负载时效率可能掉到 40%。这是因为开关损耗和静态电流占比变大了。选型时要看数据手册里的“Efficiency vs Load Current”曲线,重点关注 1µA 到 100µA 区间的效率。

负载电流 LDO 效率 DC-DC 效率(好) DC-DC 效率(差)
1 µA Vout/Vin 60-75% < 30%
10 µA Vout/Vin 75-85% 40-60%
1 mA Vout/Vin 85-92% 70-80%
10 mA Vout/Vin 90-95% 85-90%

动态响应和输出纹波。 射频芯片发射时电流会从 µA 级瞬间跳到几十 mA,电源芯片必须能快速响应,否则电压跌落会导致射频功率下降甚至掉连接。我习惯选 DC-DC 加 LDO 的组合方案:DC-DC 负责降压,LDO 负责给射频供电,利用 LDO 的高 PSRR 抑制纹波。

我的常用组合: 一颗 Iq=0.3µA 的 DC-DC(如 TPS62740)把 3.7V 锂电降到 3.0V,再用一颗超低 dropout 的 LDO(如 TPS7A02)给射频供电。DC-DC 负责效率,LDO 负责干净电源。休眠时关掉 LDO,让 DC-DC 直接给 MCU 供电。

2.4 天线选型基础

天线选型经常被当成“玄学”,其实没那么复杂。核心就三点:尺寸、效率、阻抗匹配。

天线类型选择。 对于 2.4G 频段,常见的有 PCB 板载天线、陶瓷天线、FPC 天线。PCB 天线成本最低,但需要足够的净空区(至少 10mm 无地铜皮)。陶瓷天线体积小,但带宽窄,对周围环境敏感。FPC 天线灵活,可以贴在塑料外壳上,但需要额外组装工序。

我个人在低功耗产品里最常用的是 PCB 倒 F 天线(IFA)。它效率在 40%-60% 之间,比陶瓷天线高,而且不需要额外物料成本。但要注意:PCB 天线周围 5mm 内不能有金属件、大电容、电池等物体,否则天线会被严重失谐。

阻抗匹配网络。 天线不是焊上去就能用的。射频芯片的输出阻抗通常是 50Ω,但天线的阻抗会随频率和环境变化。所以天线和芯片之间必须加 π 型匹配网络(两个电容一个电感)。我习惯在 PCB 上预留 π 型网络的焊盘,调试时用网络分析仪扫 S11 参数,调到 -10dB 以下才算合格。

// 天线匹配调试步骤(经验版)
1. 先焊上 0Ω 电阻,不接匹配网络,测 S11
2. 如果谐振频率偏高,增加串联电感或减小并联电容
3. 如果谐振频率偏低,减小串联电感或增加并联电容
4. 反复调整直到 S11 < -10dB(最好 < -15dB)
5. 用实际外壳装上后再测一次,因为塑料外壳也会影响
曾经踩过的坑: 我做一款蓝牙门锁时,天线匹配在裸板上调到 -18dB,装进金属外壳后直接变成 -3dB,通信距离从 30 米掉到 3 米。后来发现是外壳的金属转轴离天线太近,相当于给天线加了个“短路环”。解决方案是把天线移到远离金属件的位置,并在外壳对应位置开一个塑料窗口。

天线效率 vs 功耗。 天线效率低,意味着射频芯片需要输出更大的功率才能达到同样的通信距离。比如天线效率 30% 时,要发射 10dBm 的 EIRP,芯片实际要输出 15dBm,电流多一倍。所以天线选型直接影响了射频的发射功耗。我一般要求天线效率不低于 40%,否则不如换天线类型。