找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 17196|回复: 7
打印 上一主题 下一主题
收起左侧

基于51单片机的电子血压计设计论文

  [复制链接]
跳转到指定楼层
楼主
ID:323001 发表于 2018-6-18 12:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
基于51单片机的电子血压计设计
希望能帮到大家,里有元器件,原理图及子程序,设计框图。

基于单片机的电子血压计设计
摘 要

现代社会的迅速发展,导致环境日益恶化,不健康的生活习性与不科学的饮食习惯,导致人类疾病越来越多的出现。其中,有着人类第一无形杀手称号的高血压病,已逐渐上升到人类疾病危害排行榜的前几名,长期危害着人体健康,让饱受高血压折磨的患者痛不欲生。如何便捷有效地测量与监控高血压,从而有效预防与治疗高血压,成为人们对抗高血压病的首要问题。于是,设计一台便捷的测量血压的装置,成为重中之重。
目前市场上的大部分动态血压记录仪,只记录每次测量的结果,医生面对的是一批真伪难辩的数字,无法判别血压计的准确性、可靠性。本课题研究最终旨在设计出全信息的动态血压记录仪,使每次测量结果完全透明,使医生可以对照原始波形判断数据的真伪,有效甄别出干扰和伪差引起的错误检测,恢复真实血压,保证血压报告的有效性和可靠性。
家用电子血压计,主要是用于家庭。家庭医疗保健已成为现代人的医疗保健时尚。过去人们测量血压必须到医院才行,而今只要拥有了家用电子血压计,坐在家里便可随时监测血压的变化,如发现血压异常便可及时去医院治疗,起到了预防脑出血、心功能衰竭等疾病猝发的作用。本文将详细介绍便携式血压测量装置的设计。



目 录
前言
第一章 便携式血压计装置总体概述
§1.1 便携式血压计简介
§1.1.1 便携式血压计的介绍
§1.1.2 便携式血压计功能简介
§1.1.3 便携式血压计使用注意事项[7]
§1.2 血压计装置设计方案
§1.2.1 设计总体要求
§1.2.2 具体设计方案
§1.3 便携式血压计工作原理
§1.3.1 血压测量的工作原理
§1.3.2 便携式血压计的工作原理
第三章 硬件电路的设计
§3.1 传感器简介以及电路设计
§3.1.1 传感器简介[11]
§3.1.2 传感器电路设计
§3.2 AT89C51单片机的简介及其电路设计
§3.2.1 AT89C51简介
§3.2.2 主要性能参数
§3.3 单片机电路设计
§3.3.1 AT89C51的复位电路:
§3.3.2 AT89C51的时钟电路:
§3.3.3 AT89C51与液晶显示模块的电路连接
§3.4 液晶显示模块简介及电路设计
§3.4.1 液晶显示模块DM-1602简介
§3.4.2 液晶显示模块DM-1602电路设计
§3.5 其他电路设计
§3.5.1低通滤波电路
§3.5.2 电源电路
§3.5.3 线性阀PWM控制电路
§3.5.3 充气PUMP控制电路
§3.5.4 按键电路
第四章 软件系统流程以及程序的设计
§4.1 单片机主程序流程图
§4.2 处理模块
§4.3测量模块
§4.4 信号处理模块
§4.5 显示模块
§4.7 电源处理模块
结论
参考文献
致谢
附录
附录A  子程序流程图
附录B  部分参考程序
附录C  元件清单
附录D  主电路图:



前言
在现代疾病谱上,高血压的危害无疑高居前几位。对于上了年纪的人,血压是一个重要的健康信号。随着生活水平的提高,时下老年人对自己的血压越来越关注。高血压是世界最常见的心血管疾病,也是最大的流行病之一,它的危害非常的巨大,据有关统计资料显示,我国现有的高血压患者已达一亿,并且每年新增人数在300万以上。从高血压目前的危害来看,高血压病已成为人类的头号隐形杀手病。高血压病不但是长期危害人体健康的一种慢性病,而且它还是脑中风、冠心病、心肌梗死、心力衰竭、肾衰等疾病的祸首,因此被人们称为“无形杀手”。
治疗高血压病,首先是要测量准确的血压。测量血压的仪器称为血压计。血压计可分为直接式和间接式两种。两种血压计的工作原理是不相同的,直接式是用压力传感器直接测量压力变化;间接式的工作原理则是控制从外部施加到被测部位上的压强,并将控制的结果与其相关的柯氏音的产生和消失的信息加以判断。前者不管对动脉或静脉都可连续测试,而后者只能测量动脉的收缩压和舒张压。
传统的血压计是模拟的血压计。此类血压计操作比较复杂,测量精度不够,而且受环境影响较大。为了让广大血压计使用者更方便的使用与维护血压计,也让更多的人学会使用血压计进行简单的血压测量,设计出一台操作便捷,测量精确,无需维护的智能型测量血压的装置,以帮助人们对抗高血压。
本论文也具有比较重要的现实意义。目前,市场上的使用的血压计大部分仍是水银血压计,也有一些动态血压记录仪。水银血压计每次测量必须由医生戴上听诊器进行测量,测量过程复杂;而且对不同的医生,测量结果可能不同:对同一个人来说,影响血压因素非常多,由于每次测量的时间不可能很长,测得结果在某些情况就不能真实的反映被测对象的血压值。在动态血压检测中干扰和伪差是不可避免的。目前市场上的大部分动态血压记录仪,只记录每次测量的结果,医生面对的是一批真伪难辩的数字。本课题研究最终旨在设计出全信息的动态血压记录仪,使每次测量结果完全透明,实时分析结合回顾分析,使医生可以对照原始波形判断数据的真伪,有效甄别出干扰和伪差引起的误检测,恢复真实血压,保证血压报告的有效性和可靠性。

