心电监测的单片机系统设计_第1页
心电监测的单片机系统设计_第2页
心电监测的单片机系统设计_第3页
心电监测的单片机系统设计_第4页
心电监测的单片机系统设计_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、心电监测的单片机系统设计生物医学工程 200610407130 宗慧洋一、内容:1设计一个单片机系统:(1)具有R波的检测及心律失常报警功能(至少考虑二种心律失常情况)。(2)具有心电波的存储和回放功能。2 对系统(1)或(2)功能进行软件模拟调试仿真二、目标:训练综合运用所学知识独立完成设计课题的能力掌据单片机系统设计方法通过查阅资料元器件手册等,培养独立分析和解决实际问题的能力学会写设计报告三、要求:1原理介绍(1)本系统具有心电波的存储和回放功能。当病人需要监测时可在安置好导联电极后按下“监测开始键”,系统即对病人的心电波进行采集并将其存储。当需要回放数据时,可以按下“数据回放键”系统即

2、将存储的数据回放一次。(2)本系统具有R波的检测及心律失常报警功能。R波的检测由硬件R波检测器完成,它每检测到一个R波即向系统发出中断请求,系统响应中断后,计算R-R间隔,并利用此R-R间隔进行心率失常分析。目前阶段系统只对心动过缓和心动过速进行分析,当发现其中一种异常心电时,系统即发出警报。(3)系统采用低功耗设计,充分利用80C51系列单片机的节电工作方式,并且数字电路主要芯片CMOS型,保证系统能过对病人进行长时间检测而无需更换电池。2设计思路及框图R波ECG放大器R波检测器导连脱落检测器A/D转换器单 片 机 系 统D/A转换器声光报警电路按键电路(1)检测算法:当R波检测器检测出R波

3、后,系统即进行R-R间隔计算并求出前8个R-R间隔的平均值作为心律失常分析的主要原始数据。由于目前阶段只对心动过缓和心动过速进行分析,检测算法较简单。即:心动过缓:AR>1.2S。当平均R-R间隔时间>1.2S,即作为心动过缓检出报警。心动过速:AR<0.5S。当平均R-R间隔时间<0.5S,即作为心动过速检出报警。(2)系统框图:系统框图如下图所示。心电信号由导联电极导入,经ECG放大器放大、滤波后一路送A/D转换器,由单片机系统每隔5毫秒采样并存储一次,当回放时,数据经D/A转换器输出给监视器或记录器;另一路送R波检测器,每次检出R波后,由单片机发出中断请求,单片机

4、响应中断后,在中断服务程序中,进行心率失常分析,当检出异常心电时,通过声光报警电路发出报警;还有一路送导连脱落检测器,在发现导连脱落(或导电膏已干)即向单片机系统发出中断请求,由中断服务发出报警信号,病人听到报警信号后,通过按键电路按下任意一键即可结束报警,再按“监测开始键”可以继续进行检测。3硬件原理图及说明(含单片机口线及地址分配表、有原理框图、总原理图)4程序流程图及说明INT1中断入口保护现场R波检测恢复现场中 断 返 回上电复位初 始 化置节电工作方式TO中断入口保护现场心电采集恢复现场中 断 返 回INT0中断入口保 护 现 场“监测开始”键“数据回放”键导联脱落报警恢复现场中 断

5、 返 回检测开始数据回放程序流程图如上图所示,系统采用模块化的设计方法,各模块功能如下:(1)检测开始模块。当“检测开始”键按下,即转入此模块,完成心电监测的初始化,包括采样频率的设置,存储地址的设置,R波检测中断的设置。由于心电信号的的上限频率为100Hz,根据采样定理,系统采用200 Hz的采样频率采样周期5ms。(2)心电采集模块。完成定时(5ms)对心电数据进行采集和数据存储,及R-R间隔时间的记录。(3)R波检测模块。当R波检测器发出中断请求后,系统进入此模块,进行前8个R-R间隔的平均值(AR)计算,并将AR和上限(1.2s)及下限(0.5s)进行比较,若异常则发出心律失常报警型号

6、。(4)数据回放模块。当“数据回放”键按下,即转入此模块,进行一次128KB数据的回放。(5)导联数据模块。当导联脱落中断时即转入此模块,发出导联脱落报警信号。5主程序和子程序及注解T0初值计算:工作于计时方式1:TMOD01H5ms计时初值:X655365ms×12MHz/12605360EC78H程序设计如下:ORG 0000HLJMP mainORG 0003HLJMP INTL0ORG 0013HLJMP INTL1ORG 000BHLJMP T012ORG 2000Hmain: mov sp,#60H ;主程序开始SETB EX0 ;开INT0中断 SETB IT0 SET

7、B EA ;开CPU总中断 ORL PCON,#00000001B ;置节电工作方式here:sjmp wait ;等待中断;检测导联脱落、开始信号、回放信号中断子程序INTL0:JB P1.6,INTL0_0 ;判断是否时开始信号? ACALL start ;若位开始信号,则执行开始子程序 RETIINTL0_0:JB P1.7,INTL0_1 ;是否为回放信号? ACALL redisplay ;若为回放信号,则执行回放子程序 RETIINTL0_1:SETB P1.0 ;若为导联脱落信号,则指示灯亮,报警 CLR P1.4 CLR P1.3 ACALL DELAY ;报警延时 CLR E

