☰
臂式数字血压计硬件原理图设计解析:信号链与电源管理
2026/10/24 21:56:45 网站建设 项目流程

简介:这是一份面向嵌入式硬件工程师、电子竞赛选手及医疗电子初学者的臂式数字血压计最终原理图资源,完整呈现过压保护、信号采集与滤波放大、电磁阀控制、MCU最小系统及电源管理等核心电路设计。资源为1个PDF文件,压缩包仅225KB,便于直接查看与打印对照;PDF内包含元件参数、芯片型号及关键网络标注,适合作为硬件分析、电路复刻或调试排错的参考底图。目前已有248人学习下载。原理图围绕实际血压测量流程展开:前端以1N4007实现过压保护,RC有源滤波与OP312放大处理脉搏波,SOT-89晶体管驱动电磁阀,TP4056负责锂电池充电与供电切换,各模块之间的信号流向和接口关系清晰。对于需要理解臂式血压计工作原理、验证外围电路参数或开展二次开发的读者,这份最终版原理图能提供直观、完整的设计蓝本,减少从零梳理电路的时间。

1. 臂式数字血压计的硬件原理图:先解决“脉搏波藏在袖带压力里”的问题

A同学第一次画臂式数字血压计时,把传感器输出直接接到放大器的同相端,结果示波器上看到的是整段袖带压力曲线,脉搏波完全看不见。原因并不玄学:袖带充气到一两百毫米汞柱时,压力传感器输出的是“直流压力 + 微小脉搏波”,脉搏波幅度只有几十微伏到几毫伏,直接放大必然被直流分量和充放气漂移淹没。所以这份臂式数字血压计最终原理图把信号链路拆成了过压保护、脉搏波高通滤波、脉搏波低通滤波、信号放大、袖带压通道五段,各管一段,最后才交给 MCU 的 ADC。这套方案适合正在做电子设计课设、毕业设计或产品样机硬件开发的人,照着它能理解整机架构,也能直接改参数验证。接下来按需求拆解、总体设计、信号链实现、驱动与电源、排查避坑、验收答辩的顺序完整展开。

2. 需求拆解与技术选型:信号链、控制链与电源链三条主线

2.1 功能需求与设计指标:先想清楚整机要完成什么动作

设计硬件原理图之前,先把整机工作流程写出来:上电自检 → 气泵对袖带充气 → 压力上升到设定值 → 阶梯放气 → 采集袖带压和脉搏波 → 计算收缩压、舒张压和脉搏率 → LCD 显示 → 通过串口上传到上位机。这个流程直接决定了原理图必须有三种信号和三种输出。三种输入信号是:袖带压力信号,对应 MCU 的 PA6/pressure 引脚;脉搏波信号,对应 PA2/Pulse_wave 引脚;还有一个比较器输出 Cmp_Result,用于低功耗模式下快速判断是否有稳定脉搏波。三种输出分别是:气泵 PWM 驱动(PE9/PWM)、电磁阀控制(PC6/Valve_control)、第二电磁阀控制(PC8/Valve2_control)。

指标方面,压力传感器量程按 0~300 mmHg 设计,气泵电机使用 5V 供电,逻辑和模拟部分用 3.3V,电池供电时需要有电源切换和充电管理。再者,整机要支持休眠唤醒,所以原理图里增加了睡眠唤醒按键和休眠控制电路。这些需求都是可以写在设计报告“需求分析”章节里的内容,也是后文每一个模块存在的依据。如果只是抄原理图而不写需求,评审时很容易被问住。

2.2 传感器、运放与比较器的选型逻辑

传感器选的是 XGZP6847 压力传感器,型号后缀 040KPG 代表量程 40 kPa,约 300 mmHg,正好覆盖血压测量范围。它输出的是毫伏级差分信号,内部是压阻式电桥,所以后续必须接高输入阻抗的放大器。原理图里把 OUT 引脚输出的信号经过 RC 网络后送进 OP312 运放,OP312 是通用型运放,用于构建同相放大或差分放大级,增益由 R10(6kΩ)和 R8(515kΩ)等电阻决定,约 86 倍。这个增益量级对几十微伏的脉搏波来说是合理的,太小了 MCU 的 ADC 分辨不出波形,太大了容易把运放自身的失调电压也放大进去。

TL331IDBVR 在原理图中作为比较器使用,输入来自放大后的脉搏波信号,输出 Cmp_Result 送给 MCU。它的作用是做一个阈值判断:当脉搏波幅度超过设定电平时,输出翻转,MCU 可以通过外部中断快速感知,不需要一直开 ADC 采样,这对降低功耗很有用。TSV321RILT 则担任缓冲、分压和比较的辅助角色,比如生成 1/2AVCC 偏置电压,或者在电源管理部分做电压比较。选这些器件的原因很简单:常见、便宜、单电源供电、封装大容易手工焊接,在课设和样机阶段非常合适。

