关于GD32F350R8的单导联心电采集系统的介绍和分析

描述

1项目介绍

传统心电监测常见有常规心电图检测、监护心电图检测和动态心电图检测。常规心电图检测使用12导联同步检测,大部门在医院或体检中心使用,存在设备体积大、不适合院外监护等缺点。监护心电图采用三导联检测心电信号,主要有CCU、ICU监护室的实时心电监护仪,按次数收费,仅限于医院。而常见的动态心电图检测配合不同数量的电极,可检测不同导联心电信号,设备需要提前预约,数据分析和报告获取都必须前往医院,且不够便携。

为了更加便捷高效地监测人体的心律特征,设计了一种基于GD32F350R8的单导联心电采集系统。该系统采用单导联的方式获取心电信号,只需将导联电极片安装于使用者手上,即可随时随地查看自己的心电图,无需前往医院专门检查自己的心脏健康情况。系统采用蓝牙的传输方式,将心电信号通过蓝牙实时上传至手机APP端,APP端集成心电信号的滤波算法,实时绘制使用者的心电图,同时,在测量结束后,给出测量报告。该系统不但解决了传统心电监测设备不方便的问题,还可以为使用者提供心电分析报告及心电图,为进一步医生确诊提供详细的参考依据。

2方案框图

蓝牙模块

图1 系统框图

如图1所示,系统主要由微控制器GD32F350R8、TFT显示屏、心电信号处理电路、金属电极片、独立按键、LED显示灯、蓝牙模块、手机APP和服务器组成。其中,微控制器GD32F350R8、独立按键和LED显示灯集成于GD32F350R8开发板上,其他部分的硬件和软件为自主设计。系统利用的GD32F350R8的资源包括RTC、定时器Timer0、串口USART0和串口USART1、ADC转换、SPI总线、外部中断EXTI和GPIO控制,融合心电信号处理算法,可以实现实时心电数据的采集,并通过蓝牙传输至APP端进行算法处理和绘制。

GD32F350R8通过UART0与蓝牙模块(nRF52832)连接,通过外部中断的方式判断蓝牙是否连接上APP,通过GPIO控制LED指示灯,通过外部中断的方式判断独立按键,通过SPI/UART1与TFT显示屏连接,并将RTC实时时钟显示在屏幕上,接收心电信号处理电路的输出信号,通过ADC采样,利用TIMER0定时采样,即设置采样率。GD32F350R8的时钟源采用外部高速晶振8MHz以及外部低速时钟32.768KHz(自己焊接)。

蓝牙模块以nRF52832为主控芯片,通过串口与GD32F350R8连接,将串口数据转成蓝牙数据,传输至手机APP实时显示并给出评估报告。

TFT显示屏主要显示图片、动态滚动字幕、动态实时时钟、静态文字等。

心电信号处理电路主要用于放大滤波稳定微弱的心电信号,是整个系统功能的基础条件。

下面,分各个模块进一步详细介绍。

3控制和开发流程

一、硬件设计

3.1 GD32F350R8最小系统(开发板)

图2 GD32F350开发板

作为主MCU,系统功能的实现,调用内部很多资源。该系统采用了GD32F350R8的以下功能:

异步通信接口UART0和UART1

外部高速时钟HXAL,8MHz晶振(自己焊接)

GPIO 通用输入输出接口

软件模拟I2C,SPI总线通信协议

RTC实时时钟;

外部低速时钟LXAL,32.768KHz晶振(自己焊接)

Timer0定时器捕获高速输入

12位ADC单次采样连续模式

外部中断,边沿触发

可以说,兆易创新推出的这款GD32F350R8芯片,无论是从高频率的处理速度还是资源的配备上,都是能够满足绝大部分的应用。

3.2 心电信号处理电路

蓝牙模块

图3 心电信号处理电路

蓝牙模块

图4 心电信号处理电路供电电路

