第二章 硬件架构总览:系统框图、核心模块划分、关键器件选型原则

好,咱们正式开始搭建血氧仪的硬件架构。这一章是整个课程的骨架,说白了就是先画一张“地图”,搞清楚每个模块该放哪、该用什么芯片。我当年第一次做血氧仪时,就是没想清楚架构,结果后面改板改了三次,血的教训啊。

2.1 系统框图:一张图看懂血氧仪

先看整体。一个典型的反射式血氧仪,硬件上可以拆成这几个大块:

  • 传感器前端:负责发射红光(660nm)和红外光(940nm),并接收反射回来的光信号。
  • 模拟前端(AFE):把光信号转成电信号,再放大、滤波、模数转换。这是最核心的部分。
  • 主控MCU:跑算法、控制时序、处理数据、驱动显示。
  • 电源管理:给各个模块供电,尤其是LED驱动需要大电流脉冲。
  • 显示与交互:OLED屏、按键、蜂鸣器。
  • 通信接口:蓝牙、USB等,用于数据上传。

我习惯把系统框图分成“信号链”和“控制链”两条线来看。信号链是从LED→光电二极管→AFE→MCU的ADC;控制链则是MCU控制LED的亮灭时序、AFE的增益、以及显示刷新。

核心要点:血氧仪是典型的“时序敏感”系统。LED亮、采样、关断、环境光补偿,每一步的时间窗口都是微秒级的。框图里必须标清楚时钟和同步信号。

2.2 核心模块划分:各司其职

咱们把每个模块拆开细说。

2.2.1 传感器前端模块

这个模块包含LED和光电探测器。LED需要选双波长(660nm和940nm)的,最好是封装在一起的,比如OSRAM的SFH7050。光电探测器我建议用PIN光电二极管,响应速度快,暗电流小。嗯,这里要注意:LED的驱动电流不能太大,否则会灼伤皮肤,一般控制在10mA~50mA脉冲电流。

2.2.2 模拟前端(AFE)模块

这是血氧仪的“心脏”。AFE要完成:跨阻放大(TIA)、环境光消除、可编程增益放大(PGA)、低通滤波、以及ADC采样。市面上有专用的血氧AFE芯片,比如TI的AFE4400、AFE4490,或者Maxim的MAX30102。我个人建议新手直接用集成AFE,省去很多模拟设计的坑。

我的经验:如果你用分立元件搭AFE,光是噪声和漂移就能调到你怀疑人生。我第一版就是自己搭的运放,结果信噪比惨不忍睹。后来换了AFE4490,一周就调通了。

2.2.3 主控MCU模块

MCU负责控制AFE的时序、运行血氧算法、驱动显示。选型时注意几点:

  • 要有硬件I2C或SPI接口,用来和AFE通信。
  • 要有足够快的ADC(如果AFE没有内置ADC的话),采样率至少1kHz。
  • RAM要够大,至少8KB以上,因为算法需要缓存脉搏波数据。

我常用的MCU是STM32G0系列,性价比高,外设丰富。或者用国产的GD32,也完全够用。

2.2.4 电源管理模块

血氧仪通常是电池供电(锂电池或纽扣电池)。电源管理要提供:

  • 3.3V给MCU和AFE
  • 5V或更高电压给LED驱动(因为LED需要正向压降)
  • 低功耗模式下的待机电流要小于1μA

我推荐用升压芯片(如TPS61099)把电池电压升到5V,再用LDO(如XC6206)降到3.3V。注意LED驱动要用恒流源,不能用恒压源,否则电流不稳定。

2.3 关键器件选型原则:别踩坑

选型是门学问。我总结了几个原则,都是真金白银换来的教训。

器件类别 关键参数 推荐型号 避坑指南
LED(双波长) 波长精度、光功率、封装 OSRAM SFH7050 不要买杂牌,波长偏移会导致血氧值不准
光电二极管 响应度、暗电流、结电容 Vishay TEMD6010 结电容要小(<50pF),否则影响带宽
AFE芯片 动态范围、噪声、采样率 TI AFE4490 注意SPI时序,有些AFE需要严格的时钟同步
MCU 主频、RAM、外设接口 STM32G030 RAM别选太小,算法跑不动
升压芯片 效率、纹波、静态电流 TPS61099 纹波要小于50mV,否则影响AFE精度

警告:我曾经贪便宜买了一批国产LED,波长标称660nm,实际测出来只有650nm。结果血氧值在低血氧区域(SpO2<90%)偏差高达5%!所以关键器件一定要从正规渠道采购,拿到手先测光谱。

2.4 模块间的连接与信号流

最后说说模块之间怎么连。我习惯画一张“信号流图”:

  1. MCU通过I2C配置AFE的寄存器(设置LED电流、增益、采样率)。
  2. MCU通过GPIO控制LED的亮灭时序(比如红光亮10μs,灭10μs,红外光亮10μs,灭10μs,然后环境光采样10μs)。
  3. AFE把光电信号放大、滤波、ADC转换后,通过SPI把数据传给MCU。
  4. MCU运行算法,计算出SpO2和脉率,然后刷新OLED显示。

这里有个细节:LED的驱动时序和ADC采样必须同步。我一般用MCU的定时器产生PWM波,直接触发LED驱动和AFE的采样保持。这样能保证时序误差小于1μs。

核心原则:信号链的噪声控制是关键。模拟地和数字地要分开,电源要加LC滤波,AFE的输入走线要短且远离数字信号线。我见过有人把AFE的输入走线布在SPI时钟线旁边,结果噪声直接耦合进去,数据根本没法用。

2.5 本章小结

这一章咱们把血氧仪的硬件架构理清楚了。从系统框图到核心模块,再到选型原则,每一步都关系到最终产品的性能。下一章我会手把手教你画原理图,把今天讲的这些模块变成实实在在的电路。

记住一句话:架构设计花的时间越多,后面调试的坑就越少。别急着画板子,先把框图画明白。