第一章 便携式血压计装置总体概述§1.1 便携式血压计简介§1.1.1 便携式血压计的介绍
该产品重量轻,便携,可放入医生护士口袋。无水银,增强环保性,避免了因水银泄露而造成的污染事故。操作简单易懂,特别适合家庭使用。[2]
§1.1.2 便携式血压计功能简介
该血压计以压力传感器测得血压值,再将血压数据通过A/D转换器转换成数字信号,传入单片机,然后由控制核心单片机控制,经主程序处理数据之后,在液晶显示器上把数据显示出来。
§1.1.3 便携式血压计使用注意事项
1.袖带位置须与心脏高度保持一致,上臂自然下垂,肘和前臂自然地搭在桌子上,手心向上,不要把整个胳膊平伸在高于心脏位置的桌子上,或用垫子将胳膊垫得过高;
2. 每天要在固定时间和同样状态下,以相同的姿势测量血压;
3. 应该在安静的状态下进行测量,测量前安静休息10~20分钟,深呼吸2~3次;
4. 饭后或运动后至少休息一小时再进行测量;
5. 不要在浴后、吸烟、饮酒、喝咖啡后测血压;
6. 要在没有尿意时测血压
7. 测量时应保持心情舒畅,没有疲劳感,不紧张。
§1.1.4血压计的技术指标
在设计和使用一个生物医学仪器系统或进行这种测量时,为了方
便,通常又只简单考虑下列基本要求。
一.量程
测量仪器的测量范围称为量程。必须使测量仪器的量程适合于被测信号大小的范围。对所有可能的被测变量或参量的整个可能取值范围,仪器应能提供适当的读数或其它显示信号。仪器量程太小,则被测信号将使仪器“超载”而无法测量;仪器量程过大,则因信号过小而增加测量误差。所以,仪器量程必须适当。对于电子血压计来说,合适的量程应该在0~300mmHg。
二.灵敏度
测量仪器的灵敏度决定被测量多小的一个改变量能够可靠地被测量来。一个仪器的灵敏度越高,它能测出的变化量越小。一个仪器灵敏度的高或低,取决于被测量有一个微小改变时,它是否能可靠地反映出来,而与被测量的绝对大小无关。必须注意,仪器的灵敏度并不是越高越好。对于给定的测量,灵敏度应适当。灵敏度低固然不行,但灵敏度过高将带来非线性或不稳定性。对于电子血压计来说,灵敏度在1刻度/mmHg即可。
三 线性
测量仪器的线性表示在整个测量量程内,输出值是否以相同比例(即呈直线地)随输入值而变化。在一个线性测量系统内,对所有的输入值不论是在量程的高端、中段还是低端,都具有相同的灵敏度。在直角坐标系内,将测量结果作输出值与输入值的对应关系曲线,得到的是一根直线。除非为了某种特殊的目的,一般情况下,希望整个测量量程内有尽可能大的线性范围。至少在感兴趣或最重要的量程段内测量具有足够好的线性。测量仪器通常给出指定量程范围内的非线性值。例如,非线性<±5%,表示在指定量程范围内,灵敏度相差小于±5%。
四.频率响应
对不同频率的输入信号,仪器的反应往往不完全相同。有的仪器对较高频率的信号较灵敏,而对较低频率的信号不灵敏;另外一些仪器则相反。测量仪器的频率响应反映对不同频率信号的灵敏度的变化。对不同频率范围的被测生物信息,必须选择适当频率响应的测量仪器。根据不同的频率范围,有所谓的“高频仪器”、“低频仪器”、“宽频带仪器”。如果频率范围不适当,将出现“失真”,测量结果不符合被测信号的真实情况。人体血压波是一个低频信号,因此电子血压计应具有良好的低频响应。
五.信噪比
测量中总是存在噪声干扰,这种噪声有时使测量无法进行。衡量的标准就是信噪比(S/N),即信号与噪声的相对大小比值。尽管仪器灵敏度很高,如果噪声的大小与信号的大小相近,甚至更高,则测量无法进行。显然,信噪比越大越好。
六.测量平均值
通常一个被测量的真实值是不知道的,需要我们去测定它。总不可避免地具有误差,误差的根源是多种多样的,可能来自测量仪器的某些缺陷、各种外界因素(空气温度、压力、湿度等的变化,外部电磁场、机械振动等)或者观察者的视察等等。故严格地讲,真实值是无法确切地测得的。我们可以这样来定义实验科学中的真实值:设在测量中观察的次数为无限多,根据误差分布定律,正负误差出现的几率相等,故将各观察值相加,加以平均,可获得极接近于真实值的数值。所以测量次数无限多时求得的平均值可作为科学实验的真实值。当然,平时我们测量的次数都是有限的,求得的只是近似真实值的平均值。常用的平均值有下列几种:
1.算术平均值
2.均方根平均值
3.中位值
4.加权平均值
七.精确度与准确度
测量的精确度和准确度的意义是不同的。精确度指所测得数值重复性的大小;准确度指所测得的数值与真实值符合的程度。在一组测量值中,尽管精确度很高,但准确度不一定很好;反之,若准确度好,则精确度一定高。因此,测量仪器的校准是一项十分重要的任务,应当定期与相应的国家标准或地方标准进行校准。还应当注意准确度与灵敏度的区别。人们常把灵敏的仪器称为准确的仪器,这是不确切的。在一个灵敏的仪器中,被测量有一个很小的改变就能使指针偏转,但这时仪器的读数可能与该量的真实值相差很大。
八.绝对误差与相对误差
测量所得的数值和真实值之间总存在着某一误差,这一误差值称为测量的绝对误差。我们用绝对误差值与整个被测量的值之比来估量的准确度是比较方便的,这个比值称为测量的相对误差。
九.重复性
仪器对于在一定时间期限内加上同样的输入信号,能给出同样的输出信号的能力,叫重复性或再现性。重复性不意味着精度。
十 精度
仪器的精度是指其最大误差值,并以该仪器的量程的百分比来表示。按照标准,通常的电气测量仪表依其精度可分为:0.2,0.5,1.0,1.5,2.5等五级。电子血压计的精度一般在1.5级就可以了。
§1.2 血压计装置设计方案§1.2.1 设计总体要求
便携式电子血压计是传感技术和微电脑技术的结合体,它的结构应该能保证完成三项基本任务:①感应血流的压力;②判别高压和低压;③在屏幕上显示测量结果。
感受血流压力离不了传感器,民用电子血压计中所应用的压力传感器必须是高性能低成本的,灵敏度要高,测量范围倒不需要很大。在各种传感器中有一类是利用压电效应的,还有一种人工合成的被称为PVDF的压电薄膜,它是柔软的塑料。其次就是能根据血压变动及时抓住高、低压的微处理器。另外,血压会通过电子血压计的液晶显示屏进行显示。
§1.2.2 具体设计方案
在这里介绍一下有关血压的基本知识,血压是血液在血管内流动时对血管壁的侧压力。血压分收缩压和舒张压。当心室收缩向动脉泵血时,血压升高,其最高值为收缩压。心室舒张时,血压降低,其最低值为舒张压。血压通常以上肢肪动脉测得的血压为代表,正常成年人上胶动脉的收缩压为90~140毫米汞柱,舒张压为60~90毫米汞柱。血压过低或过高都是疾病的征象。
血液在动脉血管中的压力随着心脏的收缩、舒张而不断变化,而人的心脏的收缩频率即心率比较低,一般在30~300bpm,由此血压脉动镶号是相对而言还是属于一种缓慢变化的信号,我的设计是采用外接式的结构,以89C51单片机为核心,由其内部自带的10位8通道A/D转换模块构成的采样模块,,该模块的采样数据由单片机串口经电平转换后送到上位机的串口COMI或COMZ,形成种连续数据采集串行数据传输的方式
本设计是基于89C51单片机的设计,具体装置方案如图1-1所示。