如图3所示,为心电信号处理电路(由于知识产权原因,具体参数不提供),该部分是整个系统能够实现最终功能的基础,包括心电信号放大、滤波、稳定。电路采用3.0V直流稳压电源供电,图4为心电信号处理电路供电电路。心电信号处理电路输出端信号传入至GD32F350R8的通道11进行ADC转换。GD32F350R8采用逐次逼近方式的12位模拟数字转换器ADC,有 19 个多路复用通道,可以测量来自16个外部通道,2个内部通道和电池电压(VBAT)通道的模拟信号。模拟看门狗允许应用程序来检测输入电压是否超出用户设定的高低阈值。每个通道的A/D 转换可以配置成单次、连续、扫描或间断转换模式。如果GD32F350R8能够支持差分输入ADC就更好了。本系统设置ADC为12位分辨率,采用定时器设置采样频率,采样频率为250Hz。

图5 心电信号处理电路实物图

图6 金属导联电极片

如图5所示,为心电信号处理电路实物图。电路的输出为一路模拟信号输入至GD32F350R8的ADC通道,电路的输入为三个金属导联电极片,分别接人体任意三个部位,但不能两两短路,如图6所示,为三个金属导联电极片。

3.3 TFT显示屏和RTC实时时钟

图7 TFT显示屏显示内容及实时时钟

TFT显示屏主要显示图片、静态文字、滚动字幕、实时时钟以及绘制心电图波形。

RTC实时时钟的初始化设置可以通过APP设置,APP通过蓝牙下发指令,蓝牙模块将指令通过串口下发,如图7所示,设置成功后,实时时钟会显示在TFT显示屏上,并按秒更新计数。

3.4 蓝牙模块

蓝牙模块

图8 nRF52832最小系统原理图

系统采用nRF52832设计蓝牙模块,最小系统电路图如图8所示。上电后,nRF52832广播蓝牙连接消息,未与手机蓝牙建立连接时,引脚STATUS为高电平,LED闪烁,建立蓝牙连接时,引脚STATUS为低电平,LED常亮,触发GD32F350R8外部下跳沿中断,GD32F350R8开启定时中断和ADC采样,nRF52832通过串口接收心电数据,并通过蓝牙传输至手机APP,手机APP绘制实时心电图,如图9所示。断开蓝牙连接后,引脚STATUS为高电平,LED闪烁,触发GD32F350R8外部上升沿中断,GD32F350R8关闭定时中断和ADC采样,手机APP结束绘制心电图,并给出心电图综合评估报告,如图10所示。

图9 实时心电图

蓝牙模块

图10 心电图综合评估报告

3.5 独立按键和LED显示灯

这两个部分的硬件在GD32F350R8的开发板上有,主要用于按键事件触发及工作指示功能。当开始心电采集时,LED显示灯呈流水灯式变化,否则静止不动,保持当前状态。

二、软件设计

蓝牙模块

图11 GD32F350软件设计流程图

GD32F350R8软件设计流程图如图11所示。首先,系统初始化,包括GPIO输入输出、外部中断、ADC初始化、SPI初始化、串口UART0和UART1初始化、定时器初始化、系统参数初始化等等。蓝牙未连接时,STATUS引脚为高电平,当蓝牙连接上,STATUS引脚由高电平变为低电平,触发GD32F350R8的外部下跳沿中断事件,则开启ADC和定时器,LED灯开始流水灯式闪烁,系统开始正常工作;当蓝牙断开时,STATUS引脚由低电平变为高电平,触发GD32F350R8的外部上升沿中断事件,则关闭ADC和定时器,LED停止闪烁;

蓝牙模块

图12 nRF52832蓝牙模块软件设计流程图

nRF52832蓝牙模块的软件设计流程图如图12所示,其主要功能为将串口数据转成蓝牙数据发送至APP手机客户端,并通过STATUS输出引脚通知GD32F350R8是否已经连接上蓝牙。串口数据遵循数据格式,若不是定义的数据格式的数据,将被视为无效数据丢弃,目的是保证系统的安全性和不可复制性。

4实验图片和视频

本作品采用单导联采集人体心电信号,通过算法提高心电测量的精确度和准确度,为使用者提供心电相关联的生理健康参数指标,便于使用者能够更加方便快捷地获取到准确的数据,为身体感到异常时提供就医参考数据及病历,同时间接改变使用者的生理作息,引导使用者坚持健康的生活方式。

本作品可以应用于智慧养老,提供心电监测及改善产品和集成软件API接口。还可以应用于智慧医疗,基于心电诊疗医院等单位/机构推出的心电监测及改善服务。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分