心电信号采集模块的设计与开发课程设计

合集下载

工程设计,心电信号采集,

工程设计,心电信号采集,

教改班工程设计实验报告脉搏与心电信号采与监测系统目录一、课题背景 (2)二、设计要求 (2)三、总体方案论证以及框图 (2)四、心电信号调理器的设计与仿真 (4)五、心率测量、显示以及报警电路的设计 (10)六、关于PCB制板 (15)七、前景展望 (17)八、心得体会 (17)九、致谢 (18)十、参考文献 (18)脉搏与心电信号采与监测系统一、课题背景心脏病已成为危害人类健康的主要疾病之一。

据统计,心血管疾病是威胁人类生命的主要疾病,世界上心脏病的死亡率仍占首位。

因此,对心血管疾病的诊断、治疗一直被世界各国医学界所重视,准确地进行心电信号的提取,为医生提供有效的辅助分析手段是重要而有意义的课题。

随着电子技术的迅速发展,医用电子监护系统今年来已在临床诊断中逐渐应用。

心电信号是心脏电活动的一种客观表现方式,是一种典型的生物电信号,具有频率、振幅、相位、时间差等特征要素。

由于心电信号从不同方面和层次上反映了心脏的工作状态,因此心电检测系统在心脏疾病的临床诊断和治疗过程中具有非常重要的参考价值。

二、设计要求1. 设计脉搏或心电信号放大器∙增益:60dB ~70dB ~80dB 三档可调∙带宽:0.01HZ ~200HZ ,可插入50HZ 陷波器2. 设计测量和显示心率的数字电路(用七段数码管)3. 设计心率越限报警电话(报警范围为分次分次/150f /40f 00>---<),报警方式:喇叭或蜂鸣器鸣叫,屏幕显示4. 完成模拟电路和数字电路的仿真和虚拟实验5. 完成印刷板设计6. 基本框图图1 脉搏与心电信号采集与监测系统三、总体方案论证以及框图心脏跳动时会产生微弱的电流并能向身体各个部位传导,引起人体肤表层电位发生变化。

由于人体部分组织不同与心脏距离也不同,因此人体皮肤表层不同部位的心电电位的变化也不同。

将皮肤表层特定部位之间的电位差以时间为函数记录下来,这种记录曲线称为心电图。

心电图反映心脏兴奋的产生、传导和恢复的过程中的生物电变化情况。

心电信号采集系统的研究与设计

心电信号采集系统的研究与设计

心电信号采集系统的研究与设计作者:王思毅来源:《卷宗》2017年第28期本文研究设计了十二导联心电采集系统。

系统由前端采集电路模块、滤波模块和控制模块组成。

前端采集模块对信号进行放大并抑制共模干扰,滤波模块对信号进行噪声处理,控制模块对导联切换和模数转换进行控制。

本系统具有体积小、高质量的特点,并使用了低功耗的处理芯片使得长时间的实时心电采集更加简单方便。

其能够以更高效稳定的方式对人体心电信号进采集,在未来可以更好地预防心血管疾病的发生,为人们的健康生活提供保障。

1 引言心血管疾病具有很强的隐蔽性和高危险性,一直是医学界研究的热点问题。

心电监护仪器能够及时发现心血管的异常情况,成为临床诊断以及生命科学研究的重要工具。

目前使用较多的心电监护仪器主要以工作站的形式应用于医院,因其价格昂贵且不便携带,阻碍了家庭应用的普及。

随着人们生活水平的提高,肥胖、快节奏的生活压力促使心血管疾病的发病率迅速上升,已成为威胁人类身体健康的主要因素之一。

与此同时,心血管疾病的发病趋势也不断趋于年轻化,便携式的心电系统能够帮助心血管类疾病的预防以及治疗。

随着电子设备的快速发展,专业的便携式心电监测设备也能够进入家庭中实现心电信号的日常监护,从而使医生能够更加全面及完整地评估病人的心脏状况。

使用心电监护仪可提高护理工作效率,随时了解患者病情,提高治疗和护理质量,大幅度降低危重患者的病死率。