2.3 模块划分与原理图页规划

从整张原理图看,系统可以分成五个模块:信号采集模块,包含 XGZP6847、RC 滤波网络、OP312 放大、TL331 比较器和 TSV321 缓冲;最小系统模块,包含 MCU、复位电路、USB 接口、串口转 USB 芯片和 LCD;驱动模块,包含气泵电机驱动和两个电磁阀驱动,核心器件是 SOT-89 封装的三极管 Q1/Q2/Q4 以及续流二极管 1N4007;电源模块,包含 TP4056 充电管理、LDO 稳压、1N5819 供电切换、NCE3401A 电源开关和功耗测量接口;人机接口模块,包含按键、独立按键、LCD 和调试排针。

这些模块在原理图上用网络标号连接而不是密密麻麻的走线,例如 VCC_IN、VBAT、VCC_O、AVCC、AGND、GND。设计页规划时,我会把电源放在左上角,模拟前端放在中间,MCU 放在右侧,驱动和接口放在下方,方便评审时顺着信号方向讲。模拟地 AGND 和数字地 GND 要分开走,最后在电源输入端单点连接,否则脉搏波这种小信号很容易被电机和电磁阀的开关噪声干扰,这个点后面避坑章节还会再提。

模块核心器件功能
信号采集XGZP6847、OP312、TL331、TSV321压力与脉搏波检测、放大、比较
最小系统MCU、复位电路、USB/串口、LCD数据处理、显示与通信
驱动模块SOT-89 三极管、1N4007气泵与双电磁阀开关控制
电源模块TP4056、LDO、1N5819、NCE3401A充电、稳压、供电切换、休眠
人机接口按键、LCD、调试排针操作与调试入口

3. 总体架构设计:最小系统、电源域与三路被控输出的连接关系

3.1 最小系统的引脚规划与接口资源分配

MCU 是整个原理图的核心,PA2 和 PA6 是两路 ADC 输入,分别采集脉搏波和袖带压力;PA5/Vref 用作 ADC 参考电压;PE9/PWM 输出到气泵电机驱动;PC6 和 PC8 分别控制两个电磁阀;PE0/Power_Control 控制休眠电源;PD2 接睡眠唤醒按键。PA9/PA10 是一组串口,用于上位机通信;PA11/PA12 是 USB_D-/USB_D+,连接到串口转 USB 部分。这样的分配保证了模拟输入、PWM 输出、开关控制和通信接口互不冲突,也方便在排针上引出调试。

引脚分配直接决定 PCB 布局是否顺畅。我一般会把 ADC 输入引脚安排在 MCU 的一侧,让模拟前端走线尽量短;PWM 和电磁阀控制引脚放在另一侧,和驱动电路靠近,避免控制信号穿过模拟区。原理图里的 H2/H3 是 PM2.54 2×18 排针,把 PA、PB、PC、PD、PE 大部分引脚引出,这就是一个完整的硬件调试口,不依赖仿真器也能用逻辑分析仪量信号。

3.2 复位、按键、USB、LCD 与调试口的实现细节

复位电路由 RST 引脚、C18(0.5μF)和 R42(10kΩ)组成,上电时电容充电使 RST 保持一段时间低电平,让 MCU 稳定启动。按键部分有三组:SW6、SW8 是独立按键,带 0.5μF 电容和 10kΩ 电阻做硬件消抖;SW1 是睡眠唤醒按键,接到 PD2,配合休眠控制电路实现低功耗唤醒。USB 部分由 U18/U19 完成串口转 USB,USB_D+ 和 USB_D- 走差分线到 MCU,板上预留了 5V 供电输入和 VBAT 电池接口。

LCD 模块接在并行数据总线上,这部分主要消耗 PE、PD、PC 端口的引脚,因此原理图上能看到大量端口网络标号直接连到 LCD 封装。调试排针 H2/H3 除了引出 DEBUG 引脚,还把 3.3V、5V、GND、AGND 都引出来,这样调试时可以直接在排针上量电压。这里有一个容易忽略的点:按键和复位电路的地必须和 MCU 数字地同属一个 GND 网络,不能混到 AGND,否则按键操作时会引起模拟信号跳变。

3.3 电源域划分与整板信号流向

