采用STM32的心电采集系统电路设计

最新更新时间:2014-12-28来源: 互联网关键字:STM32  心电采集  系统电路设计 手机看文章 扫描二维码
随时随地手机看文章

  心血管类疾病已经成为威胁人类身体健康的重要疾病之一,而清晰有效的心电图为诊断这类疾病提供了依据,心电采集电路是心电采集仪的 关键部分,心电信号属于微弱信号,其频率范围在0.03~100 Hz之间,幅度在0~5 mV之间,同时心电信号还掺杂有大量的干扰信号,因此,设计良好的滤波电路和选择合适的控制器是得到有效心电信号的关键。基于此,本文设计了以STM32 为控制核心,AD620和OP07为模拟前端的心电采集仪,本设计简单实用,噪声干扰得到了有效抑制。

  主控模块电路设计

  主控模块的STM32F103VET单片机是控制器的核心,该单片机是ST意法半导体公司生产的32位高性能、低成本和低功耗的增强型单片机,其内核采用 ARM公司最新生产的Cortex—M3架构,最高工作频率72 MHz、512 kB的程序存储空间、64 kB的RAM,8个定时器/计数器、两个看门狗和一个实时时钟RTC,片上集成通信接口有两个I2C、3个SPI、5个USART、一个USB、一个 CAN、一个SDIO,并集成有3个ADC和一个DAc,具有100个I/O端口。

  前置放大电路的设计

  前置放大电路是模拟信号采集的前端,也是整个电路设计的关键,它不仅要求从人体准确地采集到微弱的心电信号,还要将干扰信号降到最低,由于心电信号属于差分信号,所以电路应采用差动放大的结构,同时要求系统具有高共模抑制比、高输入阻抗、低漂移等特点。因此,选择合适的运算放大器至关重要,这里选择仪用运放 AD620实现前置放大,AD620具有高精度、低噪声、低输入偏置电流低功耗等特点,使之适合ECG监测仪等医疗应用。AD620的放大倍数由1与8脚之间的反馈电阻决定,增益G=49.4 kΩRG+1,由于心电信号中含有较大的直流分量,因此前置放大电路的放大倍数不能过大,在这里选择放大约10倍,因此反馈电阻R6取约5 kΩ,为提高电路的共模抑制能力,这里用一个OP07检测R10,R4上的共模信号驱动导线屏蔽层,消除分布电容。同时用另一个OP07运放和 R5,C3,R7组成右腿驱动电路,在R10,R4上检测到的共模信号经反相放大器后经R7,反馈到人的右腿,进一步抑制了共模信号和50 Hz工频干扰,这里右腿驱动有一个对交流电的反馈通路,交流电的干扰可能对人体产生危害,因此这里要注意做好绝缘措施,同时保护电阻R7尽可能大,取1 MΩ以上。此外系统电源的不稳定也对心电信号的采集有较大影响,因此在本系统中,所有运放的电源脚都并联两个0.1μF和10μF的电容退耦,提高系统的 稳定性,前置放大电路的电路图如图3所示。

  

  图3 前置放大电路

  带通滤波器的设计

  从前置放大电路输出的心电信号还含有较大直流分量和肌电信号,基线漂移等干扰成分,所需采集的有用心电信号在0.03~100 Hz范围之间,因此需设计合理的滤波器使该范围内的信号得以充分通过,而该范围以外的信号得到最大限度的衰减,这里采用具有高精度,低偏置,低功耗特点的 两个OP07运放分别组成二阶有源高通滤波器和低通滤波器,高通滤波器由C11,C17,R7,R10组成,截止频率f1≈0.03 Hz,低通滤波器由R8,R9,C10,C13组成,截止频率约为f2≈100 Hz,系统带通滤波器的电路如图4所示。

  

  图4 带通滤波器

  50 Hz双T陷波器设计

  工频是心电信号中最主要也最常见的干扰源,虽然前面的右腿驱动电路对其有一定的抑制作用,但是仍有较大部分进入了后面的电路,因此有必要设计截止频率为50 Hz的带阻电路来进一步滤除干扰,带阻电路也称陷波器,顾名思义,带阻电路就是使某特定频率范围内的信号大幅衰减,而对该频率范围外的信号几乎不产生影 响。双T陷波电路是典型的带阻电路,在双T网络中,两个T型网络的参数是对称的,如图5所示的50 Hz双T陷波电路中,R13=R14=2R16=R=32 kΩ,C20=2C19=2C18=C=200 nF,本质上是由两个T型高通滤波器和低通滤波器并联组成,图5所示电路的截止频率f0=1/2πRC≈50 Hz。

  

  图5 50Hz 带阻滤波器

  主放大以及电平抬升电路设计

  心电信号的幅度约为0~4 mV,STM32 AD转换的输入电平要求为3.3 V,因此,为了单片机能够处理采集到心电信号,需将采集到的模拟信号放大800~1 000倍。前置放大电路已放大了10倍,理论上主放大电路约放大100倍即可。为确保信号不失真,一般单级放大不超过10倍,因此,可采取两级放大的方式 来达到放大100倍的效果,U9固定放大10倍,U11的反馈电阻采用可调电阻,这样就可以通过变阻器的调节达到放大100的效果。此外,因为STM32 单片机的A/D采集不能采集负电平,因此这里设计了如U7所示的电平抬升电路把心电信号提到0电平以上,方便单片机采集。

  

  图6 主放大以及电平抬升电路电路

  本设计实现的是以STM32为控制核心,以AD620,OP07为模拟信号采集端的小型心电采集仪,该设计所测心电波形基本正常,噪声干扰得到有效抑制,电路性能稳定,基本满足家居监护以及病理分析的要求,整个系统设计简单,成本低廉,具有一定的价值。