因此,本文所研究的十二导联采集系统具有重要的医疗价值与社会价值。

本文设计的便携式十二导联心电采集系统通过电极片从人体的十个不同部位采集心电信号,信号经过放大、共模抑制、滤波并通过MSP430F149芯片控制模数转换,其通过控制导联切换芯片可以得到8路心电信号,最终可以得到十二导联信号。

2 系统总体结构前端采集电路模块从人体采集到微弱的生物电信号,并进行放大且抑制共模干扰,信号再经过滤波模块后得到高质量的心电信号。

控制模块采用了MSP430F149,低功耗处理芯片是系统的中央处理芯片,不仅进行导联切换,还控制模数转换AD7691等芯片。

心电信号采集及分析系统设计

心电信号采集及分析系统设计

本科毕业设计(论文)心电信号采集及分析系统设计谭莹莹燕山大学摘要心血管疾病是威胁人类健康的主要疾病之一,早期诊断和治疗是预防心脏病的有效途径。

20世纪50年代末,美国科学家Holter首先发明了一种心电仪,人们称它为Holter心电仪或叫动态心电仪,这种技术在临床上可实现“长时间”、“动态”记录的心电图,就称为动态心电图。

能够记录病人24小时活动过程中的动态心电数据,给医生提供具有诊断价值的资料,对于心脏功能的评价,心脏病的早期诊断非常有益,所以心电监护仪在其中发挥着至关重要的作用。

本课题采用MSP430149单片机作为核心器件,主要完成对心电信号的24小时不间断采集、传输、存储、显示等功能。

关键词 心电信号;动态心电图;MSP430单片机电阻及电容组成。

在低频的情况下,这个源阻抗为纯电阻。

显然它包括()那么电阻=R 。

(R)。

人体内组织液是一种电解质,所以R与组织液离子浓度有关。

不仅与皮肤和电极接触松紧有关,还与皮肤的干湿、清洁度及每个人角质层的厚薄有关。

抗,才能确保增益的稳定性。

设两个电极与皮肤的接触电阻为、,如果不等于,不可避免的就会把共模干扰信号转化为电路无法克服34电路由两个等值电阻和一只由运算放大器输出端两个串联电阻的中点电压,即:当只有差模信号的输出=-时,有=O包含输入信号的共模部分=。

从而使得共模信号不经阻容其中是集成仪用放大器该电路的高通截止频率可以表示为:整个电路的共模抑制比可以由下式来计算:其中和分别是放大器第一级和第二级的共模抑制比。

由集成仪器放大器的共模抑制比决定。

在第二级放大倍数比较高的情况下,的值可以达到以上。

对的影响可以忽略。

的值则可以由下式得到:其中:、和、3为例,其的标准值为以标准值来计算,。

如果所选用高精度、匹配较好的运放,和的值还可以大幅度提高。

扰,有必要进行低通滤波电路的设计。

6图3.4 高通滤波电路8(和)位表示.则数据量为。

这样大的数据量可以。

心电信号采集及系统设计

心电信号采集及系统设计

微弱信号检测课题报告心电信号采集—噪声分析及抑制指导老师:宋俊磊院系:机电学院测控系班级:学号:姓名:【目录】【摘要】...........................................................第一章..............................................................人体生物信息的基本特点[1}.............................................体表心电图及心电信号的特征分析[4]....................................心电信号的噪声来源[7].................................................心电电极和导联体系分析.............................................系统电极选择[8].......................................................第二章硬件电路设计.................................................心电信号采集电路的设计要求.........................................心电采集电路总体框架...............................................采集电路模块........................................................AD620引入的误差....................................................电子元件内部噪声...................................................集成运放的噪声模型:...............................................AD620的噪声计算....................................................前置放大电路改进措施...............................................滤波电路设计......................................................电平抬升电路[14]......................................................心电信号的50Hz带阻滤波器(50Hz陷波)设计[15].........................结论................................................................附录:参考文献......................................................【摘要】心脏是人体循环系统的核心,心脏的活动是由生物电信号引发的机械收缩。

心电信号采集模块设计

心电信号采集模块设计