图1-1便携式血压计设计方案
系统工作示意图如图 1-2所示。
图1-2 血压计系统工作示意图
电源开启过后,若有必要修改系统的默认参数,将由键盘输入或PC机对其进行设置。经过了这个阶段以后,系统将对某些参数和硬件内部的一些寄存器进行初始化工作。初始化完成之后,将启动A/D转换,等待直至A/D转换结束。然后将A/D转换结果送入上位机。待采样的时间达1秒钟后将分析数据结果,求出最大值和最小值,将这些数据处理后即为收缩压和舒张压。将它们送往LED数码管进行显示。
§1.3 便携式血压计工作原理§1.3.1 血压测量的工作原理
血压有两种,一是收缩压:是当心脏收缩把血液打到血管所测得的血压,二是舒张压:是心脏在不收缩所得的压力。当袖带的压力等于血压时,血液开始可以流通而产生所谓的袖带声,这时候也就是收缩压,必须开始从这里做记录,直到最后当袖带声没有的时候,此点即为舒张压。
根据气袖在减压过程中,其压力振荡波的振幅变化包络线来判定血压的。目前比较一致的看法是当气袖压力振荡波的振幅最大的时候,气袖的压力是动脉的平均压。动脉的收缩压对应于振幅包络线的第一个拐点,舒张压对应于包络线的第二个拐点。
收缩压判断的确定:通常采用最大的振幅法,即在放气过程中脉搏波振幅度包络线的上升段,当某一个脉搏波的幅度之比时,就认为此时对应的气袖压力为收缩压。
    (1-1)
