版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、心电监护仪的设计与制作目 录1 引言11.1 研究背景11.2 研究意义11.3 研究现状22 心电监护仪的医学基础52.1 人体心电信号的产生机理52.2 体表心电图及心电信号的特征分析52.2.1 心脏电传导过程分析52.2.2 心电信号时域特征分析52.3 心电电极和导联体系分析72.3.1 电极选择72.3.2 心电信号导联体系分析72.4 心电的信号特点92.5 信号采集电路的设计要求93 心电监护仪的方案及硬件电路设计113.1 设计要求113.2 设计方案113.3 硬件电路设计113.3.1 前置放大电路113.3.2 高通滤波电路133.3.3 后级放大电路133.3.4 低
2、通滤波电路153.3.5 50hz陷波电路163.3.6 电流放大电路173.3.7 单片机供电电路173.3.8 信号偏置电路173.3.9 单片机外围电路184 单片机程序设计234.1 单片机开发软件及编程语言简介234.2 主程序设计234.3 中断服务程序255 上位机程序275.1 控件添加方式275.2 mscomm 控件使用说明295.3 主程序设计316 调试过程及结果336.1 调试所需的仪器设备336.2 调试过程与内容336.2.1 断电调试336.2.2 上电调试336.3 调试结果346.4 结果分析357 结论368 展望37附录a 总电路图38附录b pcb版图
3、39附录c 单片机程序代码40附录d 上位机程序代码44参考文献46致谢471 引言1.1 研究背景心脏是人体血液循环的动力泵,心脏搏动是生命存在的重要标志,心脏搏动的节律也是人体生理状态的重要标志之一。心脏的基本活动包括电活动和机械活动,每个心动周期都是电活动在前,机械活动在后。心电信号是心脏电活动的一种客观表示方式,是一种典型的生物电信号,具有频率、振幅、相位、时间差等特征要素,比其他生物电信号更易于检测,并具有一定的规律性。由于心电信号从不同方面和层次上反映了心脏的工作状态,因此在心脏疾病的临床诊断和治疗过程中具有非常重要的参考价值。对心电信号的采集和分析一直是生物医学工程领域研究的一个
4、热点,是一项复杂的工程,涉及到降低噪声和抗干扰技术,信号分析和处理技术等不同领域,也依赖于生命科学和临床医学的研究进展。自1903年心电图引入医学临床以来,无论是在生物医学方面,还是在工程学方面,心电信号的记录、处理与诊断技术均得到了飞速的发展,并积累了相当丰富的资料。当前,心电信号的检测、处理仍然是生物医学工程界的重要研究对象之一1。 伴随着人们生活水平的提高,营养过剩和运动减少,生活和工作节奏的加快,社会老龄化的加剧,心脏病等心血管疾病的发病率明显上升。目前心脏病的死亡率远远高于其他疾病,是威胁人类生命安全的主要疾病,心脏病己成为威胁人类生命安全的“第一杀手”。由于心脏病具有病情隐蔽、发展
5、缓慢、发病危险性高等特点,因此它对心脏病患者、特别是中老年心脏病患者的危害性极大,因此心脏系统疾病的防治和诊断己成为当今医学界面临的首要问题2。 另外,一些特殊的心脏病患者,在正常工作生活时发病,而到医院检查时症状消失,导致在医院无法检测到异常心电图,无法对病情做出诊断,耽误了治疗的最佳时机,所以心电监护是有重要意义的。随着社会老龄化的加剧,解决长期慢性病的监护目前已经是重要的社会问题。怎样才能使病人在家庭中得到更好医疗保健,同时又减少病人家属及社会的负担,是现在摆在有关研究人员及医生面前的一个重要课题3。1.2 研究意义心电信号是人类最早研究并应用于临床医学的生物电信号之一,与其它生物电信号
6、相比心电信号更易于检测并具有较直观的规律性。在医学发达的今天,心电信号的监测与处理仍是生物医学领域重要的研究对象之一,是医学上诊断心脏系统疾病十分重要的检测依据。因此及时通过心电信号来发现并预防心脏病的发生是减少心脏病人发病和死亡率的一个有效途径。心电学自上世纪初到现在已经发展了一百多年。在这期间心电图检测技术本身不断发展完善,各种心电检测方法不断问世,到目前可以说心电检测已趋于成熟4。以往的检测手段基本上都需要到医院在庞大的心电图仪器上进行检测,而心脏病人不可能每次发病时都具备到医院检测的条件,还有一点就是一些患者在发病时感到不适,而到医院检查时症状消失,进行心电图检查时得不到明显异常的心电
7、信号,这将影响对患者的诊断和治疗。因此导致了许多心脏病人病情不能得到及时诊断和治疗,延误了病情甚至导致死亡等严重后果。因此,开发一套携带方便、低成本的远程心电监护系统具有深远的理论研究意义和实践应用价值。其具体意义如下: (1)使患者或医护人员减少了路途奔波,节省了时间和社会的医疗资源; (2)把患者的监护在家中完成,既为患者节省了开支,又为医院节省了床位; (3)使患者在熟悉的环境中进行检测,减少了患者的心理压力,提高诊断的准确性5; (4)对于自理能力较差的老年人和行动不便的病人的实施远程监护,可以随时了解监护对象的健康状况在患者病情突变恶化时报警,为患者提供及时的救助。1.3 研究现状随
8、着电子与信息技术的不断发展及其在医疗系统中应用的深入,世界各地尤其是欧美国家相继提出了心电检测设备的小型化、家用化要求和建立远程医疗体系的设想。从1980年代开始,国外开始建立以电话线路传输心电信号的心电图监测中心,随后又出现了以数字式电话传输心电图信号的研究。英国牛津大学的johnson教授采用远程监护的方法让孕妇和胎儿在放松的状态下在家中检测血压、血氧、心电图等重要生理指标;德国的一个研究小组则通过宽带视频通信远程监护家中老人的各种生理参数,以便在必要的时刻提供救治和帮助6。进入21世纪后,美国和欧盟在20002005年期间各投入150亿美元和17.5亿美元用来进行远程医疗的研究工作,与此
9、同时,国外各大公司也纷纷跟进,进行心电监护产品的研究开发工作;亚洲的日本在这方面也做了较大的投入,其中sony,东芝已有类似的监护设备上市,但都价格不菲。国内在这方面的研究晚于西方国家,一个总的特点是起步晚,起点高。但随着中国经济的快速发展,人们对健康的重视程度越来越高,对健康监护产品的需求量也稳步提升,产品的应用范围从危重病人监护,发展到如今普通病房的监护,目前,很多家庭对此也提出了一定的应用需求。国内早期在此方面研究的一个比较典型的案例是清华大学在1994年研制成功的家庭心电/血压监护网系统,该系统在病人不适时具有手动按键报警功能和类似holter的心电图长时间记录发送功能。2005年6月
10、,山东大学齐鲁医院建成了国内首家心脏远程监护中心,该中心实行24小时监护,只要患者携带的微型发射机处于工作状态,就会将心电的异常变化传输到该中心,监护中心便可以进行相应处理和预警7。目前,国内生产便携式心电监护设备的厂家有很多,产品也进入了实用化,但是大多数是以oem方式进行组装的,具有自主开发能力的较少。总的来说,目前国内心电监护产品主要特点为:市场需求越来越大;技术水平和产品质量在不断提高;生产厂家多,但核心技术掌握不足。随着中国经济水平的不断发展及与国际社会融入程度的不断加深,在这面有着巨大的发展潜力。综上所述,无论国内还是国外都对心电监护设备的研究投入了巨大的人力与物力。伴随着电子技术
11、的飞速发展,其前景必定相当广阔目前市面上常见的便携式心电仪多数是采用了前后端的实现方式,前端是以单片机为核心的心电信号采集系统,后端多数采用的是处理性能较高的嵌入式微处理器。这种处理器性能强大,它使得心电仪在心电数据采集、处理、存储和显示等功能的基础上,还能够实现对心电数据的分析。然而,这种心电仪在实现多种功能的同时,也有一些缺点:结构比较复杂、功耗较大、成本也较高。另一方面,在导联个数上,在相当长的一段时间内,心电导联系统一般仅仅具有单导或三导联同步记录功能,市场上现在也还有很多这种产品8。该类产品因为只支持少数的导联,因而它的液晶屏幕比较小,用户观察起来很不方便,只能通过自带的打印机将心电
12、图打印出来之后才能较好的观察分析。另外,这种产品往往不适合复杂心脏疾病的诊断。目前很多厂商也在竞相开发支持多导联的心电仪产品。深圳迈瑞电子就是其中之一,它在便携式监护仪领域做出了带头作用,典型的产品如pm-9000express、pms000等等。随着集成电路技术、计算机和网络技术在医学领域的进一步深入,今后心电仪的研究和发展趋势主要包括以下几个方面:(1)仪器小巧化。随着集成电路技术的发展,心电检测仪器趋于小型化和便携化。hoter系统和心脏bp机等代表了这一发展趋势;(2)多导同步心电检测系统。尤其是十二导同步心电检测系统将逐步占领更多的市场份额;(3)界面友好化。心电仪产品会越来越体现人
13、性化的思想,以方便使用为设计目标之一;(4)网络化。单个独立的心电仪系统可以通过网络连接,和心电检测数据库互联,提高对疾病的监测效率;(5)性能更高。随着微处理器和微控制器运算速度的进一步提高,心电仪的处理能力也会不断得到增强9。2 心电监护仪的医学基础2.1 人体心电信号的产生机理心电是心脏的无数心肌细胞电活动的综合反映,心电的产生与心肌细胞的除极和复极过程密不可分。心肌细胞在静息状态下,细胞膜外带有正电荷,细胞膜内带有同等数量的负电荷,此种分布状态称为极化状态,这种静息状态下细胞内外的电位差称为静息电位,其值保持相对的恒定。当心肌细胞一端的细胞膜受到一定程度的刺激(或阈刺激)时,对钾、钠、
14、氯、钙等离子的通透性发生改变,引起膜内外的阴阳离子产生流动,使心肌细胞除极化和复极化,并在此过程中与尚处于静止状态的邻近细胞膜构成一对电偶,此变化过程可用置于体表的一定检测出来。由心脏内部产生的一系列非常协调的电刺激脉冲,分别使心房、心室的肌肉细胞兴奋,使之有节律地舒张和收缩,从而实现“血液泵”的功能,维持人体循环系统的正常运转。心电信号从宏观上记录心脏细胞的除极和复极过程,在一定程度上客观反映了心脏各部位的生理状况,因而在临床医学中有重要意义10。2.2 体表心电图及心电信号的特征分析2.2.1 心脏电传导过程分析心电生理学资料表明,心脏不断的进行有节奏的收缩和舒张运动。由心肌激动产生的生物
15、电变化通过心脏周围的导电组织和体液,反映到身体表面上来,使身体各部位在每一心动周期中也都发生有规律的电变化活动。在每个心动周期中,窦房结是心脏的最高起博点(也叫一级起搏点),它发出的激动命令经结间束首先传给房室结(也称第二级起搏点)。房室结向下发出一条传导路,称房室束,它位于室间隔内。房室束往下又不断发左右两个束支,越分越细,最后分别形成互相交织得像网一样的结构,称普肯耶纤维,终止于心肌内11。此生物电传递变化十分复杂,呈混沌态,其有序结果通过周围组织传遍全身,使身体各部位出现有规律而各向异性的电变化。将测量电极放置在人体表面的一定部位记录出来的心电信号变化曲线,就是目前临床上常规记录的心电图
16、(ecg)。2.2.2 心电信号时域特征分析图2.1 典型的心电信号如图2.1所示的正常心电图由一系列波群组成,各段波群反映不同阶段的心电信号变化,由于qrs波变化比较集中,所以给出了分解图。下面对每个波形点作详细的介绍12:(1)p波:最初产生的偏离的波被命名为p波,它反映心房除极过程的电位变化,代表了两个心房的去极。(2)qrs波群:心室激活产生的最大波,它反映心室肌除极过程的电位变化。正常间隔0.08-0.12秒。典型的qrs波群是指三个紧密相连的波;第一个向下的波为q波,这波不一定总是出现。qrs波的第一个向上的波为r波,继r波后第一个向下的波为s波,发生在s波后的向上的波称为r。qr
17、s是广义的代表心室肌的除极波,并不是每一个qrs波群都具有q、r、s三个波,一个单相的负qrs复合波被称为qs波。(3)p-r间期:从p波开始到qrs复合波开始,它代表心房肌开始除极到心室肌开始除极的时限。正常间期是0.12-2.0秒,测量是从p波的起点到qrs复合波的起点,不管初始波是q波还是r波。它是房室传导时间的一种度量,由于这个原因,它在临床诊断上很有用。基线是由波的tp段建立的(t波末端到下一个p波开始)。(4)s-t间期:是在qrs波群以后,t波以前的一段平线。代表左、右心室全部除极完毕到复极开始以前的一段时间。该段在确定病理学上比如心肌梗塞(升高)和局部缺血(降低)上是很重要的。
18、在正常情况下,它用作测量其它波形幅度的等电势线。(5)t波:代表心室肌复极过程引起的电位变化。(6)q-t间期:代表整个心室肌自开始除极至复极完毕的总时间。qt间期代表体现了心室肌肉激活间期和恢复。这个持续时间和心率的变化相反。但通常不采用qt,而采用修正qt,称为qtc:qtc=qt+1.75(心室率60)。体表心电图反映的是心电信号的时域特性,经分析可以看出ecg信号的特征段的分界处是波形上的拐点。2.3 心电电极和导联体系分析2.3.1 电极选择心电信号检测一般采用体表电极,随着时代的发展金属电极已经成为了体表的连接器。一个由盐溶液和胶组成的电极层成为了金属电极和皮肤的接触面。身体内部电
19、流是由离子运动产生的,而在导线中的电流是由电子的运动产生的。电极系统可完成离子电流到电子电流的转换。当病人身体的运动会导致电极电位的变化,当用两个电极分别引导生物体两点的电位时,如果两个电极本身的电位不同则会造成记录中的伪差(又称极化电压)。这个小失调电压会随心电信号放大1000倍,因此小信号的变化也会导致信号的基线漂移。极化电压在心电信号检测系统中属于干扰因素,应尽量避免极化噪声的影响。因此在心电测量系统中要求采用非极化或极化电压微弱的电极。可采用表面镀有ag-agcl的可拆卸的一次性软电极,并在电极上涂有优质导电膏,使它更接近非极化电极,有效地抵消极化电压引起的干扰。该电极漂移电位非常小,
20、它在ag层上镀了一层agcl。氯离子将在体内、电极内以及在agcl层内运动,在这里转换成在ag中的电子运动并传导到导线中。这种方法把直流漂移电位减小到与峰值相比非常小的程度。因此,这种电极移动导致的基线漂移比其他极化电极要小很多13。2.3.2 心电信号导联体系分析心电信号是典型的人体电信号,人体电信号本质是两点的电位差信号,直接加电极于身体并且通过一定的导联方式就可以观察到心电信号。导联方式即输入导线与电极放置在机体特定的测试部位(正输入端)、参比部位(负输入端)和接地部位的连接方式。在心电图学中有三种基本的导联系统:第一个导联系统具有最普遍的12导联,它定义了一组12个电位差,用他们来形成
21、标准临床ecg。einthoven于1903年提出双极肢体i、ii、iii,1930年代wilson提出v1-v6单极胸导联,40年代goldberger改良了中心电端,提出avr、avl、avf单极加压肢体导联。这就是临床上采用的einthoven-wilson12标准导联体系。第二个导联系统规定记录vcg的的电极的位置,frank正交校正导联系统:正交导联指与该导联系统相伴随的导联向量是正交的,1956年frank提出了三个正交导联x、y、z,精确测量了相互垂直方向上模拟心脏电活动的各分量14。第三导联系统为监测系统,典型的只分析一个或两个导联。该系统的主要目的是可靠地识别每次心跳并进行节
22、律分析,所以电极的配置应以获得在基本的ecg中有较大的r波为原则。如i、ii、iii导联系统。(1)双极肢体导联双极肢体导联又称标准i、ii、iii导联,它是以两肢体间的电位差作为所获取的体表心电。其连接方式如图2.2所示,其中a代表放大器,本课题采用的是双极肢体导联方式i。图2.2 双极肢体导联(2)单极肢体导联单极导联表示一个单独点的电势变化,wilson等人在1940年提出了“中心电位端”的概念。实验中发现,当人体皮肤涂上导电膏后,左上肢、右上肢和左腿与心脏间的电阻分别为2k、1.5k、2.5k,如果将三个肢体连接成一点作为参考电极点,在心脏电活动过程中,这一点的电位并不等于零。wils
23、on提出在三个肢体上各串联一个平衡电阻,以使得三个肢体端与心脏间的电阻数值互相接近,因而把它们连接起来获得一个电位接近零值的电极电位端,称为威尔逊中心电端。wilson中心电端的连接图如图2.3所示15。图2.3 单极肢体导联(3)加压单极肢体导联goldberger于1942年对单极肢体导联进行了一定的改进,提出了加压单极肢体导联的概念,提高了所获得的心电信号的幅度。当记录某一肢体单极导联心电波形时,将该肢体与中心电端之间所接的平衡电阻断开,改进成增加电压幅度的导联形式,称为加压单极导联。其连接方式如图2.4所示。图2.4 加压单极肢体导联2.4 心电的信号特点心电信号属生物医学信号,具有如
24、下特点:(1)信号具有近场检测的特点,离开人体表微小的距离,就基本上检测不到信号;(2)心电信号通常比较微弱,至多为mv量级;(3)属低频信号,且能量主要在几百赫兹以下;(4)干扰特别强。干扰既来自生物体内,如肌电干扰、呼吸干扰等;也来自生物体外,如工频干扰、信号拾取时因不良接地等引入的其他外来串扰等;(5)干扰信号与心电信号本身频带重叠(如工频干扰等)。2.5 信号采集电路的设计要求针对心电信号的上述特点,对采集电路系统的设计分析如下:(1) 信号放大是必备环节,而且应将信号提升至a/d输人口的幅度要求,即至少为“v”的量级;(2) 应尽量削弱工频干扰的影响;(3) 应考虑因呼吸等引起的基线
25、漂移问题;(4) 信号频率不高,通频带通常是满足要求的,但应考虑输入阻抗、线性、低噪声等因素。 3 心电监护仪的方案及硬件电路设计3.1 设计要求要求设计高精度、高可靠性心电信号采集放大滤波电路;以单片机为核心,对心电信号进行模数转换,并与pc进行数据通信;编写上位机程序,实时显示心电信号。3.2 设计方案由佩带在病人身上的袖珍生理参数放大器采集模拟心电信号,采集到的心电信号有如下特点:信号弱、信噪比低、信号源阻抗大、电磁干扰大、信号频率低等特点,然后经过放大滤波电路,放大滤波电路由前置放大电路、后级放大电路、滤波及功率放大电路组成,此时得到的是放大的模拟信号,需要转换成数字信号,因此要再经过
26、a/d转换,得到数字信号,再通过串行接口向pc传送数据,由上位机程序通过串口将信号读入pc,并完成心电波形的显示,设计方案如图3.1。图3.1设计方案3.3 硬件电路设计 心电信号是微弱小信号,最大值也不超过2.5mv,要实现正常的显示,必须放大几千倍,本课题将其放大2550倍,考虑到共模抑制比、带宽等限制因素,采用两级放大电路,前置放大电路放大50倍,后级放大电路放大51倍。为有效地提取心电信号,还要设计滤波电路,滤波电路由高通滤波电路、低通滤波电路、50hz陷波电路组成。3.3.1 前置放大电路本系统采用的是双极肢体导联方式i,将人体的左臂(la)、右臂(ra)作为正负信号分别接入放大器的
27、正、负输入端,右腿与放大器的参考端子rf相连接,作为放大器的接地端,选用的前置放大器是ad620a,具有很好的性能,非常适合作为心电信号测量前置放大器,原理图、引脚分布如下图所示,其具体规格特性如下:(1)电源供应范围:2.3v-18v;(2)高精度:输人最大偏置电流:1ma;输人最大失调电流:0.5na;输入最大失调电压:50v;最大温度漂移:0.6v /;输入阻抗:10g。(3)低杂讯:输入电压噪声(f=1k hz):9nv;共模抑制比(增益g=10):100db。ad620的增益可调,范围为11000倍,通过调节ad620a的1和8腿之间的rg的值来实现: 图3.2 ad620原理图 图
28、3.3 ad620引脚分布前置放大电路如下图所示,放大倍数为: (式3.1) 图3.4 前置放大电路3.3.2 高通滤波电路在电路部分加上简单的高通滤波环节,对隔断直流通路和消除基线漂移将会起到事半功倍的效果,本部分电路置于预放大与信号放大电路之间,一个简单的无源高通滤波电路如图3.5所示。 图3.5 高通滤波电路 下限截止频率为: (式3.2)经过高通滤波后,可以大大削弱0.08hz以下因呼吸等引起的基线漂移程度,心电信号低频端也就相应地取该频率。3.3.3 后级放大电路后级放大及滤波部分由一片tlc2274四运算放大器构成,tlc2274是美国德克萨斯仪器公司生产的一款性能优良、价格低廉的
29、通用运算放大器。该放大器具有高输入阻抗、高共模抑制比、低输入偏置电流、低温漂、低噪声等优良性能,并具有较高的电流驱动能力,适用于诸如a/d转换这一类的接口电路,tlc2274还有一个突出的优点,其输入、输出都具有轨到轨的特性。tlc2274原理图、引脚分布图如下图所示。 图3.6 tlc2274原理图图3.7 tlc2274引脚分布图后级放大电路连接方法如下图所示,放大倍数为: (式3.3) 图3.8 后级放大电路3.3.4 低通滤波电路如下图所示为一个二阶低通有源滤波器,电路中的传递函数由下式给出: (式3.4)式中,令,上式可改写为 (式3.5)幅频响应表达式为: (式3.6)在心电监护电
30、路中,r为470,c的取值为0.01uf,其特征频率为: (式3.7)因此,上限截止频率为34hz。 图3.9低通滤波电路3.3.5 50hz陷波电路虽然心电信号前置放大电路对50hz工频干扰有很强的抑制作用,但仅仅靠共模抑制是不够的,还需要设计专门的模拟带阻滤波器来滤除,这种模拟带阻滤波器称陷波器。 设计的陷波电路如图3.10所示,陷波电路选频条件为: (式3.8) 中心频率为: (式3.9)在这个电路中,陷波点频率为50hz,通过解该二元联立方程组,得出三个电容的值均为0.047uf,电阻r11、r12的值分别为21.5k、71.5k。 图3.10 50hz陷波电路3.3.6 电流放大电路
31、经过滤波电路之后输出电流太小,无法驱动下一级,因此要增加电流放大电路,即功率放大器,将放大器负输入端和输出端相连,构成电压跟随器,放大器后面加上这一级电流放大电路后,其输出端的电压信号再也不会因后级负载过大而降低。3.3.7 单片机供电电路 c8051f060单片机工作电压为2.73.6v。本系统采用3.3v为单片机供电。lm1117是一个低压差电压调节器系列。分为两个版本,固定电压输出版本和可调电压输出版本。固定输出电压1.5v、1.8v、2.5v、3.3v、5.0v和可调版本的电压精度为1;固定输出版本在输出电流1a下的压差为1.2v,其内部有集成过热保护和限流电路。电路图如下:图3.11
32、 lm1117转3.3v电路图发光二极管为电源指示灯,正常导通是其两端的电压约为1.7v,流过的电流约为3ma,为保证它能长久的正常工作,要给它串联一个电阻。c14为输入去耦滤波电容,电解电容c12和小电容c13组合在一起抗输出干扰。3.3.8 信号偏置电路心电信号是双极性交流信号,必须采用双电源供电才能保证负半周信号不被削波,在ad620的参考电位5管脚接2.5v,这样就变成了双电源供电。由于单片机工作在单端输入方式时,只能采集正的信号,不能采集负心号,因此要在后级放大电路加上1.25v的偏置。利用lm1117芯片转2.5v、1.25v电路的原理同上。 图3.12 lm1117转2.5v、1
33、.25v电路3.3.9 单片机外围电路(1)单片机复位电路c8051f060为低电平复位,按键复位电路设计如图所示:in4148是高速开关管,开关比较迅速,适用于信号频率较高的电路进行单向导通隔离。采用如下图所示的电路图,不掉电上电就可以实现复位,更具有实际性。 图3.13 按键复位电路当上电一瞬间,电容里面本来不带电荷,当上电的时候,电源通过电阻向电容充电,电源相当于短路,直接接到了地,所以单片机的复位管脚为低电平。随着电容两极的电荷累计,电容充满电,相当于开路,复位管脚接电源上面,此时是高电平,单片机正常工作。至于这个上电的时间由r和c的大小决定,t约等于rc。该复位电路t=100ms,有
34、c8051f060的复位时序图(图3.14)可知,可以实行复位功能。图3.14 复位时序图(2) jtag接口电路c8051f060系列具有片内jtag边界扫描和调试电路,通过四引脚jtag接口并使用安装在最终应用系统中的产品器件就可以进行非侵入式、全速的在系统调试。该jtag接口完全符合ieee1149.1规范,为生产和调试提供完全的边界扫描功能。jtag接口电路如图3.15所示。图3.15 jtag接口电路jtag各引脚定义: tck测试时钟输入; tdi测试数据输入,数据通过tdi输入jtag口; tdo测试数据输出,数据通过tdo从jtag口输出; tms测试模式选择,tms用来设置j
35、tag口处于某种特定的测试模式。(3) adc0电压基准电路adc0的电压基准电路允许使用多种不同的电压基准配置。每个 adc 都可以使用其专用的内部电压基准或外部基准。adc 电压基准的原理框图如图 3.16。 图3.16 adc电压基准原理框图每个adc的内部电压基准电路由一个温度稳定性好的1.2v带隙电压基准发生器和一个两倍增益的输出缓冲放大器组成。 vrefn (vref0 和 vref1) 引脚对 agnd 的最大负载必须小于 100 a。通常在 vrefn 引脚与 vrgndn 之间接入0.1f和47 f的旁路电容,如图3.17。图3.17 adc0内部电压基准电路(4) 外部晶振
36、电路通常在需要频率精度较高时,最好采用外部晶振。外部晶振器需要有外部振荡器连接到xtal1/xtal2引脚才能工作,如图3.18。图3.18 外部晶振电路c5和c6是两个起振电容。从原理上讲将晶振直接接到单片机上,单片机就可以正常工作了,但这样构成的振荡电路会产生谐波(也就是不希望存在的其它频率的波),这些波对电路的影响不大,但会降低电路的时钟稳定性。为了保证电路的稳定性,可以在两个晶振的管脚接两个电容接地来削弱谐波对电路稳定性的影响。电容的大小没有固定值,一般是15p30p。(5) 单片机与pc机接口电路c8051f060串行通信接口(uart)支持与cpu以及其它使用非归零格式的异步外设之
37、间的异步串行数字通信。uart的接收器与发送器都是双缓冲的,有各自独立的控制位与中断位,都可以同时工作在全双工模式下。为了保证数据的完整性,uart对接收的数据进行间断检测、奇偶性、超时以及帧错误等的检查。uart可以通过设置定时器的溢出常数来设定不同的波特率,还可以通过rs-232或rs-485与许多主流外设接口。实际在计算机与终端通讯中一般只是用上rs-232-c的3-9条引线,接口的使用特性在rs-232-c中任何一条信号线的电压均为负逻辑关系,即逻辑“1”,-5 -15v,逻辑“0”,+5+15v,因此需要用max232芯片进行电平转换。为了实现通讯,pc与c8051f060之间必须采
38、用相同的通讯格式。图3.19是pc的异步串行通讯数据格式与c8051f060在uart方式一下的的数据格式。图3.19 pc与c8051f060 uart0的通讯数据格式从图中可以看出,通讯格式可采用8位数据位、l位停止位、禁止奇偶校验位,波特率为115200bit/s。对于pc机通讯格式的确定,是通过对其异步串行通讯控制器进行初始化来实现的。为了实现与c8051f060在方式一下进行通讯, pc在发送数据帧时,设定奇偶校验位为0。pc与单片机之间的通信可以通过串口调试助手实现pc对单片机的发送数据和就收数据。心电监护电路中用c8051f060的串行通信接口与rs-232串行口通信,电路如图3
39、.20所示。电路采用了符合rs-232标准的驱动芯片max232进行串行通信。max232芯片功耗低、集成度高,+5v供电,具有两个接收和发送通道。由于c8051f采用3.3v供电,所以在max232与c8051f之间加了ti公司提供的典型电平匹配电路。由于max232对电源噪声很敏感,因此必须要对地加去耦电容,其值为10uf,用以提高抗干扰能力,在连接时必须尽量靠近器件。用c8051f060的uart串口与pc机进行通信,c8051f060内部有两个全双工的异步串行口uart0和uart1。它们除了具有标准串行口的功能外,还具有帧错误监测和地址识别。单片机c8051f060的tx0、rx0通
40、过max232与上位机相连,进行串行通信。rx0为单片机的串行输入端,接收上位机通过max232向单片机发送的数据。tx0为单片机的串行输出端,通过max232发送给上位机,把单片机测量的电压数据经串口送至计算机。图3.20 c8051f与上位pc机的通信接口电路4 单片机程序设计4.1 单片机开发软件及编程语言简介silicon集成开发环境(ide)是一套完整、独立的软件程序、它为设计者提供了用于开发和测试项目的所有工具。程序的主要特点包括 (1)简洁的项目界面;(2)全功能、窗口字体可配置的编辑器;(3) 调试器具有设置断点、观察点、单步等功能;(4)工具链接集成支持汇编器、编译器和链接器
41、;(5)可定制的工具菜单用于集成其它编译器或开发工具;(6)silicon配置向导可为指定的目标环境产生配置代码;(7)在调试期间用它来察看和修改存储器和寄存器的信息,可以观察和修改变量。config2是一个专门配置单片机初始化程序的软件(如图4.1)。首先选中所用的单片机类型,在菜单栏中options选择c语言,在peripheral中选择要用到的硬件电路,根据预定的工作方式选择,配置完成后自动生成初始化程序。config2的使用大大方便和简化了初始化程序的编写。图4.1 config2软件界面4.2 主程序设计 心电信号经放大、滤波处理后,作为单片机的模拟输入信号,由单片机完成a/d转换,
42、并将转换后的数据发送给计算机。c8051f060 的adc子系统包括两个1msps、16位分辨率的逐次逼近寄存器型adc,adc 中集成了跟踪保持电路、可编程窗口检测器和dma 接口。这两个adc 可以被配置为两个独立的单端方式adc 或组成一个差分对。数据转换方式、窗口检测器和dma 接口都可用软件通过特殊功能寄存器来控制。这两个adc 及相应的跟踪保持电路可以被独立使能或禁止(用特殊功能寄存器)。adc 控制寄存器(adcncn)中的adnen 位被置为逻辑1 时adcn 被使能。当adnen位为逻辑0 时,adcn 处于低功耗关断方式。adc0和adc1可以独立地工作于单端方式或两者组合
43、工作在差分方式。在单端方式,两个adc可以被配置为同时采样,或分别使用不同的转换速度。在差分方式,adc1从属于adc0,其配置由adc0的配置决定,仅在偏移和增益校准时例外。通道选择寄存器amx0sl中的diffsel位用于选择adc工作在单端方式还是差分方式。本课题采用adc0完成a/d转换,adc0工作于单端方式。adc0有4 种转换启动方式,由adc0cn 中的adc0 启动转换方式位(ad0cm1,ad0cm0)的状态决定。转换触发源有:1.向adc0cn 的ad0busy 位写1;2.定时器3 溢出(即定时的连续转换);3外部adc 转换启动信号cnvstr0 的上升沿;4.定时器
44、2 溢出(即定时的连续转换)。本课题采用定时器3溢出启动adc0。adnbusy 位在转换期间被置1,转换结束后复0。adnbusy 位的下降沿触发中断(当被允许时)并将中断标志adnint(adcncn.5)置1。在单端方式,adcn 的转换数据被保存在adcn 数据字的msb 和lsb 寄存器:adcnh 和adcnl。在差分方式,转换数据(adc0 和adc1组合)被保存在adc0 数据字的msb 和lsb 寄存器:adc0h 和adc0l。 图4.2 a/d转换流程图4.3 中断服务程序a/d转换完成的结果通过uart0发送到计算机,a/d转换完成会产生中断,在中断服务程序中发送数据,
45、在adc0初始化时启动adc0中断。uart0 是一个具有帧错误检测和地址识别硬件的增强型串行口。uart0 可以工作在全双工异步方式或半双工同步方式,并支持多处理器通信。接收数据被暂存于一个保持寄存器中,这就允许uart0 在软件尚未读取前一个数据字节的情况下开始接收第二个输入数据字节。一个接收覆盖位用于指示新的接收数据已被锁存到接收缓冲器而前一个接收数据尚未被读取。对uart0 的控制和访问是通过相关的特殊功能寄存器即串行控制寄存器(scon0)和串行数据缓冲器(sbuf0)来实现的。用同一个sbuf0 地址可以访问发送寄存器和接收寄存器。读sbuf0将自动访问接收寄存器,而写sbuf0
46、自动访问发送寄存器。uart0 可以工作在查询或中断方式。uart0 有两个中断源:一个发送中断标志ti0(scon0.1)(数据字节发送结束时置位)和一个接收中断标志ri0(scon0.0)(接收完一个数据字节后置位)。当cpu 转向中断服务程序时硬件不清除uart0 中断标志,中断标志必须用软件清除。这就允许软件查询uart0 中断的原因(发送完成或接收完成)。uart0 提供四种工作方式(一种同步方式和三种异步方式),通过设置scon0寄存器中的配置位选择。这四种方式提供不同的波特率和通信协议。方式0是同步方式,方式1是8 位uart,可变波特率,方式2是9位uart,固定波特率,方式3
47、是9 位uart,可变波特率。 图4.3 中断服务程序流程图5 上位机程序5.1 控件添加方式用vb6.0编写一个串口通信上位机程序,visual basic6.0是一个可视化窗口环境的编程软件,目前使用visual basic6.0可以快速简单编写单片机中的串口通信上位机程序。打开安装好后的visual basic6.0主程序界面。选择“标准exe”,建立visual basic的编程环境。 在菜单的工程选项中选择部件,如图5.1。把visual basic的串口通信控件microsoft comm control 6.0调入工作菜单。 图5.1 添加控件再打开部件对话框中,选择micros
48、oft comm control 6.0的选项框,点击确定 图5.2 添加控件 可以在图示5.2中看到通信控件microsoft comm control 6.0的文件是在c:winntsystem32mscomm32.ocx文件。如果调用通信控件microsoft comm control 6.0控件时无法在控件对话框中找到,可直接在系统目录中搜索名为mscomm32.ocx文件。然后通过浏览加入vb的工作界面中。添加完控件回到编程界面。如下图5.3。 图5.3 添加控件5.2 mscomm 控件使用说明mscomm 控件通过串行端口传输和接收数据,为应用程序提供串行通讯功能。mscomm
49、控件在串口编程时非常方便,我们不必去花时间去了解较为复杂的api 函数,而且在vc、vb、delphi 等语言中均可使用。microsoft communications control(以下简称mscomm)是microsoft 公司提供的简化windows 下串行通信编程的activex 控件,它为应用程序提供了通过串行接口收发数据的简便方法。具体的来说,它提供了两种处理通信问题的方法:(1)事件驱动(eventdriven)方法。(2)查询法。mscomm 控件有很多重要的属性,但首先必须熟悉几个属性:commport:设置并返回通讯端口号。settings:以字符串的形式设置并返回波特
50、率、奇偶校验、数据位、停止位。portopen:设置并返回通讯端口的状态。也可以打开和关闭端口。input:从接收缓冲区返回和删除字符。output:向传输缓冲区写一个字符串。下面分别描述:commport属性:设置并返回通讯端口号。说明:在设计时,nnewvalue可以设置成从1 到16 的任何数(缺省值为1)。但是如果用portopen 属性打开一个并不存在的端口时,mscomm 控件会产生错误68(设备无效)。注意:必须在打开端口之前设置commport 属性。rthreshold属性:在mscomm 控件设置commevent 属性为comevreceive 并产生oncomm 之前,
51、设置并返回的要接收的字符数。说明:当接收字符后,若rthreshold 属性设置为0(缺省值)则不产生oncomm 事件。ctsholding属性:确定是否可通过查询clear to send (cts) 线的状态发送数据。clear to send 是调制解调器发送到相联计算机的信号,指示传输可以进行。该属性在设计时无效,在运行时为只读。说明:如果clear to send 线为低电平(ctsholding = false) 并且超时,mscomm 控件设置commevent 属性为comeventctsto (clear to send timeout) 并产生oncomm 事件。clea
52、r to send 线用于rts/cts (request to send/clear to send) 硬件握手。如果需要确定clear to send 线的状态,ctsholding 属性给出一种手工查询的方法。sthreshold属性:mscomm 控件设置commevent 属性为comevsend 并产生oncomm 事件之前,设置并返回传输缓冲区中允许的最小字符数。说明:若设置sthreshold 属性为0(缺省值),数据传输事件不会产生oncomm 事件。若设置sthreshold 属性为1,当传输缓冲区完全空时,mscomm 控件产生oncomm 事件。如果在传输缓冲区中的字符
53、数小于value,commevent 属性设置为comevsend,并产生oncomm 事件。comevsend 事件仅当字符数与sthreshold 交叉时被激活一次。cdholding属性:通过查询carrier detect (cd) 线的状态确定当前是否有传输。carrier detect 是从调制解调器发送到相联计算机的一个信号,指示调制解调器正在联机。该属性在设计时无效,在运行时为只读。设置值:cdholding 属性的设置值为:true代表carrier detect 线为高电平,false代表carrier detect 线为低电平说明:注意当carrier detect 线为
54、高电平(cdholding = true) 且超时时mscomm控件设置commevent 属性为comeventcdto(carrier detect 超时错误),并产生oncomm 事件。dsrholding属性:确定data set ready (dsr) 线的状态。data set ready 信号由调制解调器发送到相连计算机,指示作好操作准备。该属性在设计时无效,在运行时为只读。说明:当data set ready 线为高电平(dsrholding = true) 且超时时,mscomm控件设置commevent 属性为comeventdsrto(数据准备超时)并产生oncomm 事件。当为data terminal equipment (dte)机器写data set ready/data terminal ready 握手。 settings属性:设置并返回波特率、奇偶校验、数据位、停止位参数。 说明:当端口打开时,如果lpsznewvalue非法,则mscomm 控件产生错误380(非法属性值)。 lpsznewvalue由四个设置值组成,有如下的格式:bbbb,p,d,s,bbbb 为波特率,p 为奇偶校验,d 为数据位数,s 为停止位数。lpsznewvalue的缺省值是: 9600,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年广元中核职业技术学院单招职业技能考试题库及答案详解(新)
- 2026年平凉职业技术学院单招综合素质考试题库附参考答案详解(黄金题型)
- 悬雍垂良性肿瘤的护理
- 胸腺良性肿瘤的护理
- 2026年广东科学技术职业学院单招职业适应性考试题库含答案详解(b卷)
- 2026年山西运城农业职业技术学院单招职业倾向性测试题库附答案详解
- 2026年广东省茂名市单招职业倾向性考试题库含答案详解(黄金题型)
- AI赋能保险核保:技术应用与行业变革
- ICU多学科协作诊疗模式
- 2025至2030中国医疗AI辅助诊断系统准确率评价与医院采购标准报告
- 2026湖南医药发展投资集团有限公司所属企业招聘72人(第一季度)笔试参考题库及答案解析
- 2026年六安职业技术学院单招职业适应性考试题库完整答案详解
- 2025年特种设备安全管理人员A证全国考试题库(含答案)
- 车险初级核保试题附答案
- 公司档案管理制度与流程
- 2025年洛阳文化旅游职业学院单招职业适应性测试题库附答案解析
- 百奥赛图公司深度报告:高速成长的生物技术平台乘风破浪未来可期
- 2026年春季第二学期德育主题活动安排
- 精益改善提案培训课件
- 2025年轻型民用无人驾驶航空器安全操控(多旋翼)理论备考试题及答案
- XX县农村房地一体不动产确权登记项目技术设计书
评论
0/150
提交评论