CHENGSHIZHOUKAN 2019/14城市周刊96心电信号采集模块设计邱永利 凯莱英生命科学技术(天津)有限公司摘要:随着社会生活水平的不断提高,人们对健康的意识也不断提升。

心脏病是威胁人类健康的主要疾病之一,如果能对心脏患者进行日常监护,则可为日后诊断提供重要的参考价值。

本文阐述的主要包括:心电采集电路、前置放大电路、滤波网络、主放大电路。

心电信号由电极进行采集,为了抑制共模干扰加入右腿驱动;前置放大电路主要是将电极采集到的信号进行高保真的放大,AD620是一款在生物放大电路应用较广的高精度仪用放大器;滤波网络由低通滤波、高通滤波、50Hz 陷波电路组成;主放大电路主要对信号进行后续放大。

关键词:心电信号采集;放大电路;滤波网络;Multisim人体测量是以医学、生理学为基础。

生物医学测量属于强噪声背景下的低频微弱信号的测量,被测信号是由复杂的生命体发出的复杂的不稳定的自然信号。

生物医学测量的生理参数有心电、脑电、肌电等各种生物电的电量参数,还有体温、血压、呼吸、血流量、脉搏心音等非电量参数,这些非电量参数的测量实质上就是温度、压力、流量、频率、力、位移等非电量物理参数的测量。

生物医学测量与普通测量相比,虽然可以归结为电量与非电量的测量,但是被测量信号的特征和被测量的生命系统,与工程上的测量具有本质的不同。

一、国内外现状及发展趋势在国外,心电图机的研制和生产,占主要地位的是以德国、日本、加拿大、美国为主的发达国家,相对而言国内心电图机发展速度较慢,水平较落后。

自1978年美国Marquett 公司首次推出数字化12导同步心电图机,便开创了心电图记录、分析与诊断、保存与管理的新纪元,从此心电图机进入数字化发展新时代,特别是计算机在各个领域的广泛运用,数字化信息处理为医学界进步和深入研究提供了现代化高科技手段[1]。

在国内医疗器械生产商大多数是中小企业,产品技术水平较低,不具备国际竞争力,所需的器件、材料、工艺,水平低基础差。

心电信号采集模块的设计与开发课程设计讲解

心电信号采集模块的设计与开发课程设计讲解

课程设计报告设计题目:心电信号采集模块的设计与开发班级:学号:姓名:指导教师:设计时间:摘要针对心电信号的特点进行心电信号的采集、数据转换模块的设计与开发。

本文设计一种用于心电信号采集的电路,然后进行A/D转换,使得心电信号的频率达到采样要求。

人体的心电信号是一种低频率的微弱信号,由于心电信号直接取自人体,所以在心电采集的过程中不可避免会混入各种干扰信号。

为获得含有较小噪声的心电信号,需要对采集到的心电信号做降噪处理。

本文通过滤波的方法将噪声从信号中分离。

并将采集到的小信号放大约1000倍,送入数模转换模块,让单片机处理。

关键词:心电信号采集,降噪,A/D转换放大目录1. 课程设计任务及要求 (1)1.1 设计任务 (1)1.2 设计要求 (1)2. 理论设计 (1)2.1 方案论证 (1)2.2 电路原理框图说明 (2)2.3 单元电路设计 (2)2.3.1 前置放大及反馈电路 (2)2.3.2 带通滤波电路 (3)2.3.3 50Hz陷波电路 (4)2.3.4 电压放大电路 (4)2.3.5 电平抬升电路 (5)2.4 整体电路图仿真 (6)3. 硬件调试 (6)3.1 焊接及调试过程 (6)3.2 心电信号采集 (7)3.3 故障分析 (7)4. 嵌入式软件设计 (7)4.1 开发软件CCS简介 (7)4.2 软件总体设计框图 (8)4.3 软件分步配置: (9)4.3.1 配置ADC12: (9)4.3.2 配置LCD: (9)4.4 软件主程序 (9)5. 整体效果 (14)6. 结论 (15)7. 参考文献 (16)1. 课程设计任务及要求1.1设计任务⑴了解心电信号特点,设计心电信号调理电路,调理电路包括前端放大和右腿驱动电路、带通滤波和50Hz陷波电路、主放大和电平抬高电路等。