8、T0 RETI;开始工作子程序start:SETB EX1 ;开INT1中断 SETB IT1 SETB ET0 ;开T0中断 SETB TR0 mov TMOD,#01H ;T0工作于方式1 mov TL0,#78H ;5ms计时初值 mov TH0,#0ECH mov 38H,#30H ;记录8个RR间隔的首址(30H-37H) mov 40H,#0 ;RR间隔计时初值 mov R0,#00H ;存储区首址 mov R1,#20H mov DPTR,#7FF8H ;0809通道首址 movx DPTR,A ;启动A/D转换 RET ;T05ms计时子程序T012:SETB P3.6 ;每隔

9、5ms启动一次A/D转换 mov TL0,#78H ;重赋计时初值 mov TH0,#0ECH mov A,40H ;RR间隔计时 INC A mov 40H,A CLR P3.6 RETI;A/D转换INTL1:JNB P1.5,INTL1_0 ;是否检测到下一个R波? ACALL RJG ;检测到R波,则计算RR间隔时间INTL1_0:movx A,DPTR ;读A/D转换结果 push DPL ;地址指针入栈 push DPH mov DPH,R1 ;将存储区首址给DPTR mov DPL,R0 movx DPTR,A ;存放A/D转换结果 pop DPH pop DPL INC R0

10、;存储区地址增1 mov A,R1 ADDC A,#00H mov R1,A movx DPTR,A ;启动A/D转换 RETI;计算R波间隔子程序RJG: push PSW ;保护现场 push ACC JNB 10H,INI ;R波检测初始化否? mov A,40H ;更新8个R-R间隔 MOV R0,38H mov R0,A INC R0 mov A,R0 ANL A,#37H mov 38H,A ACALL AVERAG ;计算平均R-R间隔 mov R1,A ;心率失常检测 CLR C SUBB A,#64H ;心动过速检测 小于0.5s JNC xlgh ;正常,转过缓检测 SET

11、B P1.0 ;正常指示灯灭CLR P1.4 ;异常,报警,指示灯亮 CLR P1.1 ACALL DELAY ;报警延时 AJMP ENDRxlgh: mov A,R1 SUBB A,#0F0H ;心动过缓检测 大于1.2s JC ENDR ;心率正常,继续检测 SETB P1.0 ;心率正常指示灯灭 CLR P1.4 ;异常指示灯亮报警 CLR P1.2 ACALL DELAY ;报警延时 AJMP ENDRINI: JNB 01H,ONER ;R波检测初始化 mov A,40H mov R0,38H mov R0,A INC R0 mov A,R0 JB ACC.3,INIF ;初始化完

12、成否 mov 38H,A ;未完成,返回 SJMP ENDRINIF: ANL A,#37H ;完成 mov 38H,A SETB 10H ;置初始化标志 SJMP ENDRONER: SETB 01H ;第一个R波标志ENDR: CLR A ;下一个R-R间隔时间记录 CLR P1.5 mov 40H,A pop ACC ;恢复现场 pop PSW RET;计算平均R-R间隔子程序AVERAG:mov R1,#08H ;8个R-R波间隔计算初值 mov R0,#30H ;8个R-R波间隔存放首址 CLR A mov B,A LOOP: ADD A,R0 XCH A,B ADDC A,#00H

13、 XCH A,B DJNZ R1,LOOP SWAP A RL A ANL A,#00011111B XCH A,B SWAP A RL A ORL A,B RET;回放子程序redisplay:CLR P2.7 ;启动D/A转换 CLR P3.7 mov R0,#00H ;存储区首址 mov R1,#20H mov DPTR,#7FFFH ;D/A口地址 push DPL push DPH mov DPL,R0 mov DPH,R1 movx A,DPTR ;读存储区的值 pop DPH pop DPL movx DPTR,A ;输出D/A转换结果 INC R0 mov A,R1 ADDC

14、A,#00H mov R1,A SJMP replay RET;延时12ms子程序DELAY: mov R7,#18H TM: mov R6,#0FFHTM6:DJNZ R6,TM6 DJNZ R7,TM RETEND6工作原理本系统是为离院病人设计的便携式智能心电监测仪。当系统中装有电池,并打开电源开关,系统即可工作。在检测时,按下“检测开始”键,系统开始对心电信号进行采集和存储。由于正常情快下(未检出心律失常时),心电波形基本一致,无需完全存储,所以当128KB SRAM记满时,采用循环的方式将原存储数据覆盖。当系统检测出心律失常时,即由声光报警器发出警报,同时存储数据冻结,此时的数据可以在以后回放时为医生诊断病情提供原始材料。需要数据回放时,可按下“数据回放”键,随时回访一次128KB SRAM中的数据。在正常情况下,回放数据不干扰心电的采样和存储。7收获体会等本次“心电检测的单片机技术”实验可以说是这学期单片机技术的总结,实验要介绍具有R波的检测及心律失常报警功能的原理、算法及框图,还要具有心电波的存储和回放功能。要用Proteus软件进行模拟调试仿真,用Keil uVision3灌入程序。最后得出结果。说来惭愧,虽然已经学了两学期的微机原理和单片机技术,但这次做实验还是很吃力,虽然实验原理和内容很明确,但实际操作做的时候,我上课学漏掉

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论