基于AT89S52单片机脉搏测量器的设计

时间:2022-09-23 03:07:59

基于AT89S52单片机脉搏测量器的设计

摘要:脉搏波所呈现出的形态、强度、速率和节律等方面的综合信息,很大程度上反映出人体心血管系统中许多生理病理的血流特征。人们在心慌或发烧时,总要数一数自己的脉搏,而在家庭急救中,准确测量脉搏对于普通人来说常常不易做到。本文基于AT89S52单片机脉搏测量器的性能可靠、测量准确、操作简单的优点,有一定的实用性。

关键词: AT89S52单片机 脉搏测量

1、引言

随着生活水平的提高,人们对各种测量仪器的要求越来越高,脉搏的测量是评价人体生理状况很好的方法。本文设计的脉搏测量器可以通过手指准确测量出脉搏跳动的次数,通过发光二极管显示脉搏的跳动,并通过数码管显示出1分钟内脉搏跳动的次数。它解决了传统测量方法的不确定性和随机性,是一款性价比较高的脉搏测量器。

2、方案设计

基于AT89S52单片机的脉搏测量器由电源模块、复位电路、晶振电路、AT89S52单片机、脉搏感应电路、脉搏处理电路、脉搏次数显示电路以及脉搏显示发光二极管等组成。系统设计框图如图1所示。

3、硬件设计

电源电路为单片机以及其他模块提供标准5V电源;晶振模块为单片机提供时钟标准,使系统各部分能协调工作;复位电路模块为单片机系统提供复位功能;单片机作为主控制器,根据输入信号对系统进行相应的控制;红外发射和接收模块用来检测脉搏信号;信号变换模块用来把红外接收头接收的脉搏信号进行放大和滤波,以便单片机进行处理;显示模块用来显示具体的脉搏测量结果,它会记录脉搏一分钟跳动的次数;发光二极管可以通过发光的形式显示脉搏的跳动。设计出基于AT89S52脉搏测量器电路原理图如2所示。

4、软件设计

4.1 程序流程图

基于AT89S52单片机脉搏测量器的程序流程图如图4所示。其中初始化包含了定时器的设定、优先级的设定和初始值的设置。

4.2 程序清单

基于AT89S52单片机脉搏测量器的程序清单如下所示。

#include

unsigned char i,j,t,m,YSHSHJIAN,YSHHCHONG[3];

unsigned int n,MBO;

unsigned char code

WXUAN[3]={0xf7,0xef,0xdf}; //位选

unsigned char code

XSHB[10]={0x81,0xcf,0x92,0x86,0xcc,0xa4,0xa0,0x8f,0x80,0x84}; //字形码

sbit SHRU= P3^0;

void YSHI(YSHSHJIAN);

main() //主程序

{

TMOD=0X01; //定时器 T0 工作于方式 1

TH0=0xec;

TL0=0X78; //T0 定时时间为 5ms

IE=0X83; //开中断

IT0=1; //外部中断 0 为边沿触发方式

TR0=1; //开定时器 T0

for (;;) //脉搏指示灯控制

{

if(SHRU==0)

{

YSHI(200);

SHRU=1;

}

}

}

externa10()interrupt 0 //外部中断服务程序

{

SHRU=0; //点亮指示灯

if(n==0)

MBO=0;

else

MBO=12000/n; //计算每分钟脉搏数

YSHHCHONG[2]=MBO%10; //取个位数

MBO=MBO/10;

YSHHCHONG[1]=MBO/10; //取十位数

YSHHCHONG[0]=MBO/10; //取百位数

n=0;}

Timer0() interrupt 1 //定时中断服务程序

{

TH0=0xec;

TL0=0X78;

t=WXUAN[j]; //取位值

p3=p3|0x38; //P3.3~P3.5送 1

P3=P3&t; //P3.3~P3.5输出取出的位值

t=YSHHCHONG[j]; //取出待显示的数

t=XSHB[t]; //取字形码

p1=t; //字形码由 P3输出显示

j++; //j作为数码管的计数器,取值为0~2,显示程序通过它确认显示哪个数码管

if(j==3)

j=0;

n++;

if(n==2000) //10秒钟测不到心率,n复位

n=0

}

void YSHI(YSHSHJIAN) //延时子程序

{

for(;YSHSHJIAN>0;YSHSHJIAN--)

{

for(i=;i

}

}

5、系统仿真及调试

应用系统设计完成之后,就要进行硬件调试和软件调试了。硬件调试主要是把电路的各种参数调整到符合设计要求,软件调试可以利用开发及仿真系统进行调试。先排除电路故障,包括设计性错误和工艺性故障,一般原则是先静态,后动态。

5.1 硬件调试

利用万用表或逻辑测试器器,检查电路中的各器件以及引脚的连接是否正确,是否有短路故障。先要将单片机AT89S52芯片取下,对电路板进行通电检查,通过观察看是否有异常,是否有虚焊的情况,然后用万用表测试各电源电压。这些都没有问题后,接上仿真机进行联机调试,观察各接口线路是否正常。

5.2 软件测试

软件调试是利用仿真工具进行在线仿真调试,除发现和解决程序错误外,也可以发现硬件故障。

程序调试一般是分模块进行,分子程序调试,最后连起来统调。在单片机上把各模块程序分别进行调试使其正确无误,可以用系统编程器将程序固化到AT89S52的FLASH ROM中,接上电源脱机运行。

6、结束语

脉搏测量器利用单片机芯片为核心的数字控制,不仅减少了电子元器件的使用,而且有效的降低了控制电路对元器件参数的敏感,其精确度和可靠性得到明显的提高,而控制装置体积也随之变小,携带更方便。利用单片机强大的逻辑功能实现复杂的控制,进而提高整个控制装置的灵活性和适应性。

参考文献

[1]杨西明,朱骐.单片机编程与应用入门[M].北京: 机械工业出版社,2004

[2]董晓红.单片机原理及接口技术[M].西安:西安电子科技大学出版社,2004

[3]张齐,杜群贵.单片机应用系统设计技术―基于C语言编程[M].北京:电子工业出版社,2004

上一篇:浅谈如何构建品德与生活(社会)有效教学模式 下一篇:浅谈高三体育生运动训练损伤的预防