舒张压判断的确定:也是用最大的振幅法来判定,不过是在脉搏波振幅包络线的下降段,当某一个脉搏波的幅度之比时,就认为此时对应的气袖压力为舒张压。
     (1-2)
血压信号以及收缩舒张压的位置如图1-3所示
图1-3 血压交直流信号及收缩压和舒张压位置
先找出最大振幅值 Amax,在往前找幅值为0.5Amax的瞬态位置对应血压直流分量即为收缩压,往后找幅值为0. 8Amax的瞬态位置对应血压直流分量即为舒张压,将计算出的收缩压和舒张压结果输出至液晶驱动器显示。
§1.3.2 便携式血压计的工作原理
马达在充气时,袖带内部产生压力,数字压力传感器ASDX 001感应到该压力值,经过放大以及滤波电路后,由单片机89C51的第1脚读入,并进行A/D转换。单片机在程序的控制下,严格按照ASDX 001压力传感器的要求的工作时序进行读写控制,读入信号后,对数字信号进运算,然后经DM-162液晶显示模块进行显示
模拟开关之后是模拟通道的转换部分,它包括采样/保持和A/D转换电路。采样/保持电路的作用是快速拾取模拟多路开关输出的子样脉冲,并保持幅值恒定,以提高A/D转换器的转换精度,如果把采样/保持电路放在模拟多路开关之前(每通道一个),还可实现对瞬时信号进行同时采样。
采样/保持器输出的信号送至模数转换器,模数转换器是模拟输入通道的关键电路。由于输入信号变化速度不同,系统对分辨力,精度、转换速率及成本的要求也不同,所以A/D转换器的种类较多。
A/D转换的结果要送给计算机。有的则采用并行码输出,有的则采用串行码输出。使用串行输出结果的方式对长距离传输和需要光电隔离的场合较为有利。


第三硬件电路的设计§3.1 传感器简介以及电路设计§3.1.1 传感器简介[11]
ASDX 001属于微型结构压力传感器ASDX DO系列。ASDX系列是Sensym 公司检定合格的ICT 代表产品的一种增强型品种。也是工业水平领先的一种SDX系列传感器增强型。ASDX 001 传感器的外形尺寸要比SDX稍大,能提供高电平(4.0 V测量范围)的输出电压,价格便宜。ASDX 001压力传感器内置专用集成电路(ASIC)经全面CI校准并有温度补偿。ASDX 001压力传感器采用标准DIP封装,可对传感器偏置、灵敏度、温度系数和非线性度进行数字校正。ASDX 001采用了IC兼容性协议,无需额外的元件或电子电路,就可容易地连接最常用的微控制器和微处理器。
所有ASDX DO压力传感器的精度在满量程范围内为 。具有可用单一5 供电电压土作的特性。传感器的设计和制造均遵循ISO 9001标准。此系列传感器可用于非腐蚀性、非电离的工作流体,如空气和干燥气体。
传感器的输出是一个16进制格式的己校正的压力值,其分辨率为12位。
该压力传感器可用于测量绝对压、差力压和表力压。范围从1PSI到100PSI,绝压型传感器有一个内部真空参比值(基准值),因此可直接输出一个与绝对压成比例的信号。差压型装置允许在传感膜片的任一侧施加压力,可用于压力差的测量。
数字压力传感器ASDX 001的结构简介。
(1)外部结构:
图2-1 ASDX 001外部结构图
(2)内部结构
ASDX 001的内部结构主要包括4部分,如图2-2所示。
  • 多路分配器;②模/数转换器;③微控控制;④模/数转换器。
图2-2 ASDX 00内部结构图
§3.1.2 传感器电路设计
ASDX 001的外围引脚共有8个,其中5个为空脚。工作电压为正5负。由脚引入正5负电压,为数据输出脚,将所测量得到的数字电压信号传送到单片机的P1.0脚,ASDX 001的地脚为GND脚,接地。
因此,这个电路连接十分简单,只需要将传感器的输出脚Vout连接到AT89C51单片机的1脚上即可,如图2-3所示。
图2-3 ASDX 001与单片机的连接电路原理图