关键字:STM32  心电采集  系统电路设计 编辑:探路者 引用地址:采用STM32的心电采集系统电路设计

上一篇:基于DS1820水温测试测量电路设计
下一篇:基于ADC车载检测电路设计

推荐阅读最新更新时间:2023-10-12 22:51

FSMC如何读写CPLD
STM32通过FSMC读写CPLD的程序,CPLD挂在STM32的地址线和数据线上,将CPLD看做片外RAM的方式来进行读写,在我做的板子上CPLD挂在第四个区,因此基地址是0x6c000000,通过FSMC来进行读写,程序较为简单,具体的地方在函数中都有注释,仅供参考。
[单片机]
FSMC如何读写CPLD
嵌入式stm32学习:外部中断
bsp_exti.h #ifndef __EXTI_H #define __EXTI_H #include stm32f4xx.h //引脚定义 /*******************************************************/ #define KEY1_INT_GPIO_PORT GPIOA #define KEY1_INT_GPIO_CLK RCC_AHB1Periph_GPIOA #define KEY1_INT_GPIO_PIN GPIO_Pin_0 #define KEY1_INT_EXTI_PORTSOURCE EXTI_
[单片机]
基于单片机的无线环境终端测试系统电路设计
  在整个系统的设计过程中,终点和节点都需要一个主控芯片进行处理。主芯片选用MSP430F5438($4.8375)系列单片机。在信号调制方面采用了OOK调制方案。在高频功放方面,采用了分立元件自制戊类放大器使用NEC公司的产品2SC3355做功放管。最后确定通信协议方案选择,设计思想足由检测终端发起一次信息阿步传输,所有的节点根据自己的编号在不同的时隙发送信息,中继节点自行搜索判断。通过一系列的选择和设汁,整个系统的结构设计如图1所示。      图1 系统整体方案框图   系统以MSP430F5438($4.8375)单片机作为终端和节点的主控芯片,光照探测由光敏电阻来实现,温度可由单片机内部自带的温度传感器得到
[单片机]
基于单片机的无线环境终端测试<font color='red'>系统</font><font color='red'>电路设计</font>
STM32进入和退出睡眠模式例程
1.设计要求 要求系统按如下方式进入和退出睡眠模式:在系统启动2秒后,将RTC在3秒钟之后配置为产生一个报警事件,接着通过WFI指令使系统进入停机模式。如果要唤醒系统到正常模式,可通过按Key按钮;否则,在3秒钟后,会产生RTC报警中断自动将系统唤醒。一旦退出停机模式,系统时钟被配置成先前的状态(在停机模式下,外部高速振荡器HSE和PLL是不可用的)。经过一段延时之后,系统将再次进入停机状态,并可按上述操作无限重复。 2. 硬件电路设计 硬件电路采用与7.1小节应用实例一样硬件电路,可见图7-10。其中Key按钮用于通过PB9产生一个外部中断,LED1、LED2、LED3、LED4则用于显示处理器所处的模式和中
[单片机]
STM32 | 两块STM32之间的SPI主从通信实例
一、整体框图及说明 这里使用 STM32F429IGT6 作为主机,STM32F103ZET6 作为从机,都配置为全双工。本例要实现的功能就是主、从机之间的数据互传。 主机往从机发送的数据为: 从机往主机发送的数据为: 二、关键代码 主机关键代码: 从机关键代码: 可见,主机与从机的代码大多都一样。只是从机多了一步启动传输的操作,这一步很关键,少了这一步传输就不正常。这是为了制造主机发送的同时也要接收到数据的条件。这一点参考手册里也有相关说明: 此处,要营造这样的条件,必须先启动从机,然后再启动主机。只有保证主机发送的同时有接收到数据,才能保证其时序的正常,否则可能会产生数据错位,或者会产生多余数据
[单片机]
<font color='red'>STM32</font> | 两块<font color='red'>STM32</font>之间的SPI主从通信实例
STM32之知其然,知其所以然
/*the core document(.s)**/ ; Reset handler //复位处理 Reset_Handler PROC EXPORT Reset_Handler // IMPORT SystemInit // IMPORT __main //load and operate LDR R0, =SystemInit BLX R0 LDR R0, =__main BX
[单片机]
用keil烧录stm32注意改地址
注意修改途中的 RAM和ROM地址,尤其是在IAP设置的时候。
[单片机]
用keil烧录<font color='red'>stm32</font>注意改地址
stm32单片机休眠模式后无法下载程序怎么办
利用stm32单片机的休眠模式,使单片机间歇的休眠从而实现低功耗的目的。往往会出现进入休眠后无法唤醒,导致下一次程序烧不进去。通常的解决办法是:一般的开发板或单片机最小系统都会有复位键,按住复位键,点下载,然后松开复位键即可。 我遇到的问题是:误入了stm32(STM32L051C6T6)的STOP模式,又没有写入相应的唤醒方法,导致后续的程序不能下载。使用MDK5 点击load时总会出现No target connected。自己设计的最小系统又没有加入复位键。。。 有以下几种解决办法: 1、可以将单片机的NRST引脚引出来,外接复位键。(关于引脚查看可用ST官方软件STM32cubeMX,很方便) 2、通过ISP的方式
[单片机]
小广播
最新电源管理文章
换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved