0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于STM32物联网开发板(6)--AD8232心电图监测模块

嵌入式技术 来源:嵌入式技术 作者:嵌入式技术 2023-05-16 09:08 次阅读

1.概述

AD8232是一款用于ECG及其他生物电测量应用的集成信号调理模块。该器件设计用于在具有运动或远程电极放置产生的噪声的情况下提取、放大及过滤微弱的生物电信号。该设计使得超低功耗模数转换器(ADC)或嵌入式微控制器能够轻松地采集输出信号。

AD8232采用双极点高通滤波器来消除运动伪像和电极半电池电位。该滤波器与仪表放大器结构紧密耦合,可实现单级高增益及高通滤波,从而节约了空间和成本。AD8232采用一个无使用约束运算放大器来创建一个三极点低通滤波器,消除了额外的噪声。用户可以通过选择所有滤波器的截止频率来满足不同类型应用的需要。

对于可穿戴式运动器械, AD8232通常置于心脏附近的容器中。两个检测电极置于胸肌下面;无需使用驱动电极。由于从心脏到AD8232的距离很短,因此心脏信号很强并且肌肉伪像干扰较小。

应用

  • 健身及运动心率监护仪
  • 便携式ECG
  • 远程健康监护
  • 游戏外围设备
  • 生物电信号采集
pYYBAGRiN-iAJxafAAJE-ntT5jE846.png

引脚

说明

SIGNAL_OUT

PC0信号ADC采集硬件

LO-

PC1比较强输出端

LO+

PC2比较器输出端

SDN

PC3控制输出端(高电平启动)

poYBAGRiOCaAcgYPAALZMBEJZDc863.pngpYYBAGRiODuAFxPFAABhYklY6sU975.png
  • 连接方式

OUT运放输出端,接到ADC的输入端,LOD-、LOD+接到身上的三个电极,导联脱落,这两个口某一个口会变为高电平,所以将这两个口接到输入口上。SDN开启和关闭模块功能,接到GPIO输出口,给它高电平则模块工作,给低电平则不工作。

2.工作原理

poYBAGRiOJ6AIpdeAAFePEs6a3w108.png

AD8232是一款集成前端,适用于对心脏生物电信号进行信号调理来进行心率监护。它内置一个专用仪表放大器(IA)、一个运算放大器(A1)、一个右腿驱动放大器(A2)和一个中间电源电压基准电压缓冲器(A3)。此外,AD8232内置导联脱落检测电路和一个自动快速恢复电路,该电路可在导联重新连接后迅速恢复信号。

AD8232集成专用仪表放大器,可放大ECG信号,同时抑制的电极半电池电位。这是通过间接电流反馈架构实现的,与传统方案相比,该架构还能减小尺寸和降低功耗。

3.硬件配置

开发平台:STM32CubeMx +KEIL5

核心控制器:STM32F103RET6

数据采集方式:ADC

AD8232数据采集通过ADC方式处理,ADC模式配置如下:

1.时钟配置

STM32本身自带ADC功能,是一个12位ADC是一种逐次逼近型模拟数字转换器。它有多达18个通道,可测量16个外部和2个内部
信号源。各通道的A/D转换可以单次、连续、扫描或间断模式执行。 ADC的结果可以左对齐或右对齐方式存储在16位数据寄存器中。
模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高/低阀值。

ADC的输入时钟不得超过14MHz,它是由PCLK2经分频产生。

pYYBAGRiOaqAE-IzAAF-8LV3Q_s965.png

2.ADC模式配置

poYBAGRiOqqAcYDVAAGXskKSAe0615.png

4.数据处理

//ADC初始户此处略过
//读取ADC通道数据
u16 Get_Regular_Channelx(u16 ch)
{
	ADC_ChannelConfTypeDef sConfig = {0};
	sConfig.Channel=ch;//通道号

	sConfig.SamplingTime=ADC_SAMPLETIME_239CYCLES_5;//采样周期
	if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)//ADC通道初始化
   {
     Error_Handler();
   }	
	HAL_ADC_Start(&hadc1);//开启ADC
	HAL_ADC_PollForConversion(&hadc1,20);//等待规则通道转换完成
	return HAL_ADC_GetValue(&hadc1);
}
/*多次测量求平均值*/
u16 AD8232_GetVal(void)
{
  u16 data[10];
  u8 i=0,j=0;
  for(i=0;i<10;i++)
  {
    data[i]=Get_Regular_Channelx(10);
  }
  /*排序*/
  u32 count=0;
  u16 temp;
  for(i=0;i<9;i++)
  {
    for(j=0;j<9-i;j++)
    {
      if(data[j]>data[j+1])
      {
        temp=data[j];
        data[j]=data[j+1];
        data[j+1]=temp;
      }
    }
  }
  for(i=2;i<8;i++)
  {
    count+=data[i];
  }
  temp=count/6;
  return temp;
}