整板电源域分为 VBAT 电池域、VCC_IN 输入域、VCC_O 驱动电源域和 3.3V 逻辑电源域。电池或外部 5V 经供电切换后进入 LDO 稳压器,输出 3.3V 给 MCU、LCD、运放和传感器。VCC_O 是驱动电源,专门给气泵电机和电磁阀供电,由 NCE3401A 等 MOS 管控制开关,这样可以在休眠时彻底切断驱动电路的供电。模拟电路使用 AVCC 和 AGND,从 3.3V 处再串磁珠或小电阻隔离,防止数字噪声串入模拟前端。

信号流向从传感器 OUT 引脚开始,经过高通滤波、低通滤波、放大、比较后分成两路:一路进 PA2 做脉搏波 ADC 采样,一路经 TL331 比较器输出 Cmp_Result 到 MCU 中断引脚。袖带压信号则单独走 PA6。控制流向反过来,MCU 输出 PWM 到电机驱动,输出高低电平到两个电磁阀驱动。理解了这个流向,整张原理图就能按“输入信号 → 处理 → ADC → 控制输出”的顺序讲清楚,评审时按这个顺序一页页翻图就行。

4. 核心信号链实现:脉搏波高通、低通与放大参数计算

4.1 脉搏波高通滤波:RC 网络的截止频率计算

信号链从 XGZP6847 的 OUT 引脚出来后,先经过一组高通滤波,目的是把袖带充气产生的缓变压力分量和传感器直流偏置滤掉,只留下快速变化的脉搏波成分。原理图中使用 R3(1kΩ)和 C3(4.7μF)组成高通网络,截止频率按公式 fc = 1/(2πRC) 计算,大约在 33Hz 左右。这个频率看起来不低,但它的意义不是保留低频脉搏主波,而是把“充放气引起的缓慢漂移”和“传感器电桥失调”挡在放大级之前。

这里要提醒一下:高通之后信号失去直流分量,后续放大级必须重新建立偏置,否则波形会被削顶。原理图里的 1/2AVCC 偏置就是干这个用的,它把交流信号叠加在 AVCC 一半的直流电平上,让运放输出摆幅最大化。很多同学抄电路时不理解这个偏置的作用,直接去掉,结果放大后的波形只有上半部分,这就是原因。

4.2 脉搏波低通滤波与信号放大:频带宽度和增益分配

高通之后是低通滤波,R7(1.1kΩ)和 C1(1μF)组成低通网络,截止频率约 146Hz,用来抑制电机、电磁阀和电源开关产生的高频噪声。两级滤波合起来形成一个约 33Hz ~ 146Hz 的带通通道,把脉搏波的主要能量保留下来,同时把直流和射频噪声都压掉。接着信号进入 OP312 运放,根据 R8(515kΩ)和 R10(6kΩ)的比例,增益约为 1 + R8/R10 ≈ 86 倍。这个增益值需要根据传感器灵敏度微调,如果传感器输出偏大就减小 R8,输出偏小就增大 R8。

袖带压力通道不一样,它只需要慢变化的压力包络,所以原理图上对袖带压低通做了更低的截止频率设计,约为 5Hz 左右,只保留压力曲线的包络,用于判断袖带内当前压力值。设计时不要把袖带压通道和脉搏波通道混用,否则 MCU 分不清直流压力和交流脉搏波。PA6/pressure 和 PA2/Pulse_wave 两个引脚分开采样,软件上才能同时得到“当前压力”和“脉搏波形态”两个数据。

4.3 参数核算脚本:验证 R/C 组合是否落在设计带宽内

拿到原理图后,第一步应该做参数核算,而不是直接画板。我用一个简单脚本把关键 RC 组合算一遍,确认与设计目标一致。

import math # 脉搏波高通滤波器:R3 = 1kΩ, C3 = 4.7μF R3 = 1e3 C3 = 4.7e-6 fc_hp = 1 / (2 * math.pi * R3 * C3) # 脉搏波低通滤波器:R7 = 1.1kΩ, C1 = 1μF R7 = 1.1e3 C1 = 1e-6 fc_lp = 1 / (2 * math.pi * R7 * C1) # 放大级增益:R8 = 515kΩ, R10 = 6kΩ R8 = 515e3 R10 = 6e3 gain = 1 + R8 / R10 print(f"高通截止频率: {fc_hp:.1f} Hz") print(f"低通截止频率: {fc_lp:.1f} Hz") print(f"放大增益: {gain:.1f} 倍")

运行结果分别是 33.9Hz、144.7Hz 和 86.8 倍。这个脚本的价值在于,当你把 R3 改成 10kΩ 或把 C3 改成 1μF 时,能立刻看到带宽变化,避免靠感觉调参。实际调板时我一般先把放大增益固定,只调滤波电容,因为电容对信号幅度影响小,改电阻会影响增益和截止频率两个参数,不好控制。

