4、核心器件选型(一):MCU选型要点(Cortex-M0+/M4、低功耗模式、外设资源)
做嵌入式血压计,MCU选型是第一步,也是最关键的一步。我见过不少项目,前期MCU选型没想清楚,后期改板子改到崩溃。血压计这东西,说白了就是个电池供电的精密测量设备,对功耗、体积、成本都有硬约束。
今天咱们就聊聊,怎么给血压计挑一颗合适的MCU。
4.1 核心架构:Cortex-M0+ 还是 M4?
这个问题我经常被问到。我的回答是:看算法复杂度。
血压计的核心算法,无非就是示波法。采集袖带压力信号,做滤波、找包络、算收缩压和舒张压。这个计算量有多大?
- 纯查表法:M0+ 完全够用,甚至有点浪费
- 带简单滤波(如IIR):M0+ 也能跑,但要注意时序
- 带复杂算法(如自适应滤波、FFT):建议上 M4
我个人习惯是:能用 M0+ 就别上 M4。为什么?功耗和成本。M0+ 的静态功耗通常比 M4 低一个数量级,价格也便宜不少。你想想看,血压计又不是手机,不需要跑神经网络,何必杀鸡用牛刀?
我的经验:我在项目中遇到过一款产品,初期选了 M4,后来发现算法优化后 M0+ 完全能跑,功耗降了 40%,BOM 成本省了 0.3 美元。别小看这 0.3 美元,量产 10 万台就是 3 万美元。
当然,如果你要做 多参数监护仪(血压+血氧+心电),或者需要 实时显示波形,那 M4 是必须的。M0+ 的算力确实扛不住。
4.2 低功耗模式:别只看数据手册
低功耗是血压计的核心诉求。一颗纽扣电池或者两节 AAA 电池,要撑 3-6 个月,甚至更久。MCU 的低功耗模式怎么选?
先看常见的几种模式:
| 模式 | 典型电流 | 唤醒时间 | 适用场景 |
|---|---|---|---|
| Run(运行) | 1-10 mA | - | 测量、计算、通信 |
| Sleep(睡眠) | 100-500 μA | 几 μs | 等待按键、定时唤醒 |
| Deep Sleep(深度睡眠) | 1-10 μA | 几十 μs | 待机、RTC 运行 |
| Shutdown(关断) | 10-100 nA | 几 ms | 长期不工作 |
嗯,这里要注意:数据手册上的电流值,都是在理想条件下测的。实际项目中,你还要考虑外设的漏电流、电源转换效率、PCB 漏电等因素。我曾经被坑过一次——选了一颗号称深度睡眠 1 μA 的 MCU,结果实际测出来 5 μA,查了半天发现是 GPIO 上拉电阻没关。
避坑指南:选型时,重点关注以下几点:
- RTC 是否独立供电:有些 MCU 的 RTC 在深度睡眠下也能跑,但需要单独供电引脚
- 唤醒源是否丰富:至少要有 GPIO 唤醒、定时器唤醒、比较器唤醒
- 唤醒时间是否可接受:血压计测量周期约 30-60 秒,唤醒时间几十 μs 完全够用
4.3 外设资源:够用就好,别贪多
血压计需要哪些外设?我列个清单:
- ADC:至少 12 位,采样率 1 kHz 以上。用于采集压力传感器信号
- DAC:可选,用于控制气泵/气阀的线性调节
- 定时器:至少 2 个。一个用于 PWM 驱动气泵,一个用于系统心跳
- UART/I2C/SPI:至少各 1 个。用于连接蓝牙模块、显示屏、存储芯片
- GPIO:10-15 个。控制按键、LED、气阀、蜂鸣器
你可能会问:要不要带 USB?要不要带 CAN?我的回答是:别加。血压计是消费级产品,USB 和 CAN 用不上,反而增加成本和功耗。
我见过一个项目,选了一颗带 USB OTG 的 MCU,结果 USB 模块根本没用,白白多花了 0.5 美元。你想想看,这钱花得冤不冤?
4.4 选型实战:两颗常用芯片对比
为了让你更直观地理解,我拿两颗常用的芯片做个对比:
| 参数 | STM32G030 (M0+) | STM32L431 (M4) |
|---|---|---|
| 内核 | Cortex-M0+ | Cortex-M4 |
| 主频 | 64 MHz | 80 MHz |
| Flash | 64 KB | 256 KB |
| SRAM | 8 KB | 64 KB |
| ADC | 12位, 2.5 MSPS | 12位, 5 MSPS |
| 深度睡眠电流 | 0.4 μA | 1.2 μA |
| 单价(1k) | 约 0.6 美元 | 约 1.5 美元 |
你看,G030 的深度睡眠电流只有 0.4 μA,比 L431 的 1.2 μA 低不少。对于纯血压计应用,G030 的 64 KB Flash 和 8 KB SRAM 也够用。所以我的建议是:优先考虑 G030 这类 M0+ 芯片。
注意:如果你需要做 蓝牙通信,或者要 存储大量历史数据,那 G030 的 8 KB SRAM 可能不够。这时候可以考虑 L431,或者加一颗外部 SRAM。
4.5 我的选型流程
最后,分享一下我个人的选型流程,供你参考:
- 列出需求清单:外设、功耗、成本、封装
- 筛选 3-5 颗候选芯片:从 ST、NXP、TI、Silicon Labs 等主流厂商中挑
- 对比数据手册:重点关注低功耗模式、唤醒时间、ADC 性能
- 做快速原型验证:买开发板,跑一下核心算法和功耗测试
- 确认供货和价格:找代理商问交期和批量价格
嗯,这套流程我用了十几年,基本没出过大问题。你刚开始做项目的话,可以照着来,至少能避开 80% 的坑。
下一节,咱们聊聊传感器选型。压力传感器、加速度传感器、温度传感器……血压计里到底需要哪些?到时候见。