为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

便携式脉搏测量仪的设计完整论文

2017-11-18 49页 doc 208KB 52阅读

用户头像

is_624976

暂无简介

举报
便携式脉搏测量仪的设计完整论文便携式脉搏测量仪的设计完整论文 摘 要 脉搏波所呈现出来的形态、强度、速率和节律等方面的综合信息,能反映出人体心血管系统中许多生理疾病的血流特征。根据人体脉搏信号特征,本文设计了一种基于单片机的脉搏测量系统。因为手指放在光的传递路径中,血管中血液饱和度的变化将引起光的传递强度变化,所以,本系统采用了红外发射与接收二极管充当脉搏传感器来采集脉搏信号。首先,将采集到的信号通过低通滤波与放大电路对脉搏信号进行 电路进行电压基准变化,再经过一次放大处理,然后,将放大后的脉搏信号通过整形 电路对整形后的脉搏信号进行放大,将信号转换为...
便携式脉搏测量仪的设计完整论文
便携式脉搏测量仪的完整论文 摘 要 脉搏波所呈现出来的形态、强度、速率和节律等方面的综合信息,能反映出人体心血管系统中许多生理疾病的血流特征。根据人体脉搏信号特征,本文设计了一种基于单片机的脉搏测量系统。因为手指放在光的传递路径中,血管中血液饱和度的变化将引起光的传递强度变化,所以,本系统采用了红外发射与接收二极管充当脉搏传感器来采集脉搏信号。首先,将采集到的信号通过低通滤波与放大电路对脉搏信号进行 电路进行电压基准变化,再经过一次放大处理,然后,将放大后的脉搏信号通过整形 电路对整形后的脉搏信号进行放大,将信号转换为AT89S52单片机易于处理的脉冲信号。通过单片机编程对脉冲信号进行处理,测量出一分钟内的脉搏次数,最终在液晶屏中直观地显示出来。为了节省时间,一般不会作1分钟的测量,通常是测量10秒钟时间内的脉搏数,再把结果乘以6即得到每分钟的脉搏数。当所测得的脉搏次数小于50或大于120时,系统会进行报警。 关键词: 人体脉搏信号;单片机;信号处理;脉搏传感器; ABSTRACT The shape, intensity, speed, and rhythm of pulse signals reflect the physical and pathological characters of heart-blood system in human bodies mostly. According to the characteristics of the human pulse signals, a pulse fluctuation frequency measurement system is designed. When the finger is put in the deliver path of light, as the saturation of blood degree changes, the strength of the light delivered in the path changes. So firstly, two infrared emitting diodes working as a pulse sensor are chosen to collect the signals of human pulse, secondly, an amplification circuit and a filter wave circuit to enlarge the signal are used, then orthopedic circuit which can invert the analog signal is used before the amplification circuit is used again so that AT89S52 single chip microcomputer is able to deal with the pulse signal and get the pulse fluctuation frequency. Finally, the results are displayed with a LCD screen. To save time, we do not usually measure the pulse for a minute ,we just measure it within 10 seconds, then multiply the result by 6 to get the per minute’s count of the pulse. When the count of pulse is less than 50 or more than 120, the bell of the system rings to give a warning. Key Words:Pulse signal of human body; single chip microcomputer; treatment of signal; pulse sensor; 目 录 1 引言 .........................................................................................................................1 系统概述 ..................................................................................................................3 2 2.1 系统总设计目标...............................................................................................3 2.1.1 实现要求 ................................................................................................3 2.1.2 主要完成内容 ........................................................................................3 2.2 系统总体设计 ...........................................................................................3 2.2.1 系统硬件组成部分 .................................................................................3 2.2.2 脉搏传感器的选择 .................................................................................4 2.2.3 信号处理电路所用芯片的选择 .............................................................5 2.2.4 单片机的选择 ........................................................................................5 主处理电路的设计 ..................................................................................................7 3 3.1 单片机最小系统的设计 ...................................................................................7 3.1.1 时钟信号 ................................................................................................7 3.1.2 RC复位电路 ..........................................................................................7 3.2 系统模块电路的设计 .......................................................................................8 3.2.1 信号采集与信号处理电路的设计..........................................................8 3.2.2 定时电路的设计 .................................................................................. 10 3.2.3 报警电路的设计 .................................................................................. 11 3.2.4 显示电路的设计 .................................................................................. 11 3.3 电路所用芯片简介 ......................................................................................... 12 3.3.1 AT89S52芯片简介............................................................................... 12 3.3.2 CD4069芯片的简介 ............................................................................ 16 3.4 1602液晶屏的简介 ........................................................................................ 17 3.4.1 液晶屏的引脚功能 ............................................................................... 17 3.4.2 液晶屏的显示原理 ............................................................................... 18 3.5 PCB腐蚀板的简介 ........................................................................................ 19 3.5.1 PCB板的简介 ...................................................................................... 19 3.5.2 PCB腐蚀板的制作流程 ...................................................................... 20 3.6 红外发光二极管的简介 ................................................................................. 20 4 系统软件的设计 .................................................................................................... 22 4.1 脉搏频率的测量方法 ..................................................................................... 22 4.1.1 周期测量法 .......................................................................................... 22 4.1.2 多周期同步测量法 ............................................................................... 23 4.1.3 频率测量法 .......................................................................................... 23 4.2 程序设计 ........................................................................................................ 24 4.2.1 系统主程序的设计 ............................................................................... 24 4.2.2 脉搏频率的测量原理 ........................................................................... 24 5 系统软件调试 ........................................................................................................ 27 5.1 硬件调试过程 ................................................................................................ 27 5.2 软件调试过程 ................................................................................................ 27 5.3 调试中遇到的问题及解决方法 ..................................................................... 28 结 论 ......................................................................................................................... 29 参考文献 ......................................................................................................................... 30 附录1总电路图 ............................................................................................................. 31 附录2 总程序 ................................................................................................................ 32 致 谢 ...................................................................................... 错误~未定义书签。39 天津职业技术师范大学2010届本科生毕业设计 1 引言 脉诊在中医“望、闻、问、切”四诊中占很重要的地位,原因有以下几点: 首先,脉诊可以辨别病情。通过不断总结,归纳出各种脉象。这种辨脉纲领,便于与临床辨别症状结合起来,使医生能正确地掌握病情。 其次,脉诊可以阐述病机。病机是指疾病发生发展的原理,说明疾病过程中的阴阳、里、寒热、虚实属性及其相互关系。由于脉象随着病机的变化而变化,而且常出现在其他症状之前。所以,脉诊是辨析病情、推测病机的一个重要内容。及时观察脉象的动态,就可以掌握疾病的特性及其变化的规律。 最后,脉诊可以指导治疗。脉诊对明辨病机,确定治疗的方法、选方用药有着举足轻重的作用。可以防止误诊或误治,避免医疗事故的发生。通过诊脉判断病情的轻重,观察疗效的好坏,及时接受脉象反馈的信息,随时修正原有的诊疗方案,采取有力的治疗,使疾病早日康复。 总之,中医对脉诊是十分重视的,认为通过脉诊可以了解患者脏腑气血的盛衰,可以探测病因、病位、预测疗效等。 从近代医学的角度来看,人体循环系统承担着协调全身各组织的能量代谢,输送氧气、营养物质,运走代谢废物等重要的工作,还承担运送抗体、激素等物质以协调整体的动态平衡。从整体的角度对疾病进行综合分析,显然循环系统的信息将占很重要的比重;从整个循环系统来看桡动脉介于大动脉与小动脉之间,由于心脏的舒缩、内脏血容量的变化、血管端点阻抗、管道内脉波的反射、血液的粘滞性、血管壁的粘弹性等因素使脉象携带着有关心脏运动、内脏循环、外周循环等丰富的心血管系统及整体的动态信息。因此脉诊的临床意义很大,它的机理是急待于我们进行研究的。 千年来,中医一直依靠指面感觉细胞来体会患者桡动脉搏动时所提供的脉信息,在判别脉象的属性方面仅停留在一些形象化的概念上。临床脉诊时对某一脉象的认识是以医生指下的体会结合该医生对脉象概念的领会来加以鉴别与区分。由于概念本身较笼统,具体的判别标准又很模糊,内中还掺杂了医生的判别经验及指面感觉等很多主观因素。因此中医脉象在教学中困难较大,临床脉诊时分歧较多。为了让中医走向世界,中医脉诊客观化、现代化势在必行,中医脉诊客观化研究是近代中医脉象研究的一个主要方向。早在1860年Vierord创建了第一台杠杆式脉搏描记仪,国内20世纪50年代初朱颜将脉搏仪引用到中医脉诊的客观化研究方面。此后随着机械及电子技术的发展,国内外在研制中医脉象仪方面进展很快,尤其是70年代中期,国内天津、上海、贵州、江西、等地相继成立了跨学科的脉象研究协作组,多学科共同合作 1 天津职业技术师范大学2010届本科生毕业设计 促使中医脉象研究工作进入了一个新的境界。以下按脉象仪探头的形式、传感器的特点及研制者作一简单的归纳。 脉象探头式样很多,有单部、三部、单点、多点、刚性接触式、软性接触式、气压式、硅杯式、液态汞、液态水、子母式等组成脉象探头的主要原件有应变片,压电晶体、单晶硅、光敏元件、PVDF压电薄膜等,其中以单部单点应变片式为最广泛,不过近年来正在向三部多点式方向发展。 本文所介绍的脉搏测量仪运用了单片机技术,它使用方便,只需将手指端轻轻放在传感器上,即可实时显示出你的每分钟脉搏次数,特别适合体育训练和外出旅游等场合使用。采用红外光学检测法,摒弃了不便于运动状态下测量脉搏的听诊器和吸附在人体上的电极等老式测量方法。利用光电信号来测量脉搏容量的变化。当血管内血容量变化时,组织对光的吸收程度相对发生变化,利用光电传感器可测出这种变化,该变化反映出血液动脉的基本参数情况。一般包括频率、幅度、脉搏波形状的改变。根据郎伯特,比尔定律,物质在一定波长处的吸光度和他的浓度成正比,当恒定波长的光照射到人体组织上时,通过人体组织吸收、反射衰减后测量到的光强在一定程度上反映了被照射部位组织的结构特征。 2 天津职业技术师范大学2010届本科生毕业设计 2 系统概述 2.1 系统总设计目标 2.1.1 实现要求 1、通过测试10秒钟的脉搏次数,计算出60秒内测量出的脉搏次数,并且在LCD液晶屏上显示其数字。正常人脉搏数为50,120次/min。若所测得脉搏数为小于50次/min或大于120/min,系统则会进行报警。 2、将脉搏的跳动转换为电压信号,并加以放大整形和滤波。 2.1.2 主要完成内容 1、脉搏传感器选择。脉搏传感器的精度、灵敏度、抗干扰能力及安装方式决定了脉搏测量精度,因此其选择对整个设计具有决定性的作用。 2、系统硬件设计。脉搏传感器出来的信号幅度很低,所以,脉搏传感器出来的信号首先应进行放大。然后,将脉搏信号通过点烟基准变化电路换为单片机易处理的脉冲信号。本设计作为一个简单脉搏测量仪,需给出脉搏波动频率,所以还需要单片机微处理及显示系统部分硬件电路。 3、系统软件设计。本设计需要给出脉搏波动频率,所以需要对单片机进行编程,以实现对脉搏波动频率的测量、计算及显示。 2.2 系统总体设计方案 2.2.1 系统硬件组成部分 如图2-1的系统方框图所示,该系统有以下6个部分组成。 1、信号采集部分。将脉搏跳动信号传感器转换为与此相对应的电信号。 2,、信号处理电路部分。脉搏传感器出来的电信号一般在毫伏级,且不稳定。要对此进行放大并进行滤波,把周期性脉搏信号变为脉冲信号,便于单片机处理。 3、复位电路部分。按下开关之后,重新进行10秒钟的测量,并显示其数字。 4、时钟电路部分。利用单片机的机器周期对此进行延时来实现10秒钟的定时。 5、显示电路部分。单片机处理得到的脉搏波动频率信息,最后在显示电路中直观地显示出来。所以,需要选用适合的显示设备及显示电路,来完成对一分钟内脉搏脉搏次数的显示。 6、报警电路部分。当一分钟的脉搏数小于50或大于120时,启动报警,蜂鸣器发出响声。 3 天津职业技术师范大学2010届本科生毕业设计 图2-1系统硬件方框图 系统总电路图见附录1。系统总电路图包括传感器部分、信号处理部分、单片机处理部分以及显示部分。 2.2.2 脉搏传感器的选择 传感器又称为换能器、变换器等。脉搏传感器是脉搏检测系统中重要的组成部分,其基本功能是将切脉压力和桡动脉搏动压力这样一些物理量(非电量)转换成为便于测量的电量。脉搏传感器的精度、灵敏度、抗干扰能力及安装方式决定了脉搏测量精度,因此其选型对整个设计具有决定性的作用。 [1]目前,采集脉搏信号时所用的传感器主要有: 1、光电脉搏波传感器。血管不受压力时,血流均匀,反射光也比较均匀,故传感器无脉搏信号输出;当血管受压血液不流动时,传感器也无输出信号;只有当血管受到挤压,血管中的血液断续流动时,反射光也随之变化,这时传感器输出脉搏信号,达到了测量脉搏的作用。这种传感器的特点是结构简单、可靠性高、抗干扰能力强,主要用于测量脉搏的跳动次数。人体不同部位的脉搏波波形存在差异,光电脉搏波传感器不适合用于提取不同部位的脉搏波信号。 2、力传感器。其测量原理是,将测力传感器的受力端压在人体桡动脉处,模仿人的指头。这种方式通常采用压阻式传感器,它具有抗干扰能力强的特点,但由于动脉血管产生的力很小,故量程小,抗冲击力不强。 3、压电膜。脉搏信号还表现为皮肤振动,因此可以用加速度传感器进行检测,其特点是结构简单、体积小、波形测量精度较高。 4 天津职业技术师范大学2010届本科生毕业设计 [9]本设计中,采用红外发射二极管和接收二极管充当传感器的作用。其原理是利用光电信号来测量脉搏容量的变化。检测的基本原理是:随着心脏的搏动,人体组织半透明度随之改变:当血液送到人体组织时,组织的半透明度减小;当血液流回心脏,组织则半透明度增大。这种现象在人体组织较薄的手指尖、耳垂等部位最为明显。因此,本脉搏测量仪将红外发光二极管产生的红外线照射到人体的上述部位,并用装在该部位另一侧或旁边的红外光电管来检测机体组织的透明程度并把它转换成电信号。由于此信号的频率与人体每分钟的脉搏次数成正比,故只要把它转换成脉沖并进行整形、计数和显示,即可实时地测出脉搏的次数。 2.2.3 信号处理电路所用芯片的选择 1、LM324芯片。 [2]LM324是四运放集成电路,价格很便宜,但经实验测试,LM324放大的效果却不是很理想,所以,最终没有选LM324芯片。 2、OP07芯片。 OP07是一种高精度单片运算放大器,具有很低的输入失调电压和漂移,特别适合作前级放大器,放大微弱信号。使用OP07一般不用考虑调零和频率问题就能满足要求。但是,OP07要设置多阶放大电路,比较复杂。所以,最终也没有选择OP07芯片。 3、CD4069芯片。 CD4069与电阻电容相结合,构成低通放大器、施密特触发器对电路进行放大和滤波,电路构成比较简单。 经综合考虑,最终选用了CD4069芯片。 2.2.4 单片机的选择 1、AVR单片机 AVR单片机是ATMEL公司生产的单片机。高速度(50ns)、低功耗,硬件应用Harward结构,具有预取指令功能,使得指令可以在一个时钟周期内执行,而MSC-51要12个时钟周期执行一条指令。AVR单片机如LPC2131等。 2、凌阳单片机 凌阳是台湾凌阳公司推出的单片机,具有高速度、低价、可靠、实用、体积小、功耗低和简单易学等特点,如SPCE061等。 3、51单片机 51单片机是INTEL公司生产的。它具有结构简单,价格便宜,易于开发的特点。通用型,有总线扩展,有较强的位处理功能,有全双工异步串行通信口。 5 天津职业技术师范大学2010届本科生毕业设计 但是其功能相对较少,访问外部数据有瓶颈,作电压范围窄。 本设计中,单片机只需要对脉搏信号的波动频率进行测量、计算和显示,对单片机的要求不是很高。而对51单片机,本人比较熟悉,所以,本设计中选择 [3]51单片机作为信息处理中心。 在51系列单片机中,AT89系列单片机是美国ATMEL公司推出的一种新型高性能低价位、低电压低功耗的8位CMOS微型计算机。AT89S52就是其中一款,它可以完全满足本设计的设计要求,而且,AT89S52的价格较低。 6 天津职业技术师范大学2010届本科生毕业设计 3 主处理电路的设计 3.1 单片机最小系统的设计 3.1.1 时钟信号 单片机最小系统是利用最少的外围器件而使单片机工作的电路组织形式。最小系统只包含单片机、振荡器、复位电路和电源。如图3-1为最小系统电路图。 单片机的XTAL2和XTAL1接晶振,这种结构通过晶振电容C1、C2与单片机内部结构组成一个时钟信号源,晶振的频率决定系统的时钟频率。对于时间要求不是很高的系统,只要按图进行设计就能使系统可靠起振并稳定运行。但由于图中的电容C1、C2起着系统时钟频率微调和稳定的作用。因此,在实际应用中一定要注意正确选择参数(30?10PF),并保证对称性(尽可能匹配)。 专用µP监控电路又称电源监视电路,具有上电时可靠产生复位信号和电源电压跌落到“门槛值”时可靠产生复位信号功能。按有效电平分,有高电平输出、低电平输出两种;按功能分,有简单的电源监视复位电路、带“看门狗”定时器(WATCH DOG,又简称“WDT”)的监控电路、和WDT,EEPROM的监控电路等多种类型。比较常见的生产厂家有MAXIM、PHILIPS、IMP以及DALLS等,51系列微处理器中常用的型号有MAX813L、MAX809、X25043/5等。 3.1.2 RC复位电路 [5]本系统采用的是这种复位方式。RC复位电路的实质是一阶充放电电路。系统上电时该电路提供有效的复位信号RST(高电平)直至系统电源稳定后撤销复位信号(低电平)。理论上说,51系列单片机复位引脚只要外加2个机器周期的有效信号即可复位,即只要保证t,RC>2M(机器周期)便可,但实际设计中,通常取C3为10µF以上,R2通常取10K左右。实践发现R2如果取值太小,例如1K,则会导致RST信号驱动能力变差而无法使系统可靠复位。 外部程序存储器访问控制端: EAVPP/ 由于没有使用外部程序存储器拓展,所以在这里接高电平。 EAVPP/ 7 天津职业技术师范大学2010届本科生毕业设计 P10139P10P00P11238P11P01P12337P12P02P13436P13P03P14535P14P04P15634P15P05P16733P16P06P17832P17P07mcu P321228P27INT0P2727P26P26VCCVCCP331389s5226P25INT1P25P301025P24RXDP24P311124P23TXDP23RESET23P22P2222P21P21C33121P20EA/VPP2010u14P34T0*15P35T1916P36RESETWRC117P37RD19X1R230ALE/P10k12M30P1829X2PSEN C2 30P 图3-1单片机最小系统 3.2 系统模块电路的设计 3.2.1 信号采集与信号处理电路的设计 1、信号采集 如图3-2所示,传感器由红外线发射二极管和接收二极管组成,测量原理如下:将手指放在红外线发射二极管和接收二极管之间,血管中血液的流量随着心脏的跳动变化,由于手指放在光的传递路径中,血管中血液饱和度的变化将引起光的传递强度变化,此变化和心跳的节拍相对应,因此红外接收二极管的电流也跟着心跳的节拍改变,使得红外接收二极管输出与心跳节拍相对应的脉冲信号。 8 天津职业技术师范大学2010届本科生毕业设计 VCC 22K R10R11 100 D3 D2图3-2信号采集电路 2、信号放大与滤波、整形电路 脉搏传感器出来的电压信号较弱,一般在毫伏级,需要对其进行放大。所以,设计信号放大电路,将脉搏传感器出来的信号进行放大,使之成为一个幅值适当 -4所示,该脉冲信号经U3A~U3C、R8、的信号,便于后续电路的处理。如图3 R9、R4以及C6、C5等组成的低通放大器放大,U3D、R6、R7、C4组成的放大器进一步放大后,送给由U3E、U3F、RL1、R5等组成的施密特触发器整形后输出。电路中的可变电阻RL1用来调整施密特触发器的阈值电压,即调整电路的灵敏度。最后将整形后的信号通过R14、Q2、R15再进行一次放大并传给单片机进行处理。图3-3为信号放大与滤波电路图。 1MR4 U3AU3BU3C10K C4R91234561U R722K R547U10KC6 U3DU3EU3FR8100K98RL111101312 C5 2.2U*47k R6R15P33 470K100K R14Q2 1K 图3-3信号放大与滤波电路 9 天津职业技术师范大学2010届本科生毕业设计 3.2.2 定时电路的设计 典型的晶振取11.0592MHz,因为可以准确地得到9600波特率和19200波特率,用于有串口通讯的场合,或者12MHz,因为产生精确的μs级时歇,方便定时操作,对于12MHz晶振,Ts=1μs。本设计利用将单片机内的16位定时/计数器T0作为定时器并设定定时周期。经过整形与放大后出来的脉冲信号接到单片机的P3.3口上,则定时器的开关由程序根据P3.3口上的状态进行控制。检测到P3.3口为低电平时,开启T0开始进行计时与计数。图3-4定时电路的主要设计。 VCCU1 140 P1.0/T2VCC239P1.1/T2 EXP0.0/AD0 338P1.2P0.1/AD1437P1.3P0.2/AD2 536P1.4P0.3/AD3635 P1.5/MOSIP0.4/AD4734P1.6/MISOP0.5/AD5833 P1.7/SCKP0.6/AD6932RSTP0.7/AD71031 P3.0/RXDEA/VPP1130P3.1/TXDALE/PROG 1229P3.2/INT0PSENC21328P3.3/INT1P2.7/A15 1427P3.4/T0P2.6/A1420pF1526 P3.5/T1P2.5/A13XTAL1625P3.6/WRP2.4/A121724 12P3.7/RDP2.3/A11C31823XTAL2P2.3/A10 1922XTAL1P2.1/A9202120pFGNDP2.0/A8 AT89S52 图3-4定时电路图 10 天津职业技术师范大学2010届本科生毕业设计 3.2.3 报警电路的设计 报警电路是对每次脉冲的到来均响铃,与脉搏同步。这样,就可以通过声光的形式形象地把脉搏的快慢显示出来。当一分钟的脉搏次数大于120次或小于50次时蜂鸣器发出响声,发光二极管发光,做出报警。图3-5报警电路的主要设计。图中,两个电阻分别与P2.7与P2.4连接。当P2.4=0;P2.7=0时,启动报警。 VCCD4 VCCU1140R12P1.0/T2VCC 239P1.1/T2 EXP0.0/AD0338470P1.2P0.1/AD1437 P1.3P0.2/AD2536P1.4P0.3/AD3635 P1.5/MOSIP0.4/AD4734P1.6/MISOP0.5/AD5833P1.7/SCKP0.6/AD6 932RSTP0.7/AD71031P3.0/RXDEA/VPP 1130P3.1/TXDALE/PROGQ11229P3.2/INT0PSENR13 1328P3.3/INT1P2.7/A1514271kP3.4/T0P2.6/A141526 P3.5/T1P2.5/A131625P3.6/WRP2.4/A12LS11724 P3.7/RDP2.3/A111823XTAL2P2.3/A101922XTAL1P2.1/A9 2021GNDP2.0/A8 AT89S52Bell 图3-5报警电路图 3.2.4 显示电路的设计 来自传感和整形输出电路的脉冲电平输入单片机的P3.3脚,单片机设为每次脉冲为低电平时触发单片机产生中断并进行计时;通过P0口与P1口把结果送到液晶屏显示出来。如图3-6所示,液晶屏的4脚与单片机的P1.0进行连接,第5脚与P1.1进行连接,第6脚与P1.2进行连接。通过设定P1.0值来改变寄存器的选择状态。当P1.0=0时,选择指令寄存器;当P1.0=1时,选择数据寄存器。P1.1=0时,开始写入数据;P1.2的值从0变到1时,允许写入数据。图中利用滑动变阻器RL来调节液晶屏的亮度。 11 天津职业技术师范大学2010届本科生毕业设计 1602RL 1 VCC2 3 4VCCU15140P1.0/T2VCC6239P1.1/T2 EXP0.0/AD07338P1.2P0.1/AD18437P1.3P0.2/AD29536P1.4P0.3/AD310635P1.5/MOSIP0.4/AD411734P1.6/MISOP0.5/AD512833P1.7/SCKP0.6/AD613932RSTP0.7/AD7141031P3.0/RXDEA/VPPVCC151130P3.1/TXDALE/PROG161229P3.2/INT0PSEN1328P3.3/INT1P2.7/A151427P3.4/T0P2.6/A141526P3.5/T1P2.5/A131625P3.6/WRP2.4/A121724P3.7/RDP2.3/A111823XTAL2P2.3/A101922XTAL1P2.1/A92021GNDP2.0/A8 AT89S52 图3-6显示电路图 3.3 电路所用芯片简介 3.3.1 AT89S52芯片简介 1、单片机的选择在整个系统中的设计中至关重要,单片机因其主要组成部分集成在一个芯片上而得名,具体说就是把中央处理器CPU、随机存储器RAM、只读存储器ROM、中断系统、定时器/计数器以及I/O口电路等主要微型机部件,集成在一块芯片上。虽然单片机只是一个芯片,但从组成和功能上看,它已经具有了计算机系统的属性,为此称它单片微型计算机SCMC(Single Chip Micro Computer),简称单片机。单片机主要应用于控制领域,用以实现各种测试和控制功能,由于单片机在应用时处于被控系统的核心地位并融入其中,所以我们也常称单片机为嵌入式微控制器EMCU(Embedded Microcontroller Unit)。 [3-5]AT89系列单片机是ATMEL公司生产的。这是当前最新的一种电擦写8位单片机,与MCS-51系列完全兼容,有超强的加密功能,可完全替代87C51/52和8751/52。它物美价廉,深受用户欢迎。 与87C51相比,AT89系列的优越性在于,其片内闪电存储器的编程与擦除 12 天津职业技术师范大学2010届本科生毕业设计 完全用电实现;数据不易挥发,可保存10年;编程/擦除速度快,4K字节编程只需时3s,擦除时间约用10ms;AT89系列了实现在线编程;也可借助电话线进行远距离编程。下图3-7AT89S52芯片管脚图。 图3-7AT89S52芯片及管脚图 AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 2、脚功能说明 VCC :电源 GND:地 P0 口:P0 口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动 13 天津职业技术师范大学2010届本科生毕业设计 8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 P1 口:P1 口是一个具有内部上拉电阻的8位双向I/O 口,P1 输出缓冲器能驱动4个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节。如下表为P1口的第二功能: 表3-1 P1口的第二功能 引脚号 第二功能 P1.0 T2(定时器/计时器T2的外部计数输入),时钟输出 P1.1 T2EX(定时器/计时器T2的捕捉/重载触发信号和方向控制) P1.5 MOSI(在系统编程用) P1.6 MISO(在系统编程用) P1.7 SCK(在系统编程用) P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2 输出缓冲器能驱动4个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX @DPTR)时,P2口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。 P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3 口亦作为AT89S52特殊功能(第二功能)使用,如 14 天津职业技术师范大学2010届本科生毕业设计 下表所示。在flash编程和校验时,P3 口也接收一些控制信号。如下表为P3口第二功能: 表3-2 P3口第二功能 引脚号 第二功能 P3.0 RXD(串行输入) P3.1 TXD(串行输出) INT0P3.2 (外部中断0) INT0P3.3 (外部中断1) P3.4 T0(定时器0外部输入) P3.5 T1(定时器1外部输入) WRP3.6 (外部数据存储器写选通) P3.7 (外部数据存储器写选通) RD :地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低ALEPROG/ 8位地址的输出脉冲。在flash 编程时,此引脚()也用作编程输入脉冲。PROG 在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。否则ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。 : 外部程序存储器选通信号()是外部程序存储器选通信号。PSENPSEN 当AT89S52从外部程序存储器执行外部代码时,在每个机器周期被激活两PSEN 次,而在访问外部数据存储器时,将不被激活。 PSEN : 访问外部程序存储器控制信号。为使能从0000H 到FFFFH 的外EAVPP/ EAEA部程序存储器读取指令,必须接GND。为了执行内部程序指令,应该接Vcc。在flash 编程期间,EA也接收12伏Vpp电压。 XTAL1: 振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2: 振荡器反相放大器的输出端。 振荡器特征 AT89S52单片机有一个用于构成内部振荡器的反相放大器,XTAL1和XTAL2分别是放大器的输入、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振 15 天津职业技术师范大学2010届本科生毕业设计 荡器。从外部时钟源驱动器件的话,XTAL2可以不接,而从XTAL1接入,如图3-9所示。外部震荡电路连接图为图所3-10示。由于外部时钟信号经过二分频触发后作为外部时钟电路输入的,所以对外部时钟信号的占空比没有其它要求,最长低电平持续时间和最少高电平持续时间等还是要符合要求的。 图3-7外部振荡电路连接图 图3-8内部振荡电路连接 石英晶振C1,C2=30PF?10PF;陶瓷谐振器C1,C2=40PF?10PF 3.3.2 CD4069芯片的简介 [6-7]CD4069由六个COS/MOS反相器电路组成。此器件主要用作通用反相器、即用于不需要中功率TTL驱动和逻辑电平转换的电路中。图3-11和图3-12为CD4069的引脚图与内部结构图。 12A1Y134A2Y256A3Y398A4Y41110A5Y51312A6Y6714GNDVCC 图3-9CD4069引脚图 16 天津职业技术师范大学2010届本科生毕业设计 图3-10 CD4069内部结构图 3.4 1602液晶屏的简介 在日常生活中,我们对LCD液晶显示器并不陌生。液晶显示模块已作为很多电子产品的通过器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。在单片机的人机交流界面中,一般的输出方式有以下几种:发光管、LED数码管、液晶显示器。发光管和LED数码管比较常用,软硬件都比较简单。 3.4.1 液晶屏的引脚功能 [8]图3-11为1602的液晶屏的引脚图。 1VSS 2VDD3 VL4RS 5R/W6 E7D0 8D19 D210D3 11D412 D513D6 14D715 BLA16BLK 图3-11 1602液晶屏的引脚图 引脚定义为: 17 天津职业技术师范大学2010届本科生毕业设计 第1脚:VSS为地电源。 第2脚:VDD接5V正电源。 第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,使用时可以通过一个10K的电位器调整对比度。 第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。 第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作;当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。 第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。 第7,14脚:D0,D7为8位双向数据线。 第15脚:背光源正极。 第16脚:背光源负极。 3.4.2 液晶屏的显示原理 液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式 [8]电脑、数字摄像机、PDA移动通信工具等众多领域。液晶显示的分类方法有很多种,通常可按其显示方式分为段式、字符式、点阵式等。除了黑白显示外,液晶显示器还有多灰度有彩色显示等。如果根据驱动方式来分,可以分为静态驱动、单纯矩阵驱动和主动矩阵驱动三种。 1、线段的显示 点阵图形式液晶由M×N个显示单元组成,假设LCD显示屏有64行,每行有128列,每8列对应1字节的8位,即每行由16字节,共16×8=128个点组成,屏上64×16个显示单元与显示RAM区1024字节相对应,每一字节的内容和显示屏上相应位置的亮暗对应。当(3FFH)=FFH时,则屏幕的右下角显示一条短亮线;当(000H)=FFH,(001H)=00H,(002H)=00H,(00EH)=00H,(00FH)=00H时,则在屏幕的顶部显示一条由8段亮线和8条暗线组成的虚线。 2、字符的显示 用LCD显示一个字符时比较复杂,因为一个字符由6×8或8×8点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。这样一来就组成某 18 天津职业技术师范大学2010届本科生毕业设计 个字符。可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。 3、汉字的显示 汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码,每个汉字占32B,分左右两半,各占16B,左边为1、3、5等奇数,右边为2、4、6等偶数。根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加1,送第二个字节,换行按列对齐,送第三个字节,直到32B显示完就可以LCD上得到一个完整汉字。 3.5 PCB腐蚀板的简介 由于本设计对稳定性的要求较高,为了避免多次修改等情况发生,采用了PCB腐蚀板。 3.5.1 PCB板的简介 PCB通常分为单面、双面、多层,但随着挠性PCB产量比的不断增加及刚挠性PCB的应用与推广,现在比较常见在说PCB时加上挠性、刚性或刚挠性再说它是几层。为进一步认识PCB,要先了解一下单面、双面及多层PCB的制作工艺流程,来加深PCB制作工艺的了解。 PCB从双面孔金属化工艺基础上发展起来的。它除了继承了双面工艺外,还有几个独特内容:金属化孔内层互连、钻孔与去环氧钻污、定位系统、层压、专用材料。传动多层板常按互连结构工艺的不同来分类:贯通金属化孔、分层金属化孔、多重导线金属化孔。而现在的多层板企业又以能否生产高密度互连积层多层板为技术标致,积层多层板制造工艺类似半加成法,制造方法多种多样,在通常情况下,积层板是以传动工艺生产的PCB为芯板并在其一面或二面的表面上形成更高密度互连一层至四层的多层板。 高密度互连积层多层板还有另外三种常用分类叫法,一是按积电层多层板的介质材料种类。分别为用感光性材料制造积层多层板、用非感光性材料制造积层多层板。二是按电气互连方法分类。分别为电镀法的微导通孔互连的积层多层板、导电胶法的微导通孔互连的积层多层板。三是按"芯板"分类。分别为"芯板"结构、无"芯板"结构高密度互连积层多层板,是1991年日本IBM公司首次发表经几年研制的"表面薄层电路多层板"制造技术研究成果,并首先开始应用于笔记本电脑中。现在的移动电话及笔记本电脑上的应用已经很普及了。从PCB的分类名称叫法上进行组合,是比较容易了解到PCB的基本技术及其基本工艺过程。 19 天津职业技术师范大学2010届本科生毕业设计 目前来说电脑城是比较直观且全开放能见到PCB及其应用的地方,常见的电脑板卡基本上是环氧树脂玻璃布基印制线路板。其中有一面是插装元件另一面为元件脚焊接面,能看出焊点很有规则,这些焊点的元件脚分立焊接面我们就叫它为焊盘。因为除了需要锡焊的焊盘等部分外,其余部分的表面有一层耐波峰焊的阻焊膜。所以,其它铜导线图形不上锡。其表面阻焊膜多数为绿色,有少数采用黄色、黑色、蓝色等,所以在PCB行业常把阻焊油叫成绿油。其作用是,防止波焊时产生桥接现象,提高焊接质量和节约焊料等作用。它也是印制板的永久性保护层,能起到防潮、防腐蚀、防霉和机械擦伤等作用。从外观看,表面光滑明亮的绿色阻焊膜,为菲林对板感光热固化绿油。其不但外观比较好看,便重要的是其焊盘精确度较高,从而提高了焊点的其质量可靠性。相反网印阻焊油就比较差。 3.5.2 PCB腐蚀板的制作流程 [9-10]下面来介绍一下在本次设计中PCB腐蚀板制作的主要流程。 1、油性记号笔在PCB上画好走线。走线要均匀,信号线做好屏蔽,特别是焊盘,最好对着电阻电容等SMD贴片元件画,也就是说要调整好焊盘或焊孔的规格。 2、用小电钻或手钻把PCB该打孔的地方打孔好。当布线和打孔完成的时候,注意检查布线是否合理,走线是否正确,要是有错误,要及时修正。放入三氯化铁固体,倒入开水,水温不要太高。过了十几分钟后,PCB就开始慢慢的退去原有的外壳。 3、用酒精来清洗PCB ,倒上酒精,将PCB浸入溶液内,并用海绵球擦洗。 3.6 红外发光二极管的简介 红外发光二级管由红外辐射效率高的材料制成PN结,外加正向偏压向PN结注入电流激发红外光。光谱功率分布为中心波长830,950nm,半峰带宽约40nm左右,它是窄带分布,为普通CCD黑白摄像机可感受的范围。其最大的优点是可 [10]以完全无红暴,一般采用940,950nm波长红外管或仅有微弱红暴和寿命长。 光二极管的发射功率用辐照度μW/m2表示。一般来说,其红外辐射功率与正向工作电流成正比,但在接近正向电流的最大额定值时,器件的温度因电流的热耗而上升,使光发射功率下降。红外二极管电流过小,将影响其辐射功率的发挥,但工作电流过大将影响其寿命,甚至使红外二极管烧毁。 越过正向阈值电压为0.8V左右电流开始流动,而且是一很陡直的曲线,表明其工作电流对工作电压十分敏感。二极管的切入电压影响亦很大,当温度较高时,将使其切入电压数值降低,反之,切入电压降低。因此要求工作电压准确、稳定,否则影响辐射功率的发挥及其可靠性。辐射功率随环境温度的升高会使其 20 天津职业技术师范大学2010届本科生毕业设计 辐射功率下降。 红外二极管的最大辐射强度一般在光轴的正前方,并随辐射方向与光轴夹角的增加而减小。辐射强度为最大值的50%的角度称为半强度辐射角。不同封装工艺型号的红外发光二极管的辐射角度有所不同。 21 天津职业技术师范大学2010届本科生毕业设计 4 系统软件的设计 从红外对管采集出来的脉搏信号,经过滤波电路转换为脉冲信号之后,需要 [11]对单片机进行编程,实现对脉搏波动频率的测量、计算和显示。本设计中,软件设计采用模块化结构。根据脉搏波动频率测量系统的设定功能,将软件划分为若干个功能相对独立的模块,主要有系统主程序和脉搏波动频率测量模块。本章节内容主要为模块的程序设计思想和流程图。 4.1 脉搏频率的测量方法 脉冲信号的频率是指在单位时间内由信号所产生的交变次数或脉冲个数,即fx=N/t。可以看出测量fx必须将N或t两个量之一作为闸门或基准,对另一个量进行测量。 4.1.1 周期测量法 [12]该方法适用于低频信号。采用单片机内的一个定时/计数器,以单片机内的标准机器周期作为标准时基信号Ts,如图4-1周期测量法原理所示。被测信号的周期作为信号闸门,由程序控制开关对时基进行计数得nx,因此被测信号周期为 。 图4-1 周期测量法原理 22 天津职业技术师范大学2010届本科生毕业设计 4.1.2 多周期同步测量法 [13-14]该方法适用于中频信号。其特点是标准频率信号不是用来填充待测信号的周期,而是与待测信号分别输入到两个计数器进行同步计数。首先,由单片机给出闸门开启信号,此时,计数器并不开始计数,而是等到被测信号的上升沿到来时,才真正开始计数。然后,两级计数器分别对被测信号和标准信号计数。当单片机给出闸门关闭信号后,计数器并不立即停止计数而是等到被测信号上升沿来到的时刻才真正结束计数,完成一次测量过程。如图4-2多周期同步测量法原理所示,可以看出,实际闸门与参考闸门并不严格相等,但最大差值不超过被测信号的一个周期。设对被测信号的计数值为Nx,对时基信号的计数值为N0,时基信号的频率为f0,则被测信号的频率为: (4-1) 图4-2 多周期测量法原理 4.1.3 频率测量法 适用于高频信号。充分利用单片机内的两个定时/计数器。一个作为定时器,给出标准闸门信号Tz,另一个作为计数器,对fx的变化次数直接进行计数得Nx。 如图4-3频率测量法原理所示: 23 天津职业技术师范大学2010届本科生毕业设计 图4-3 频率测量法原理 人体脉搏信号从时域上看,是一个周期性较强的准周期信号。脉搏波动频率为60,120次/min,其频率一般情况下为1Hz左右,属于低频信号。所以,故而采用测脉冲周期的方法进行测量,即用脉冲来控制计时信号,从P3.3口每输入一次脉冲信号就能显示一次脉搏数。 4.2 程序设计 4.2.1 系统主程序的设计 上电后,首先进行整机初始化处理。主程序的初始化模块主要完成仪器硬件、软件的初态设置,单片机内专用寄存器的设定,单片机工作方式及各端口的工作状态的规定。整机初始化结束后,检测P3.3口的状态,如果检测到低电平,则会对脉搏信号进行处理,10秒钟过后,将结果送到LCD显示单元进行显示。 图4-4为系统主程序程序流程图。系统总程序设计见附录2。系统程序设计 [17-18]包括主程序、显示程序以及延时程序。 4.2.2 脉搏频率的测量原理 [16]本设计中对脉搏频率的测量采用周期测量法。假设定时器T0的中断时间为5ms,每中断一次计时变量n加1,因此计时的基本单位为5ms,例如一个脉搏脉冲周期对应的n值为240,则对应的时间为1.2s,由此可得每分钟脉搏数为50。如果n的值达到2000,即10秒钟仍没有发生外部中断,则表示没有脉搏脉冲信号输入,于是n被清零,测量结果显示也为0。定时器T1每中断一次显示一个位,因此3次中断就可以刷新一次数据,即15ms刷新一次数据。 24 天津职业技术师范大学2010届本科生毕业设计 测量时,可将单片机内定时/计数器T0定为16位定时器,对内部机器周期计数,即方式控制字为#01H。定时器的开关由程序根据P3.3口上的状态进行控制,检测到低电平时开T0计数,当紧接着的另一个低电平被检测到时关T1计数。T1中的计数值为nx,则被测脉搏信号周期(对于12MHz晶振,Ts=1μs)。 考虑到脉搏的频率很低,大约为1HZ左右,而16 位定时/计数器的最高计数值为65535,这样定时/计数器将发生溢出,且最后脉搏波动频率的计算涉及到双字节除法,编程较复杂。为此,采用定时器中断方式,即在一个脉搏周期内, [16]隔一段时间T1,T1即为中断周期,且T1<65535,就将TH0,TL0清零。 设N为每分钟脉搏跳动次数,T为脉搏跳动周期,则: (4-2) 假设所测得脉搏的误差不大于1次,由式(4-2)可得: (4-3) 若T=2时: (4-4) 则定时器周期?T不超过1/15秒。若T=1时: (4-5) 则定时器周期?T不超过1/60秒。在本设计中,假设误差不大于4,取T=4,即定时器周期?T不超过3/20秒,且不得超过采用12MHZ晶振频率的单片机的最最大定时时间,所以,在本设计中设定周期为50ms,并计算出设定时器初值为TH0=3CH,TL0=B0H,并通过200次循环来实现10秒的定时。在10秒钟定时时间内,每感受到一次低电平,增加一次脉搏次数。 25 天津职业技术师范大学2010届本科生毕业设计 图4-4系统主程序程序流程图 26 天津职业技术师范大学2010届本科生毕业设计 5 系统软件调试 本系统的调试主要分为硬件调试、软件调试等两大部分。经过初步的分析设计后,在制作硬件电路的同时,调试也在穿插进行。这样有利于问题的分析和解决,不会造成问题的积累,而且不会因为一个小问题而进行整体电路的检查,从而可以节约大量的调试时间。软件编程中,首先完成单元功能模块的调试,然后进行系统调试,整体上与硬件调试的方法差不多。 5.1 硬件调试过程 静态测试静态调试,静态调试是用户系统未工作前的硬件检查过程。 首先应对表面进行检查,即对焊接后的电路板的所有连接线仔细检查。通过目测查出一些明显的安装及连接错误并及时排除。 其次用万用表测量,主要是测量目测是怀疑通断的情况,尤其是要测量电源与地之间是否短路。 第三步是加电检查。开启电源后,检查芯片的电源电压是否正确,也可用手触摸,是否有明显发烫,所遇芯片均未发现异常,可进入下一步调试。 5.2 软件调试过程 软件测试将系统软件按照模块化程序设计方法编写出来,然后输入到 [18]WAVE600编译器编程模拟调试中,在编译器的支持下,将经过初步调试的程序加载到主模块中,按照以下方法调试: (1) 单步。一次只执行一条指令,在每步执行后,返回监控调试程序。 (2) 运行。可以从程序的任何一条地址处启动,然后全速运行。 (3) 断点运行。可以在程序任何位置设置断点,当程序执行到断点时,控制返回到监控调试程序。 (4) 检查和修改存储器单元的内容。 (5) 检查和修改寄存器的内容。 程序调试可以一个一个模块进行,一个一个子程序的调试,从中可以发现程序中的死循环、机器码错误及转移地址错误,也可以发现待测系统中软件算法和硬件设计错误。 程序仿真采用WAVE6000,烧录程序采用双龙ISP下载器。 27 天津职业技术师范大学2010届本科生毕业设计 5.3 调试中遇到的问题及解决方法 1、接上电源之后,采集不到脉搏信号。经过多次调试与采集,发现红外发射与接收二极管的角度没有调好,指甲与红外对管的相对的位置要适中,要寻找出信号最明显的部位。 2、接上电池之后,所测到的脉搏信号不稳定,总会自动地上下跳动。通过接到5V的直流稳压电源之后则会测到较稳定的脉搏信号。 3、对RL1值的调节不好掌握,RL1的大小在45K左右时才能找到测出脉搏信号的那一点。 4、用排线进行连接的电路所测出的脉搏信号也不稳定,最后将所用电路板改成了PCB腐蚀板。 28 天津职业技术师范大学2010届本科生毕业设计 结 论 此课题属于设计类,分析了设计任务,然后查阅大量的资料和相关的书籍,最终选定了用AT89S52单片机作为本设计的核心系统来设计。在本设计电路完成后,它可实现测出一分钟的脉搏次数,当脉搏数小于50或大于120时,会进行报警。本设计的系统编程采用C语言进行编程,用单片机AT89S52作系统核心,主要完成对脉搏信号的采集、放大和滤波电路以及整形电路的设计、单片机信号处理以及显示电路的设计。本设计不足在于用电池充当电源时电流不稳,只有找到脉搏信号较明显的部位才能进行信号采集。随着科技的发展,人们对于体质健康的要求逐渐变高,这种脉搏测量仪的设计具有简单和使用灵活等优点。由单片机构成的便携式脉搏测量仪,在人们运动过后检测脉搏数,控制运动量方面提供了更多的选择。因此,便携式脉搏测量仪的研究和使用将会具有很大的应用价值。 但在设计过程中明显感觉到用汇编语言编写程序还没有达到熟练程度,在以后的学习中还需要加强程序的编写,尤其是单片机C语言。硬件方面对电路理论、模拟电子技术和数字电子技术要求很高,因此在后期学习及以后的工作过程中还学要把这三门课加强。 29 天津职业技术师范大学2010届本科生毕业设计 参考文献 [1] 王丽英.基于光电技术的脉搏测量方法[J].传感器技术.2006,5(11):32-34. [2] 胡宴如.模拟电子技术[J].北京:高等教育出版社,2002. [3] 李广弟,朱月秀等.单片机基础修订本[M].北京:北京航空航天大学出榜社,2001. [4,王庆利,刘奎,袁建敏(单片机设计标准教程[M](北京:北京邮电大学出版社,2008.3. [5,陆子明,徐长根.单片机设计与应用基础[M].北京:国防工业出版社,2005 . [6,常国祥.多通道数字脉搏测量仪的设计[J].煤炭技术.2006,23(12): 700-704. [7,李平,刘明.数字式脉搏测试仪的设计[J].测控技术.2009,28(6):28-31. [8] 赵青格,陈自力.单片机和液晶显示模块接口及驱动设计[J].科学技术与.2007,(23):6225-6228. [9] 方祖祥.关于测量人体脉搏的研究[J]. 传感技术学报.2007,20(5):728-730. [10] 李平,刘明.数字式脉搏测试仪的设计[J].测控技术.2009,28(6):28-31. [11] 陈明义.智能脉搏测试仪的设计[J].测控技术.2007,21(1):117-119. [12] 周红军.脉搏测试仪的设计[J].自然科学报.2008,8(2):21-25. [13] 朱新亚.腕带式脉搏计的设计[J].西安工业学院学报.2008,21(4):349-351. [14] 杨君玲.电子脉搏计的设计[J].使用电子文摘.2007,10(3).34-38. [15]王元昔.新型自检脉搏传感器的研制[J].国外电子元器件.2006,20(5): 46-48. [16] Hallock P. Arterial elasticity in man in relation to age as evaluated by the pulse wave velocity method. Arch Inter Med. 2004, (54):770-798. [17] 李光飞,李良儿等.单片机C程序设计实例指导[M].北京:北京航空航天大学出版社,2005. [18] Enterprise JavaBeansTM Specification,Version 2(1 I-EB,OL](http:,,java(sun(corn,products,ejb( 30 天津职业技术师范大学2010届本科生毕业设计 附录1总电路图 U1140VCCP1.0/T2VCCP10239P0^0P11P1.1/T2 EXP0.0/AD0338P12P0^1P1.2P0.1/AD1437P0^2P1.3P0.2/AD2536P0^3P1.4P0.3/AD3VCC635P0^4P1.5/MOSIP0.4/AD4734P1P0^5P1.6/MISOP0.5/AD5833P1.7/SCKP0.6/AD6P0^62932C3RSTP0.7/AD7P0^7VCCD4SW11103110uP3.0/RXDEA/VPPISPR21130Header 2R12P3.1/TXDALE/PROG43SW64701229VCC910P3.2/INT0PSEN52P2.4132847078P3.3/INT1P2.7/A1561142756P3.4/T0P2.6/A14D1C1152634P3.5/T1P2.5/A13R1162512P3.6/WRP2.4/A1210K1724P3.7/RDP2.3/A1130p1823XTAL2P2.3/A101922P1^5XTAL1P2.1/A9XATL12021P0^7GNDP2.0/A8C2P0^6RSTQ1AT89S52P0^5P1^7R13P2.71602P0^4P1^630p1k1MP0^3R4P0^21P0^12LS1VCCP0^0U3AU3BU3C310KC4P124R91234561UP115P10622KR77R10R1122KVCCBell8R510047UVCC910KC6U3DU3EU3F10R8100K1198RL111101312RL12C5132.2U*47k14R6D315R15D2P3316470K100KR14Q2 1K 31 天津职业技术师范大学2010届本科生毕业设计 附录2 总程序 *************定义接口******************** P0------DB0,DB7 (LCD1602) P1.0------RS (LCD1602) P1.1------RW (LCD1602) P1.2------E (LCD1602) *****************************************/ #include #include #include //Keil library #include //Keil library //*********************第一部分LCD1602设置 START**************************************** #define LCD_DB P0 sbit LCD_RS=P1^0; //P2^0是p2.0的意思; sbit LCD_RW=P1^1; //P2^1是p2.1的意思 sbit LCD_E =P1^2; //P2^2是p2.2的意思 sbit P33=P3^3; sbit P27=P2^7; sbit P24=P2^4; unsigned char maibo=0xff; /******定义函数****************/ #define uchar unsigned char #define uint unsigned int void LCD_init(void); //初始化函数 void LCD_write_command(uchar command); //写指令函数 void LCD_write_data(uchar dat); //写数据函数 void LCD_disp_char(uchar x,uchar y,uchar dat);//在某个屏幕位置上显示一个字符,X(0-15),y(1-2) void LCD_disp_str(uchar x,uchar y,uchar *str); //LCD1602显示字符串函数 void delay_n10us(uint n); //延时函数 32 天津职业技术师范大学2010届本科生毕业设计 //long frequency; //uint T0count; //uchar timecount; //bit flag; /*-------------------------------------- ;模块名称:LCD_init(); ;功 能:初始化LCD1602 ;-------------------------------------*/ void LCD_init(void) { delay_n10us(10); LCD_write_command(0x38);//设置8位格式,2行,5x7 delay_n10us(10); LCD_write_command(0x0c);//整体显示,关光标,不闪烁 delay_n10us(10); LCD_write_command(0x06);//设定输入方式,增量不移位 delay_n10us(10); LCD_write_command(0x01);//清除屏幕显示 delay_n10us(100); //延时清屏,延时函数,延时约n个10us } /*-------------------------------------- ;模块名称:LCD_write_command(); ;功 能:LCD1602写指令函数 ;占用资源: P2.0--RS(LCD_RS),P2.1--RW(LCD_RW),P2.2--E(LCD_E). ;参数说明:dat为写命令参数 ;创建日期:2008.08.15 ;版 本:FV1.0(函数版本Function Version) ;修改日期:-- ;修改说明:-- ;-------------------------------------*/ void LCD_write_command(uchar dat) { delay_n10us(10); LCD_RS=0; //指令 33 天津职业技术师范大学2010届本科生毕业设计 LCD_RW=0; //写入 LCD_E=1; //允许 LCD_DB=dat; delay_n10us(10); // LCD_E=0; delay_n10us(10); // } /*-------------------------------------- ;模块名称:LCD_write_data(); ;功 能:LCD1602写数据函数 ;占用资源: P1.0--RS(LCD_RS),P1.1--RW(LCD_RW),P1.2--E(LCD_E). ;参数说明:dat为写数据参数 ;创建日期:2008.08.15 ;版 本:FV1.0(函数版本Function Version) ;修改日期:-- ;修改说明:-- ;-------------------------------------*/ void LCD_write_data(uchar dat) { delay_n10us(10); LCD_RS=1; //数据 LCD_RW=0; //写入 LCD_E=1; //允许 LCD_DB=dat; delay_n10us(10); LCD_E=0; delay_n10us(10); } /*-------------------------------------- ;模块名称:LCD_disp_char(); ;功 能:LCD1602显示一个字符函数,在某个屏幕位置上显示一个字符,X(0-15),y(1-2)。 ;占用资源:-- ;参数说明:X为1602的列值(取值范围是0-15),y为1602的行值(取值范围是1-2),dat为所要显示字符对应的地址参数。 ;-------------------------------------*/ 34 天津职业技术师范大学2010届本科生毕业设计 void LCD_disp_char(uchar x,uchar y,uchar dat) { uchar address; if(y==1) address=0x80+x; else address=0xc0+x; LCD_write_command(address); LCD_write_data(dat); } /*-------------------------------------- ;模块名称:LCD_disp_str(); ;功 能:LCD1602显示字符串函数,在某个屏幕起始位置{X(0-15),y(1-2)}上显示一个字符串。 ;占用资源:-- ;参数说明:X为1602的列值(取值范围是0-15),y为1602的行值(取值范围是1-2),str为所要显示字符串对应的指针参数。 ;-------------------------------------*/ void LCD_disp_str(uchar x,uchar y,uchar *str) { uchar address; if(y==1) address=0x80+x; else address=0xc0+x; LCD_write_command(address); while(*str!='\0') { LCD_write_data(*str); str++; } } /*-------------------------------------- ;模块名称:delay_n10us(); 35 天津职业技术师范大学2010届本科生毕业设计 ;功 能:延时函数,延时约n个10us ;-------------------------------------*/ void delay_n10us(uint n) { uint i; for(i=n;i>0;i--) { _nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); //延时10us@12M晶振 } } void initTimer(void) { TMOD=0x1; TH0=0x3c; TL0=0xb0; } //////////////////主函数///////////////////////// void main() { //P33=0; LCD_init(); LCD_disp_str(0,1,"counting:"); LCD_disp_str(0,2,"pulse:"); LCD_disp_str(0x0a,2,"50-120"); initTimer(); //TR0=1; ET0=1; EA=1; while(1) { if(P33==0) { delay_n10us(6000); 36 天津职业技术师范大学2010届本科生毕业设计 if(P33==0) { TR0=1; maibo++; LCD_disp_char(0x09,1,maibo/100+'0'); LCD_disp_char(0x0a,1,(maibo/10)%10+'0'); LCD_disp_char(0x0b,1,maibo%10+'0'); while(P33==0); } } } } void timer0(void) interrupt 1 { unsigned char i; TH0=0x3c; TL0=0xb0; if(i==200) { maibo=maibo*6; if( maibo<50 || maibo>120 ) { LCD_disp_char(0x06,2,maibo/100+'0'); LCD_disp_char(0x07,2,(maibo/10)%10+'0'); LCD_disp_char(0x08,2,maibo%10+'0'); P24=0; P27=0; delay_n10us(60000); delay_n10us(60000); P24=1; P27=1; } LCD_disp_char(0x06,2,maibo/100+'0'); LCD_disp_char(0x07,2,(maibo/10)%10+'0'); 37 天津职业技术师范大学2010届本科生毕业设计 LCD_disp_char(0x08,2,maibo%10+'0'); i=0; maibo=0xff; TR0=0; } i++; //add your code here. 38 天津职业技术师范大学2010届本科生毕业设计 39
/
本文档为【便携式脉搏测量仪的设计完整论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索