4.4 比较器和缓冲器的作用:从模拟信号到数字中断

放大后的脉搏波还要经过 TL331 比较器,参考阈值由电阻分压设定,输出 Cmp_Result 送给 MCU。当脉搏波幅度超过阈值时,比较器输出翻转,MCU 进入中断记录一次心跳事件。这个电路不是用来测波形的,而是用来做低功耗检测:休眠状态下 MCU 不开 ADC,只开外部中断,等 Cmp_Result 出现跳变再唤醒。TSV321 缓冲器则负责把传感器的差模信号转成适合单端 ADC 的电平,同时提供 1/2AVCC 偏置电压。

注意:模拟前端所有走线应尽量短,AGND 单独铺铜,TL331 的输入输出之间不要长距离平行布线,否则反馈会形成振荡。

5. 外设驱动与电源管理:气泵、双电磁阀与充放电控制

5.1 气泵 PWM 驱动与双电磁阀开关电路

气泵电机由 PE9/PWM 控制,信号经过三极管放大后驱动电机,1N4007 二极管并联在电机两端做续流保护。电机是感性负载,关断瞬间会产生反向电动势,如果没有续流二极管,反向电压会击穿驱动管。原理图中 1N4007 的位置就在电机 Pin2 两侧,负极接电机电源正端,正极接驱动管集电极,方向接反会直接短路,这是最常见的翻车点之一。

两个电磁阀由 PC6 和 PC8 控制,同样使用 SOT-89 封装的三极管 Q2、Q4 做开关,电磁阀线圈两端并联 1N4007 续流。电磁阀不需要 PWM,只需要开关,所以 IO 口输出高低电平即可。基极串 1kΩ 电阻限流,确保三极管工作在饱和区。和继电器方案相比,三极管驱动的好处是体积小、响应快、没有机械噪音,缺点是不能直接驱动大电流负载,但血压计电磁阀的工作电流在几百毫安以内,完全够用。

5.2 TP4056 充电电路与 1N5819 供电切换

充电部分使用 TP4056,PROG 引脚接 R36(1.2kΩ),对应充电电流约 1A。CHRG# 和 STDBY# 引脚分别接红色和绿色 LED,充电时红灯亮,充满后绿灯亮。CE 引脚接使能,BAT 直接接锂电池。C16(10μF)和 C8(100nF)分别放在输入和输出端做滤波。很多同学在这个环节会忽略 PROG 电阻的功率,实际上电阻只承载小电流,普通贴片电阻即可,但充电电流设置过高时电池发热明显,需要同时检查 PCB 走线宽度。

供电切换通过 1N5819 二极管实现。外部 5V 接入时,经 D7 给 VCC_IN 供电,同时给 TP4056 提供充电电源;外部断开时,电池 VBAT 经二极管和 LDO 继续给系统供电。1N5819 是肖特基二极管,正向压降约 0.3V,比普通二极管低,适合这种低压切换场景。D4 二极管也承担类似作用,实现 VBAT 与 VCC_IN 的隔离,避免外部电源向电池反向充电。

5.3 休眠控制与功耗测量

休眠控制是整机低功耗的关键。PE0/Power_Control 控制 NCE3401A(Q5/Q6)电源开关,休眠时将 VCC_O 驱动电源切断,气泵和电磁阀彻底断电,MCU 进入 STOP 模式,仅保留外部中断唤醒引脚 PD2。SW1 按键接地,按下时产生下降沿,唤醒 MCU。功耗测量接口 H4 串联在电池回路中,配合 C2(10μF)滤波,可以用万用表电流档串联测量整机休眠电流和峰值电流。

设计时要注意 NCE3401A 是低导通电阻的 MOS 管,栅极驱动电平必须足够高才能完全导通,如果控制引脚直接接 MCU 的 3.3V 一般没问题,但要注意源极和漏极方向不能接反,接反了 MOS 管内部的体二极管会导致电源关不断。排查休眠电流偏大的问题,通常要先量 VCC_O 在休眠时是否为 0V,如果不是,说明 MOS 管没关死或负载有其他供电通路。

6. 避坑与排查:血压计硬件原理图最容易翻车的五个位置

6.1 脉搏波被袖带压力淹没,ADC 采不到心跳波形