⑵学习MPS430单片机原理,通过对心电信号采集,实现对脉搏率的测量及显示。

⑶焊接相应电路,完成调试。

1.2设计要求在设计中了解心电信号特点,设计心电信号调理电路,调理电路包括前端放大和右腿驱动电路、带通滤波和50Hz陷波电路、主放大和电平抬高电路等。

心电信号采集电路设计

心电信号采集电路设计

一、心电图机概述1.1 医学仪器概述医学仪器主要用于对人的疾病进行诊断和治疗,其作用对象是复杂的人体,在医学仪器没有大量出现之前,医生主要凭经验通过手和五官来获取诊断信息,现在随着电子信息等技术的发展,医学仪器可以将人体的各种信息提供给医生观察和诊断。

由于生理信号均是微弱的信号,加之人体结构的复杂性和个体差异性,医学仪器在检测研究生物信息时,必须考虑到生物信息的特点,针对不同的生理参量采用不同的方法。

检测一些十分微弱的信息时,必须用高灵敏度的传感器或者电机,对于一些变化极为缓慢的生物信息,要求其检测系统具有很好的频率响应特性。

同时,对于检测到的信号,需要进行必要的处理,才能成为医生诊断的依据,现在能检测到的生理信号十分丰富,到了不用计算机就很难处理的地步。

所以对任何检测到的信号必须进行模/数转换,对不同的生理信息还要采用一些数学方法,如对非线性的生物信息,可通过拉普拉斯变换的办法,将其按线性处理;又如欲将检测到的以时间域表示的信息转换到频率域上,就得采用傅立叶变换的方法。

在生物信息处理过程中,当需要作信号波形分析时,又要用到模拟式频谱分析法(即滤波)和数字式频谱分析法。

另外,对于处理好的生理信号,必须以某种方式显示出来如打印在记录纸上或显示在显示屏幕上等。

图1.1从上述可以看到,医学仪器与其他仪器相比具有其特殊性。

一台完整的医学仪器一般由以下几部分构成:信息检测系统、信息处理系统、记录显示系统以及其他的辅助系统(如图1.1所示)。

检测系统主要包括被测对象、传感器或电极,它是医学仪器的信号源;信息处理系统的作用是对信息检测系统传送过来的信号进行处理,包括放大、识别(滤波)、变换等各种处理和分析,它也被认为是医学仪器的核心,因为仪器性能的优劣、精度的高低、功能的多少主要取决于它,可以说医学仪器自动化、智能化的发展完全取决于信息处理系统技术进步的程度;信息记录与显示系统的作用是将处理后的生物信息变为人们可以直接观察的形式。

阐述心电信号采集和设计的思路及步骤。

阐述心电信号采集和设计的思路及步骤。

心电信号采集和设计的思路及步骤随着科技的不断发展,心电信号的采集和设计已经成为医疗领域的重要技术之一。

心电信号的采集和设计涉及到多个学科领域,需要综合运用工程学、医学、生物学等知识。

在进行心电信号的采集和设计时,需要根据一定的思路和步骤进行,才能够确保设计的准确性和可靠性。

一、心电信号采集的思路及步骤1. 确定采集的对象和目的心电信号的采集对象可以是人体或动物,而其目的主要是用于疾病诊断、健康监测等方面。

在确定采集的对象和目的后,可以根据实际需求选择合适的采集设备和方法。

2. 选择合适的心电信号采集设备心电信号的采集设备通常包括心电图仪、心电记录仪等,而其选择需要考虑到采集的对象、采集的环境等因素。

还需要考虑设备的性能、精度、稳定性等方面。

3. 设计心电信号采集系统在选择好采集设备后,需要设计心电信号的采集系统。

这其中需要考虑到采集通道的数量、采集频率、滤波器的设计等方面。

还需要考虑到信号放大、模数转换等环节的设计。