§3.2 AT89C51单片机的简介及其电路设计§3.2.1 AT89C51简介
AT89C51是美国ATMEL公司生产的低电压 ,高性能CMOS 8位单片机,片内含4k bytes的可反复擦写的Flash只读程序存储器和128 bytes的随机存取数据存储器(RAM ),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大的AT89C51单片机能应用许多高性价比的场合,可灵活应用于各种控制领域。
AT89C51的封装如图2-4所示。
图2-4  AT89C51封装图
§3.2.2 主要性能参数
(1)主要特性:[8][11]
·4K字节可编程闪烁存储器;寿命:1000写/擦循环;数据保留时间:10年
·全静态工作:0Hz-24Hz
·三级程序存储器锁定
·128*8位内部RAM
·32可编程I/O线
·两个16位定时器/计数器
·5个中断源
·可编程串行通道
·低功耗的闲置和掉电模式
·片内振荡器和时钟电路
(2)管脚说明:
    VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下所示。
口管脚 (备选功能)
P3.0 RXD(串行输入口)
P3.1 TXD(串行输出口)
P3.2 /INT0(外部中断0)
P3.3 /INT1(外部中断1)
P3.4 T0(记时器0外部输入)
P3.5 T1(记时器1外部输入)
P3.6 /WR(外部数据存储器写选通)
P3.7 /RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的 /PSEN信号将不出现。
/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时, /EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
(3)振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
(4)芯片擦除
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
§3.3 单片机电路设计§3.3.1 AT89C51的复位电路:
同时在第9脚引出一个22uF的电容和一个2K的电阻接+5V的电源组成一个复位电路,如图2-5所示。
图2-5  AT89C51复位电路原理图
§3.3.2 AT89C51的时钟电路:
AT89C51的+5V电源由39脚引入,第19脚接地,第17脚和第18脚间由12MHz的晶振及两个20pF的无极性电路组成一个时钟振荡电路,如图2-6所示。
图2-6  AT89C51时钟电路原理图
§3.3.3 AT89C51与液晶显示模块的电路连接
液晶显示模块所要的数字信号从AT89C51的P0.0-P0.7口引出,分别对应的接DM-162的D0-D7端口,完成数据传输,液晶显示模块的控制引脚RS、PR、E分别接到89C51的P3.5、P3.6、P3.7口,以实现微处理器对液晶显示模块的控制,如图2-7所示。
图2-7  AT89C51与显示模块电路接线原理图
§3.4 液晶显示模块简介及电路设计§3.4.1 液晶显示模块DM-1602简介
液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。
这里介绍的字符型液晶模块是一种用5x7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字、2行20个字等等,实物图片如图2-8所示。
图2-8  DM-162实物图
1602采用标准的14脚接口,其中:
第1脚:VSS为地电源
第2脚:VDD接5V正电源
第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4 脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。
第 6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第 7~14脚:D0~D7为8位双向数据线。
第15~16脚:空脚
1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如表2-1所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是 01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,就能看到字母“A”。
表2-1 CGRM和CGRAM中字符代码与字符图形对应关系
高位
地位
0000
0010
0011
0100
0101
0111
××××0000
CGRAM(1)