5.运行效果

poYBAGRiOuaAPkDWABWZZiV7vf8470.png
审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • adc
    adc
    +关注

    关注

    95

    文章

    5652

    浏览量

    539489
  • 物联网
    +关注

    关注

    2870

    文章

    41639

    浏览量

    358410
  • STM32
    +关注

    关注

    2240

    文章

    10674

    浏览量

    348806
  • 心电图
    +关注

    关注

    1

    文章

    74

    浏览量

    25161
  • 开发板
    +关注

    关注

    25

    文章

    4434

    浏览量

    94032
收藏 人收藏

    评论

    相关推荐

    基于stm32联网开发板(1)

    、SYN6288语音模块、MAX30102心率血氧传感器、AD8232心电图监测模块、BH1750环境光传感器、RGB全彩灯和3个按键。本
    的头像 发表于 05-16 15:48 1294次阅读
    基于<b class='flag-5'>stm32</b>物<b class='flag-5'>联网</b><b class='flag-5'>开发板</b>(1)

    AD8232开发心电图

    `我想问下:从淘宝上买的AD8232心电传感器模块,可以用430单片机开发吗?只要能显示心电图就行,本人菜鸟一枚,求指教`
    发表于 03-13 09:54

    跪求用ad8232开发心电图仪的stm32代码,有木有大神愿意分享一下

    跪求用ad8232开发心电图仪的stm32代码
    发表于 03-20 22:48

    请问使用AD8232作为心电放大时如何选择心电电极?

    使用AD8232作为心电放大时,如何选择电极?一般电极有干电极/氯化银凝胶电极,一般AD8232推荐使用何种电极?若使用干电极,输入阻抗是否会过大?此外,这种能直接焊接在PCB上的心电
    发表于 09-26 16:58

    AD8232采集心电信号出不来

    一直在尝试用AD8232来采集心电信号,可能是我自己的画板技术不好,没有达到ADI公司AD8232芯片手册上要求的良好的布局布线,导致心电信号一直出不来。在这里请大家帮我在
    发表于 12-04 09:35

    ad8232串口显示心率及心电图

    我想用arduino实现心电图以及心率的显示,不太会用ad8232芯片
    发表于 04-24 11:11

    AD8232心电信号采集遇到的问题

    `1.问题:我按照AD8232芯片数据手册搭建的电路进行心电信号采集,如图1,2输出端用示波器查看,示波器的接地端夹在板子的GND端,波形输出是正确的如图3,且经STM32 ADC转换出来的数据经
    发表于 08-02 13:53

    ad8232有办法可以去掉RL电极吗?

    AD8232目前用的官方的原理 稍微改动了一下 目前使用三个电极可以正常出心电图波形。现在想去掉RL电极,试过RL电极接10M电阻分别到RA,LA电极,但是出来的心电图不正确。有办法
    发表于 11-15 06:30

    使用AD8232作为心电放大时,如何选择心电电极?

    使用AD8232作为心电放大时,如何选择电极? 一般电极有干电极/氯化银凝胶电极,一般AD8232推荐使用何种电极? 若使用干电极,输入阻抗是否会过大? 此外,这种能直接焊接在PCB上的
    发表于 11-22 07:07

    AD8232用于可穿戴设备上,特别是智能手环上,电路设计如何做?

    1、AD8232 用于可穿戴设备上,特别是智能手环上,电路设计如何做?特别是电极部分如何操作? 2、AD8232 作为单导联 AFE 用于心电图检测,其准确性如何?
    发表于 11-24 07:48

    ADI模拟前端芯片AD8232新应用_远程心电监测

    ADI单导联心率监护仪模拟前端AD8232的推出为“心博士”系列远程心电监测仪新产品更高地满足这些特性需求提供契机,基于AD8232设计实现的“心搏士”远程
    发表于 12-09 10:00 7887次阅读

    AD8232

    AD8232用户手册,详细介绍了AD8232的使用方法。
    发表于 03-16 09:29 0次下载

    基于AD8232心电心率图监测测量(原理图+PCB+arduino源码+Processing源码)

     该设计介绍的AD8232单导联心率监测器是一个具有低成本高效的来测量心脏的心率活动模拟器。该心电活动同时可以通过绘制一个心电图心电图和输
    发表于 11-08 16:00 240次下载
    基于<b class='flag-5'>AD8232</b><b class='flag-5'>心电</b>心率图<b class='flag-5'>监测</b>测量(原理图+PCB+arduino源码+Processing源码)

    AD8232:单导联心率监护前端

    AD8232:单导联心率监护前端
    发表于 03-20 14:09 24次下载
    <b class='flag-5'>AD8232</b>:单导联心率监护前端

    AD8232评估板文档

    AD8232评估板文档
    发表于 05-19 13:02 14次下载
    <b class='flag-5'>AD8232</b>评估板文档