第1章:系统架构设计——从需求到方案的落地
大家好,我是老张。做医疗电子这行十几年了,每次开始一个新项目,我最头疼的其实不是写代码,而是——系统架构设计。说白了,就是这板子到底该怎么搭?芯片选谁?电源怎么走?人机交互用什么?
这一章,咱们就把理疗仪的系统架构掰开揉碎了讲。我会结合自己踩过的坑,给你一套可以直接用的方案。
1.1 主控芯片选型:STM32 vs 国产MCU
先聊核心——主控。这是整个系统的脑子。
我个人习惯,先看需求再选型。理疗仪需要什么?
- 至少2路ADC(采集电极阻抗、温度)
- 1路PWM(控制升压电路)
- 1路SPI(驱动LCD/OLED)
- 1路UART(调试用)
- BLE通信(可选,但建议加上)
满足这些的MCU太多了。但真正量产时,你会发现坑都在细节里。
| 对比项 | STM32(如F103) | 国产MCU(如GD32、AT32) |
|---|---|---|
| 价格(批量) | 约8-12元 | 约3-6元 |
| 开发工具链 | 成熟,HAL库完善 | 兼容STM32,但有小差异 |
| 供货稳定性 | 2021年后波动大 | 相对稳定 |
| 低功耗表现 | 优秀 | 良莠不齐 |
| 医疗认证支持 | 有安全文档 | 部分厂商提供 |
我的建议:如果产品量不大(年出货<1万台),直接用STM32,省心。如果量上去了,一定要备选国产方案。我在2021年吃过亏——STM32F103从12元涨到80元,差点把项目搞死。
嗯,这里要注意:国产MCU虽然便宜,但ADC精度和稳定性有时不如ST。我遇到过GD32的ADC在低温下偏移了2%,排查了三天才发现是芯片问题。所以,关键参数一定要留余量。
1.2 电源架构:电池管理与升压电路
理疗仪是便携设备,电池供电是主流。电源架构设计不好,轻则续航短,重则烧板子。
典型的电源链路:
锂电池(3.7V) → 充电管理(TP4056或BQ系列) → 升压电路(Boost) → 负载(MCU、屏幕、电极驱动)
↓
LDO(3.3V)→ MCU供电
这里有两个关键点:
1.2.1 电池管理
- 充电电流:我一般设0.5C,比如2000mAh电池用1A充电。太大电池发热,太小充太慢。
- 保护板:必须带过充、过放、短路保护。别省这几毛钱,我见过客户因为没保护板,电池鼓包把外壳撑裂了。
- 电量检测:用ADC采集电池电压,但要注意——锂电池放电曲线不是线性的。我习惯用查表法,分段校准。
小技巧:电池电压采集不要直接连ADC引脚。加一个100k+10k的分压电阻,再并一个0.1uF电容滤波。这样能滤掉电机启停时的尖峰干扰。
1.2.2 升压电路
理疗仪需要高压(通常30V-80V)来驱动电极。升压电路是核心。
我常用的方案:
- 升压芯片:MT3608或SX1308,便宜且外围简单
- 电感:22uH,额定电流>2A
- 输出电容:100uF/100V,低ESR
- 反馈电阻:根据公式 R1/R2 = Vout/0.6V - 1
// 升压输出电压计算示例
// 目标:50V输出
// 反馈电阻:R1=820k, R2=10k
// Vout = 0.6V * (1 + R1/R2) = 0.6 * (1 + 82) = 49.8V
// 实际焊接时,R1用两个电阻串联,方便微调
警告:升压电路的高压部分要做好绝缘。我早期一个项目,因为PCB爬电距离不够,高压打火把MCU烧了。建议高压区域开槽,间距至少2mm。
1.3 人机交互界面:LCD/OLED + 触摸按键
用户怎么操作?屏幕显示什么?这直接决定了产品的体验。
1.3.1 屏幕选型
| 类型 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 段码LCD | 功耗极低,成本低 | 只能显示固定图案 | 低端理疗仪 |
| OLED(0.96寸) | 对比度高,可显示汉字 | 寿命短(有机材料) | 中端产品 |
| TFT彩屏 | 显示丰富,可做UI | 功耗高,成本高 | 高端旗舰 |
我个人推荐:中端产品用0.96寸OLED,SSD1306驱动芯片,I2C接口。代码简单,显示效果也不错。但要注意——OLED在强光下看不清,如果你产品要户外用,还是选TFT吧。
1.3.2 触摸按键
机械按键容易坏,触摸按键是趋势。我常用电容触摸方案:
- 使用MCU自带的触摸模块(如STM32的TSC)
- 或者外挂触摸芯片(如TTP223)
这里有个坑:触摸按键的灵敏度受外壳厚度影响很大。我做过一个项目,外壳厚度2mm时灵敏度刚好,但供应商换了批料,厚度变成2.5mm,按键就不灵了。后来我学乖了——设计时留出灵敏度调节电位器,量产时根据实际外壳微调。
1.4 通信接口:BLE、USB、UART
理疗仪需要通信吗?看场景。但我觉得,至少留个UART调试口,不然出了问题你哭都来不及。
1.4.1 BLE(蓝牙低功耗)
现在用户都想要手机控制。BLE是首选。
- 芯片:nRF52832或国产的CH582
- 或者用MCU+BLE模块(如JDY-23)
我的经验:如果团队没有射频经验,直接用模块。自己画天线?我试过,调试周期至少多两周,而且容易过不了FCC认证。
1.4.2 USB
用于充电和数据传输。建议用Type-C接口,现在用户都认这个。
- 充电:CC引脚接5.1k下拉电阻
- 数据:D+/D-直接连MCU的USB引脚
1.4.3 UART
调试口,必须留。我习惯用3.3V电平,引出TX、RX、GND三根线。量产时可以不焊排针,但PCB上要留焊盘。
避坑指南:我曾经因为UART口没留,导致产测时无法烧录程序,最后只能飞线。从那以后,每个板子我都强制留UART口,哪怕用0欧电阻隔离。
1.5 架构总结
好了,咱们把整个系统串起来:
+------------------+ +------------------+
| 锂电池(3.7V) | | 触摸按键 |
+--------+---------+ +--------+---------+
| |
v v
+--------+---------+ +--------+---------+
| 充电管理 | | MCU主控 |
| (TP4056) | | (STM32/GD32) |
+--------+---------+ +--------+---------+
| |
v v
+--------+---------+ +--------+---------+
| 升压电路 | | OLED屏幕 |
| (MT3608) | | (SSD1306) |
+--------+---------+ +--------+---------+
|
v
+--------+---------+
| 电极驱动输出 |
| (30V-80V) |
+------------------+
这个架构我用了至少5个量产项目,稳定可靠。你照着搭,基本不会出大问题。
下一章,咱们聊原理图设计——怎么把架构变成实实在在的电路。到时候我会分享一些「看起来没问题,一焊就冒烟」的教训。
本章要点:
- 主控选型:STM32保底,国产MCU降本,但ADC精度要验证
- 电源架构:电池管理+升压,注意爬电距离和滤波
- 人机交互:OLED+触摸按键,灵敏度留调节余量
- 通信接口:BLE用模块,UART必须留
公众号:蓝海资料掘金营,微信deep3321