4. 进行心电信号的采集在心电信号的采集过程中,需要考虑到采集的时间、采集的位置、采集的姿势等因素,以保证采集的准确性和有效性。

5. 数据处理和分析采集到心电信号后,需要对数据进行处理和分析,以求得有意义的结果。

这其中需要考虑到滤波、特征提取、模式识别等方面。

还需要考虑到数据的存储、传输等问题。

二、心电信号设计的思路及步骤1. 确定设计的目的和需求在进行心电信号的设计时,需要明确设计的目的和需求,例如设计一种用于心电信号采集的电路、设计一种用于心电信号处理的算法等。

2. 进行相关知识的学习和调研在确定设计的目的和需求后,需要进行相关知识的学习和调研。

这其中包括心电信号的特性、传感器的原理、信号处理的方法等方面。

3. 进行方案设计在进行心电信号的设计时,需要根据相关知识进行方案设计。

这包括硬件设计、算法设计等方面。

在进行方案设计时需要考虑到设计的准确性、稳定性等因素。

4. 进行模拟仿真和实验验证在设计完成后,需要进行模拟仿真和实验验证。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计报告设计题目:心电信号采集模块的设计与开发班级:学号:姓名:指导教师:设计时间:摘要针对心电信号的特点进行心电信号的采集、数据转换模块的设计与开发。

本文设计一种用于心电信号采集的电路,然后进行A/D转换,使得心电信号的频率达到采样要求。

人体的心电信号是一种低频率的微弱信号,由于心电信号直接取自人体,所以在心电采集的过程中不可避免会混入各种干扰信号。

为获得含有较小噪声的心电信号,需要对采集到的心电信号做降噪处理。

本文通过滤波的方法将噪声从信号中分离。

并将采集到的小信号放大约1000倍,送入数模转换模块,让单片机处理。

关键词:心电信号采集,降噪,A/D转换放大目录1. 课程设计任务及要求 (1)1.1 设计任务 (1)1.2 设计要求 (1)2. 理论设计 (1)2.1 方案论证 (1)2.2 电路原理框图说明 (2)2.3 单元电路设计 (2)2.3.1 前置放大及反馈电路 (2)2.3.2 带通滤波电路 (3)2.3.3 50Hz陷波电路 (4)2.3.4 电压放大电路 (4)2.3.5 电平抬升电路 (5)2.4 整体电路图仿真 (6)3. 硬件调试 (6)3.1 焊接及调试过程 (6)3.2 心电信号采集 (7)3.3 故障分析 (7)4. 嵌入式软件设计 (7)4.1 开发软件CCS简介 (7)4.2 软件总体设计框图 (8)4.3 软件分步配置: (9)4.3.1 配置ADC12: (9)4.3.2 配置LCD: (9)4.4 软件主程序 (9)5. 整体效果 (14)6. 结论 (15)7. 参考文献 (16)1. 课程设计任务及要求1.1设计任务⑴了解心电信号特点,设计心电信号调理电路,调理电路包括前端放大和右腿驱动电路、带通滤波和50Hz陷波电路、主放大和电平抬高电路等。

⑵学习MPS430单片机原理,通过对心电信号采集,实现对脉搏率的测量及显示。

⑶焊接相应电路,完成调试。

1.2设计要求在设计中了解心电信号特点,设计心电信号调理电路,调理电路包括前端放大和右腿驱动电路、带通滤波和50Hz陷波电路、主放大和电平抬高电路等。

2. 理论设计2.1方案论证将整个设计分成硬件部分和软件部分,在硬件设计部分又可细分为如下几个部分:前置放大、带通滤波、陷波、电压放大、电平抬升以及反馈。

根据已有的器件,本设计使用AD620作为前置放大级。

带通滤波部分,分成了高通与低通两部分,为了提高滤波的效果,高通部分采低通部分采用了二阶切比雪夫低通滤波器,带通纹波为3dB。

50Hz滤波陷波电路考虑了Fliege结构点阻滤波器和“双T”型陷波电路,实际焊接后发现后者的效果明显更稳定,故改为采用了“双T”型陷波电路。