现象:PA2 引脚用示波器看,只有一条缓慢变化的压力曲线,看不到脉搏波小尖峰。原因通常是高通滤波器被后级电路旁路,或者运放偏置不对,脉搏波信号被叠加到直流电平后超出 ADC 量程。解决方法是按信号顺序逐级量电压:先量 XGZP6847 OUT 引脚,再看 C3/R3 高通输出,确认有交流分量,再量 OP312 输出。如果每一级都正常但 MCU 采不到,检查 PA2 引脚配置是否错成数字输入。血泪经验是:先确认信号走到了芯片引脚,再怀疑代码。

6.2 电磁阀一直放气或打不开

现象:上电后电磁阀有持续发热声,或者充气时气从阀体漏出。原因有三个,一是三极管基极驱动电流不足,导致开关管工作在放大区而不是饱和区;二是续流二极管方向接反,造成电源短路;三是控制引脚逻辑反了,PC6/PC8 高电平有效还是低电平有效与三极管接法有关。解决方法是量基极电压,驱动高电平时基极应有约 0.7V 压降,集电极应接近 0V。如果基极电压正常但集电极仍是高电平,更换三极管或减小基极限流电阻到 510Ω。

6.3 TP4056 充电指示灯乱闪,红灯绿灯交替跳变

现象:插上外部电源后,CHRG# 和 STDBY# 对应的 LED 不停闪烁,无法稳定充电。原因通常是 PROG 电阻选得太大或太小,导致充电电流判定不稳定;也有可能是电池保护板输出阻抗偏高,TP4056 检测到电池电压在阈值附近震荡。解决方法是确认 R36 阻值,1.2kΩ 对应约 1A 充电电流;如果电池容量只有 500mAh,把充电电流降到 500mA,R36 改到 2.4kΩ。还要检查 TP4056 的 GND 与电池负极是否在 PCB 上就近单点接地,不要穿过数字地。

6.4 串口下载失败,复位不稳定

现象:通过 USB 转串口下载程序时,经常出现握手失败,偶尔成功一次。原因多是复位电路的 RC 时间常数不合适,或者 USB 芯片与 MCU 没有共地。原理图里 C18 为 0.5μF、R42 为 10kΩ,时间常数约 5ms,如果电容换成 10μF,上电复位时间会拉长到数百毫秒,下载时序就会出问题。解决方法是保持原参数,确认 USB 部分的地线与 MCU 数字地直接相连,不要在中间走细长地线,必要时给 USB_D+/USB_D- 加 22Ω 串联电阻。

6.5 整机睡眠电流偏大,电池很快耗尽

现象:按下休眠键后电流仍然有几十毫安,达不到低功耗指标。原因一是 VCC_O 驱动电源没有被 NCE3401A 切断,电磁阀或电机仍有微弱漏电;二是 TP4056 充电部分没有完全关断,BAT 引脚对地存在泄放电阻;三是 MCU 的 GPIO 悬空,端口漏电流叠加。解决方法是休眠时把未使用的 GPIO 全部配置为输出低或模拟输入,把 PE0/Power_Control 拉低确认 VCC_O 为 0V,然后分别断开负载排查。功耗测量接口 H4 就是为此预留的,串一个万用表逐模块测电流。

7. 原理图验收与答辩准备:一份自检清单加三个讲解技巧

7.1 投板前的自检清单

原理图画完后不要直接投板,先过一遍自检表。电源部分检查 VCC_IN、VBAT、VCC_O、3.3V、AVCC 五路电源是否都有明确来源和滤波电容;信号链检查 PA2 与 PA6 是否分别连接脉搏波通道和压力通道,有没有错位;驱动部分检查气泵和两个电磁阀是否都有续流二极管,二极管方向是否一致;接口部分检查 USB_D+/USB_D-、串口 TX/RX 是否交叉。每一格都打勾后再进入 PCB 布局阶段,这部分如果能截图放进设计报告,答辩时非常加分。

7.2 答辩讲解的三个技巧

第一,按“电源从哪里来,信号到哪里去”的顺序讲,不要逐个电阻讲,评审关心的是系统架构。第二,遇到参数提问时,主动把 33.9Hz 高通、144.7Hz 低通、86.8 倍增益这三个数字报出来,并且解释为什么带通选这个范围。第三,准备好两个反问:如果传感器换成 100kPa 量程怎么改电路?如果电池容量减半怎么调充电电流?能答出“换传感器要重新算增益电阻,换电池要改 PROG 电阻”就够了。从那以后我每次画完带模拟前端的原理图,都会强制把“电源 → 传感器 → 滤波 → 放大 → ADC → 控制 → 负载”这条完整链路走一遍,确认没有断点再投板。希望帮到你。

本文还有配套的精品资源,点击获取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询