1
è
Q
p
××××0001
(2)
2
A
R
q
××××0010
(3)
3
B
S
r
××××0011
(4)
#
4
C
T
s
××××0100
(5)
$
5
D
U
t
××××0101
(6)
%
6
E
V
u
××××0110
(7)
&
7
F
W
v
××××0111
(8)
>
8
G
X
w
××××1000
(1)
(
9
H
Y
x
××××1001
(2)
)
:
I
Z
y
××××1010
(3)
;
J
[
z
××××1011
(4)
+
<
K
¥
{
××××1100
(5)
|
=
L
|
××××1101
(6)
_
>
M
^
}
××××1110
(7)
.
?
N
-
-
××××1111
(8)
/

O

1602液晶模块内部的控制器共有11条控制指令,如表2-2所示。


表2-2  1062 内部控制指令
指令
RS
R/W
D7
D6
D5
D4
D3
D2
D1
D0
1清显示
0
0
0
0
0
0
0
0
0
1
2光标返回
0
0
0
0
0
0
0
0
1
*
3置输入模式
0
0
0
0
0
0
0
1
I/D
S
4显示开关控制
0
0
0
0
0
0
1
D
C
B
5光标或字符移位
0
0
0
0
0
1
S/C
R/L
*
*
6置功能
0
0
0
0
1
DL
N
F
*
*
7置字符发生存储器地址
0
0
0
1
字符发生存储器地址(AGG)
8置数字存储器地址
0
0
1
显示数据存储器地址(ADD)
9读忙标志或地址
0
1
BF
计数器地址
10写数到CGRAM
1
0
要写的数
11从CGRAM读数
1
1
读出的数据

§3.4.2 液晶显示模块DM-1602电路设计
VSS为地电源,VDD接5V正电源,V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。PS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当PS和PR共同为低电平时可以写入指令或者显示地址,当PS为低电平PR为高电平时可以读忙信号,当PS为高电平PR为低电平时可以写入数据。E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令,如图2-11所示。
0
图2-11   液晶显示模块电路

§3.5 其他电路设计§3.5.1低通滤波电路
传感器和电路中的器件常会产生噪声,人为的发射源也可以通过各种耦合渠道使信号通道感染上噪声。为提高模拟输入信号的信噪比,可以用信号滤波器(Filter)来衰减这些噪声,即通过滤波器来去除许多与测量无关的频率成分,滤去不必要的高频、低频或无关信号,或是取得某些特定频段的信号。滤波器可以用R,L,C等无源元件组成,也可用无源和有源元件组合而成。前者称之为无源滤波器(Passive Filter),后者称为有源滤波器(Active Filter)。有源滤波器中的有源元件可以用晶体三极管,也可以使用运算放大器。采用运算放大器组成的有源滤波器具有体积小、重量轻、损耗低等优点,并且可以提供一定的增益,还可以起到缓冲作用,所以采用运放形式组成的有源滤波器使用特别广泛。本设计所用的滤波器也采用了二阶有源滤波器这种形式。其结构如图3-2所示。其中元件的选择对其性能有很大影响。
§3.5.2 电源电路
电源由AAA电池两颗提供。电源透过L1、D1、U3形成PFM升压电路,R33与C9做为升压后电压滤波作用。实测中,加上R33可降低50%之电源离讯。Q4为VCC电源控制电晶体。R13与R14分压值做为电压侦测位准。
具体工作方式:当3V电压从L1流过给升压IC后,经升压从第3脚输出为5V,Q4为开关管,在关机状态下,Q4不导通,C9,C11为滤波电容。当POWER键按下时Q4导通,输出一个5V的电压给Vcc,供电给其他设备。如图2-12所示。
图2-12   电源电路原理图

§3.5.3 线性阀PWM控制电路
PWM是一种波形调制技术,可用来产生占空比可调的方波输出,广泛用于电机调速控制空面,电动机是常用的电能—动能转换器件。如果简单的通过串电阻或者降电压的方法来降低电动机的转速往往使得效率下降,能耗增加,严重可能使电动机再非额定参数下工作而造成损坏。于是需要一种既要电机工作在额定电压又可以使电动机降低转速的技术。PWM应运而生。
泄气速率以PWM(Pulse Width Modulation 脉宽调变)方式控制,MCU将依据压力值之泄气变化调整泄气速率在规格范围内。C11与C12做为 稳定电源与滤波作用,减少PWM控制避免电源变动造成电压不稳。[12]
具体工作方式:当充气到200KPA时,开始漏气,由IC发出一个信号给第3脚,经R12流过到Q2,使Q2导通,输出一个2.7V的电压给V1,使V1开始工作,D2保护Q2和V1的正常工作而设计,如图2-13所示。
图2-13 线性阀 PWM控制电路
§3.5.3 充气PUMP控制电路
PUMP control讯号控制PUMP动作,R27为限流电阻。
具体工作方式:由IC的4脚输出一个低电平约(0.6V)信号给R27,经Q1导通,VBT为Q1提供3V的电压,Q1导通输出一个3.2V的电压经PUMP,使PUMP导通。D3为保护二极管,使PUMP能稳定工作。[12]如图2-14所示。
图2-14  充气PUMP控制电路原理图
§3.5.4 按键电路
开关连接单片机的27脚,构成整个系统的开关电源。按下POWER键,则系统导通,开始工作。如图2-15所示。
图2-15   按键电路原理图

第四软件系统流程以及程序的设计§4.1 单片机主程序流程图
主程序流程如图3-1所示。
图3-1主程序流程图
主程序依此调用5个模块:处理模块、测量模块、信号处理模块显示模块、显示模块、电源处理模块。
§4.2 处理模块
判断键盘的当前状态(是否开/关电源),执行相应的操作。处理模块流程图如图3-2所示。
图3-2 处理模块流程图
§4.3测量模块
测量信号为二路,压力传感器的信号经放大送AD1,作为静态直流血压信号;隔直后经再次放大送AD2,作为脉搏波信号。由于传感器的AD为10位,因此最高精度可达1/1024。采样后的信号经信号处理模块的处理,最终计算得到收缩压、舒张压。
§4.4 信号处理模块
主要功能是脉搏波的判断和检测,主要分为两步:第一步,对A/D采样的脉搏波信号进行低通滤波处理,排除因外界干扰造成的信号读数的误差;第二步,采用相关运算,最大程度的排除因手臂的运动造成的误差。在这基础上,分析信号,得到波形的峰值(供判断收缩压,舒张压和平均压),得到每个脉搏波的时间。信号处理模块流程图如图3-3所示。
图3-3  信号处理模块流程图
§4.5 显示模块
主要显示3种信息:测量过程显示当前压力值、漏气速率;测量结束后分别以mmHgH和Kpa方式滚动显示收缩压、舒张压及心率;校准状态下显示当前压力值、漏气速率。
§4.6串行通信模块
采用PC机主叫的中断方式,一旦接到PC机发来的命令,对血压进行初始值的设定,主要包括起始加压值,每次的压力递增值和最高压力限制。
LCD显示子程序流程LCD1602。显示模块流程图如图3-4所示。
图3-4  显示模块流程图

§4.7 电源处理模块
用于稳压模块的控制,按开/关键,稳压模块的控制端为高电平,稳压模块处于正常输出状态。此时,血压计处于“开”状态;再次按开/关键,置PAO低电平,关闭稳压模块的输出,处于断电的“关”状态。

结论
目前市场上的大部分动态血压记录仪,存在很多缺点,如:只记录每次测量的结果,医生面对的是一批真伪难辩的数字;需要大量的连线才能把现场传感器的信号送到采集卡上,布线施工麻烦,成本也高;其二,线路上传送的是模拟信号,易受干扰和损耗。为了克服这些缺点,一种基于数字化技术的系统应运而生。
本文设计的血压计在单片机选择上,采用了比较常见的Atmel公司生产的AT89C51。这主要是考虑到:一方面本血压计在软件设计上不涉及大量的计算,AT89C51作为8位微控制器(带4K字节闪速存储器)已经能足够满足设计要求;另一方面,AT89C51系列单片机技术发展比较成熟,且市场价格较低,能够很好地节约设计成本。
本课题研究最终旨在设计出全信息的动态血压记录仪,使每次测量结果完全透明,实时分析结合回顾分析,使医生可以对照原始波形判断数据的真伪,有效甄别出干扰和伪差引起的误检测,恢复真实血压,保证血压报告的有效性和可靠性;设计的集成式A/D传感器大大降低了因为线路复杂而造成的信号干扰;并且使信号传输更为快速准确性也大大提高,降低了产品成本。
但同时由于作者能力有限设计方面也有缺陷,如由于成本限制,采用的芯片并不是最新版本,系统计算速度上不如同类产品;能源消耗量还没有完全优化。望读者给予建议或意见。
参考文献
[1] 张国雄.测控电路[M].第3版.机械工业出版社
[2] 包旭鹤.便携式电子血压计设计.现代电子技术[J].2007年第8期总第247期 7-11页
[3] 张毅刚 彭喜元.单片机原理与应用设计[M].电子工业出版社.2008
[4] 阎石.数字电子技术基础[M].第4版.高等教育出版社.1989
[5] 宋家友 张友汉.新编电子线路设计实用手册[M].福建科学技术出版社2007
[6] 王武江 陈树凯.常用集成电路速查手册[M].冶金工业出版社.2004
[7] 崔桂华 万兆强 金少华.高血压的自我疗法[M].中国中医药出版社.2005
[8] 汪吉鹏.微机接口原理与技术[M].高等教育出版社.1997
[9] 邱关源、罗先觉.电路[M].高等教育出版社.2000
[10] 孟立凡、蓝金辉.传感器原理与应用[M].电子工业出版社.2001
[11] 来清民.传感器与单片机接口及实例[M].北京航空航天大学出版社.2005
[12]王晓明.电动机的单片机控制[M].第2版.北京航空航天大学出版社.2001
[13]阮德生.自动测试技术与计算机仪器系统设计[M].西安电子科技大学出版.1997
[14] 赵光胜.现代高血压学[M].人民军医出版社.1999
[15] Motorola Semiconductor Technical DATA[J]. 2002 [16]LarryGaddy.[SelectinganA/Dconverter][M].ApplicationBulletinofburr-brown.1998

致谢
经过本次毕业设计,使我能够把大学四年中系统所学的理论知识和实际应用得以结合,总结出了很多实践设计中的技术经验。同时接触到电子产品的一些新技术,了解到电子产品的发展趋势。在设计期间,通过老师的悉心指导,使我在设计思路上更加明了。在刚开始我使用PIC单片机进行设计,但由于所学的单片机是89C51,在汇编语言上面遇到了很大障碍,最后放弃了利用PIC单片机的设计,转向用51单片机进行设计,特别感谢老师对我在编程方面的指导,使我对单片机编程思路有了更加清晰的认识。本次设计同时参考了报旭鹤老师刊登在现代电子技术杂志的基于PIC单片机血压计设计思路。也让我对电路的硬件方面有了全面的设计能力的和动手能力,在软件方面也有了很大的提高,了解到要编好一个程序首先要有丰富程序积累并多去动手做实验、调试。
在设计同时我也认识到自己在技术方面的种种不足,以及在设计思路上面的欠缺,我会在以后的学习生活中注意提高自己的种种不足,同时非常感谢学校老师们的谆谆教诲,在离开大学,走进工作岗位之际,我会记住老师们的教导,将自己所学的知识贡献社会。

附录附录A  子程序流程
(1)  读状态命令子程序流RDcommand:
(2)  读数据子程序ASDX001:
1





1




(3)复位子程序REST:

(5) 写命令子程序流程图GETWD:

附录B  部分参考程序
  1. DAT EQU P1.0
  2. ORG 0000H
  3. LJMP START
  4. ORG 0030H
  5. START:  LCALL ASDX 001       ;调用读数据子程序ASDX001
  6.         LCALL  LCD1602      ;调用LCD显示子程序LCD1602
  7.         SJMP START
  8. RD18B20:LCALL INIT
  9. LCALL GETWD
  10.   RET
  11. *************ASDX001初始化子程序*******
  12. INIT:    CLR EA                ;关闭总中断
  13. INI10:    SETB DAT           ;主机释放总线,P1.0改为输入
  14. MOV R2,#200
  15. INI11:    CLR DAT
  16. DJNZ R2,INI11   ;主机发复位脉冲持续3μs×200=600μs
  17. SETB DAT           ;主机释放总线,口线P1.0改为输入
  18. MOV R2,#30
  19. IN12:    DJNZ R2,INI12        ;ASDX 001等待2μs×30=60μs
  20. CLR C
  21. ORL C,DAT      ;ASDX 001数据线变低(存在脉冲)吗?
  22. JC INI10             ;ASDX 001未准备好,重新初始化
  23. MOV R6,#80
  24. INI13:   ORL C,DAT
  25. JC INI14            ;ASDX 001数据线变高,初始化成功
  26. DJNZ R6,INI13            ;数据线低电平可持续3μs×80=240μs
  27. SJMP INI10               ;初始化失败,重来
  28. ***********读取A/D转换信号子程序******
  29. INI14:  MOV R2,#240
  30. IN15:    DJNZ R2,INI15    ;ASDX 001应答最少2μs×240=480μs
  31. RET                  
  32. WRITE:  CLR EA
  33. MOV R3,#8                 ;循环8次,写一个字节
  34. WR11:   SETB DAT
  35. MOV R4,#8
  36. RRC A                       ;写入位从A中移到CY
  37. CLR  DAT
  38. WR12:   DJNZ R4,WR12               ;等待16μs
  39. MOV  DAT, C              ;命令字按位依次送给ASDX 001
  40. MOV  R4,#20
  41. WR13:   DJNZ  R4,WR13              ;保证写过程持续60μs
  42. DJNZ R3,WR11               ;未送完一个字节继续
  43. SETB DAT
  44. RET                        ;
  45. READ:   CLR  EA
  46. MOVR6,#8             ;循环8次,读一个字节
  47. RD11:    CLR DAT
  48. MOV R4,#4
  49. NOP                       ;低电平持续2μs
  50. SETB  DAT               ;口线设为输入
  51. RD12:    DJNZ  R4,RD12           ;等待8μs
  52. MOV  C,DAT     ;主机按位依次读入ASDX 001的数据
  53. RRC A                   ;读取的数据移入A
  54. MOV R5,#30
  55. RD13:    DJNZ R5,RD13       ;保证读过程持续60μs
  56. DJNZ R6,RD11       ;读完一个字节的数据,存入A中
  57. SETB DAT
  58. RET  
复制代码




附录D  主电路图:


完整的Word格式文档51黑下载地址:
基于单片机的电子血压计设计.doc (1.61 MB, 下载次数: 243)



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏5 分享淘帖 顶1 踩
回复

使用道具 举报

沙发
ID:719568 发表于 2020-4-4 08:29 | 只看该作者
请问可以加点东西进去测量脉搏吗?
回复

使用道具 举报

板凳
ID:673678 发表于 2020-4-9 21:00 | 只看该作者
想问一下我下载了,然后他说什么三秒后连接但是没反应,我就把网页关掉了,但是他黒币还是扣掉了,去哪里找下载的资料
回复

使用道具 举报

地板
ID:648281 发表于 2020-4-9 21:35 | 只看该作者
人偶师 发表于 2020-4-4 08:29
请问可以加点东西进去测量脉搏吗?

你好!可以增加测量脉搏的功能,改程序
回复

使用道具 举报

5#
ID:721709 发表于 2020-4-10 15:06 | 只看该作者
如果我想做这个实物的话,都需要买些什么啊?有大佬能说一下嘛?
回复

使用道具 举报

6#
ID:651220 发表于 2020-6-13 15:16 | 只看该作者
为啥在protues里有些原件找不到啊
回复

使用道具 举报

7#
ID:1049984 发表于 2022-12-26 17:00 来自手机 | 只看该作者
疯了的单片机 发表于 2020-4-9 21:00
想问一下我下载了,然后他说什么三秒后连接但是没反应,我就把网页关掉了,但是他黒币还是扣掉了,去哪里找 ...

我的里面看有吗,或者浏览器下载里面
回复

使用道具 举报

8#
ID:1067505 发表于 2023-7-14 21:05 | 只看该作者
汇编语言的?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表