2.2电路原理框图说明图2-1 系统结构图如图2-1所示,本系统硬件部分主要由前置放大、带通滤波、陷波、电压放大、电平抬升等电路构成;软件部分由基于Msp430 Launchpad的AD采集和液晶显示等程序编写构成。

2.3单元电路设计2.3.1前置放大及反馈电路由于人体心电信号的特点,加上背景噪声较强,采集信号时电极与皮肤间的阻抗大且变化范围也较大,要求前级放大电路应满足高输入阻抗;高共模抑制比;低噪声、低漂移、非线性度小;合适的频带和动态范围等特点。

为此,选用仪用放大器AD620作为前级放大。

该放大器有较高的共模抑制比(CMRR),温度稳定性好,放大频带宽,噪声系数小且具有调节方便的特点,是生物医学信号放大的理想选择。

根据小信号放大器的设计原则,前级的增益不能设置太高,因为前级增益过高将不利于后续电路对噪声的处理。

仿真过程采用O.5 MV,1.2 Hz的差分信号源为模拟心电输入来模拟电路的放大过程,结果满足要求,如图2-2所示。

图2-2 前置放大及反馈电路2.3.2 带通滤波电路心电信号频带主要集中在0.05--100 Hz ,因此带通滤波器用高低通滤波器来构成,以滤除干扰信号。

HzC R H f 1.021511≈=πHz RC l f116213≈=π经过高通滤波后,可以大大削弱0.1 Hz 以下因呼吸等引起的基线漂移程度,经过低通滤波后,也可以较好的削弱100Hz 以上的干扰信号。

图2-3 带通滤波电路2.3.3 50Hz 陷波电路在我国采用的是50hz 频率的交流电,所以在对信号进行采集处理和分析时,会存在50hz 的工频干扰,对我们的信号处理造成很大干扰,因此要设计一个50hz 双T 陷波器来滤除工频干扰。

滤波器的中心频率0f 和抑制带宽BW 之间的关系为:中心频率:Hz RCf50210==π图2-4 50Hz 陷波电路2.3.4 电压放大电路心电信号通常比较微弱,至多为mV 量级,需要用较大增益的放大电路将信号放大到方便分析和采集的量级。

该放大电路放大倍数为:)(100倍==RR A f图2-5 电压放大电路2.3.5电平抬升电路由于Msp430 Launchpad不能采集负电压,直接采集放大后的心电信号将会使液晶屏上波形失真,因此设计该电压抬升电路并通过电位器调节信号整体电平。

图2-6 电平抬升电路2.4整体电路图仿真图2-7 整体电路图仿真3. 硬件调试3.1焊接及调试过程为了使作品更加具备实用性和观赏性,焊接电路时采用双面面包板并在不影响电路性能前提下尽可能减小电路面积。

考虑“飞线”过多过长可能降低电路稳定性、增加干扰,焊接过程尽量少使用引线,缩短导线长度。

将VCC,VEE,GND及各级输入输出用一定量排针引出,方便调试,降低出错率。

图3-1 硬件部分3.2心电信号采集经过采集电路在示波器显示的心电信号如图3-2所示,信号无明显失真,经测量和计算,该同学心率此时约为1.4Hz。

图3-2 成功采集的心电信号3.3故障分析心电信号因人而异,不同的人测量,效果可能会出现较大差异,可以选择信号明显波形较好的人做实验。

实验中使用了3种运放,都采用双电源接法,焊接时要注意不要短路,焊接完毕,应先检查后通电。

Msp430 Launchpad采集电压范围为0至5V,需调节抬升电路电位器使其输出电压值合适的心电信号。

4. 嵌入式软件设计本设计软件部分的设计用Msp430 Launchpad来实现。

4.1开发软件CCS简介CCS是一种针对TMS320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供有环境配置、源文件编辑、程序调试、跟踪和分析等工具。

CCS 有两种工作模式,即软件仿真器模式:可以脱离DSP 芯片,在PC 机上模拟DSP 的指令集和工作机制,主要用于前期算法实现和调试。

硬件在线编程模式:可以实时运行在DSP 芯片上,与硬件开发板相结合在线编程和调试应用程序。

CCS 的开发系统主要由以下组件构成: ① TMS320C54x 集成代码产生工具; ② CCS 集成开发环境;③ DSP/BIOS 实时内核插件及其应用程序接口API ; ④ 实时数据交换的RTDX 插件以及相应的程序接口API ; ⑤ 由TI 公司以外的第三方提供的各种应用模块插件。

CCS 的功能十分强大,它集成了代码的编辑、编译、链接和调试等诸多功能,而且支持C/C++和汇编的混合编程。

4.2 软件总体设计框图F5529ADC12LCD模拟信号数据处显示logo显示工程相关4.3软件分步配置:4.3.1配置ADC12:F5529内部ADC为8位12通道模数转换器。

实验中将P6.4作为模拟信号的输入端口。

时钟源为MCLK的3分频。

ADC12CTL0 = ADC12SHT02 + ADC12ON; // Sampling time, ADC12 onADC12CTL1 |= ADC12SSEL0 + ADC12DIV2; //ADC12SSEL 0:mclk 1:smclkADC12CTL1 |= ADC12SHP; // Use sampling timer ,0 clockADC12IE = 0x01; // Enable interruptADC12CTL0 |= ADC12ENC;P6SEL |= 0x10; // P6.4 ADC option select4.3.2配置LCD1602:采用F5529内置的点阵屏,相关详细配置参见F5529官方“HAL_Dogs102x6.c”4.4软件主程序//************************************************************************* *****// MSP430F552x// -----------------// /|\| |// | | |// --|RST |// | |// Vin -->|P6.4/CB0/A0 |////************************************************************************* *****#include<msp430.h>#include"HAL_Dogs102x6.h"#include"info.h"#include<math.h>int read;volatile unsigned int x = 0;volatile unsigned int flag = 0;volatile unsigned int value = 0;volatile unsigned int count = 0;volatile float freq = 1.4;volatile unsigned int i;#define Num_of_Results 2volatile unsigned int results[Num_of_Results];// Needs to be global in this// example. Otherwise, the// compiler removes it because it// is not used for anything.uint16_t timeoutCounter;void init_lcd() {uint8_t contrast = *((unsigned char *)contrastSetpointAddress); //读取FLASH中对比度值uint8_t brightness = *((unsigned char *)brightnessSetpointAddress); //读取FLASH中背光值// Set up LCDDogs102x6_init(); //初始化LCDDogs102x6_backlightInit(); //背光初始化// Contrast not programed in Flash Yetif (contrast == 0xFF) //若当前FLASH中无对比度值,则将对比度值设为11(默认)// Set Default Contrastcontrast = 11;// Brightness not programed in Flash Yetif (brightness == 0xFF) //若当前FLASH中无背光值,则将背光值设为11(默认)// Set Default Brightnessbrightness = 0x11;// Dogs102x6_setBacklight(brightness); //设置初始背光值// Dogs102x6_setContrast(contrast); //设置初始对比度值 Dogs102x6_clearScreen();//显示文字说明://Dogs102x6_stringDraw(3, 0, " pan ", DOGS102x6_DRAW_NORMAL);}int main(void){WDTCTL = WDTPW + WDTHOLD; // Stop WDT//Board_init(); //初始化GPIO// Globally enable interruptsADC12CTL0 = ADC12SHT02 + ADC12ON; // Sampling time, ADC12 onADC12CTL1 |= ADC12SSEL0 + ADC12DIV2; //ADC12SSEL 0:mclk 1:smclkADC12CTL1 |= ADC12SHP; // Use sampling timer ,0 clockADC12IE = 0x01; // Enable interruptADC12CTL0 |= ADC12ENC;P7DIR |= 0x01; // P7.0 outputP6SEL |= 0x10; // P6.4 ADC option selectP1DIR |= 0x01; // P1.0 outputTA1CCTL0 = CCIE; // CCR0 interrupt enabledTA1CCR0 = 2040;// (1/32768)*205 =5 ms ??TA1CTL = TASSEL_1 + MC_1 + TACLR; // ACLK, upmode, clear TARinit_lcd();//logo_init();__enable_interrupt(); //使能全局中断//info_init();Dogs102x6_clearScreen();buttonsPressed = 0;//__disable_interrupt(); //关闭全局中断while (1){ADC12CTL0 |= ADC12SC; // Start sampling/conversion__bis_SR_register(LPM0_bits + GIE); // LPM0, ADC12_ISR will force exit __no_operation(); // For debugger//Dogs102x6_stringDraw(8, 0, " pan ", DOGS102x6_DRAW_NORMAL);}}// Timer0_A5 Interrupt Vector (TAIV) handler#pragma vector=TIMER1_A0_VECTOR__interrupt void TIMER1_A0_ISR(void){P7OUT ^= 0x01; // Toggle P1.0}#pragma vector = ADC12_VECTOR__interrupt void ADC12_ISR(void){static unsigned char index = 0;if(x<103) {x++;}else {if (buttonsPressed){if(freq>1.0 && freq <1.5) {ADC12IE = 0x00; // Enable interrupt__bic_SR_register_on_exit(LPM0_bits); // Exit active CPU} else {flag = 0;value = 0;count = 0;buttonsPressed = 0;Dogs102x6_clearScreen();x=0;}} else {Dogs102x6_clearScreen();x=0;}}switch(__even_in_range(ADC12IV,34)){case 0: break; // Vector 0: No interruptcase 2: break; // Vector 2: ADC overflowcase 4: break; // Vector 4: ADC timing overflow case 6: // Vector 6: ADC12IFG0read = ADC12MEM0;results[index] = ADC12MEM0; // Move resultsindex++; // Increment results index, modulo; Set Breakpoint1 hereif (index == 2){index = 0;}Dogs102x6_pixelDraw(x,41-ADC12MEM0/100 + 10,DOGS102x6_DRAW_NORMAL);if( x>1 && abs(results[0]-results[1]) > 200 && x < 102/*the last line don't draw*/)D ogs102x6_lineDraw(x,41-results[0]/100 + 10,x,41-results[1]/100 +10,DOGS102x6_DRAW_NORMAL);if(abs(results[0]-results[1]) > 200 && flag==0) {f lag = 1;}if(flag == 1) {v alue++;c ount++;}if( abs(results[0]-results[1]) > 200 && count > 5) {f lag = 2;f req = (float)102/value/5*2;//buttonsPressed = 1;/*Dogs102x6_stringDraw(7, 0, "ECG FREQ:", DOGS102x6_DRAW_NORMAL);D ogs102x6_charDraw(7, 60, 0x30+(int)freq%10, DOGS102x6_DRAW_NORMAL);D ogs102x6_stringDraw(7, 67, ".", DOGS102x6_DRAW_NORMAL);D ogs102x6_charDraw(7, 74, 0x30+(int)(freq*10)%10, DOGS102x6_DRAW_NORMAL);D ogs102x6_stringDraw(7,90, "HZ", DOGS102x6_DRAW_NORMAL);*/}__bic_SR_register_on_exit(LPM0_bits); // Exit active CPUcase 8: break; // Vector 8: ADC12IFG1case 10: break; // Vector 10: ADC12IFG2case 12: break; // Vector 12: ADC12IFG3case 14: break; // Vector 14: ADC12IFG4case 16: break; // Vector 16: ADC12IFG5case 18: break; // Vector 18: ADC12IFG6case 20: break; // Vector 20: ADC12IFG7case 22: break; // Vector 22: ADC12IFG8case 24: break; // Vector 24: ADC12IFG9case 26: break; // Vector 26: ADC12IFG10case 28: break; // Vector 28: ADC12IFG11case 30: break; // Vector 30: ADC12IFG12case 32: break; // Vector 32: ADC12IFG13case 34: break; // Vector 34: ADC12IFG14default: break;}}5. 整体效果图5-1 液晶显示基本信息图5-2 液晶显示心电信号图5-3 整体作品图5-4 实际采集的心电信号6. 结论根据以上效果图,可知心电图测试结果跟理论吻合,说明本次实验圆满成功。

相关文档
最新文档