基于单片机体温心率脉搏检测仪系统设计-毕设资料

资料下载地址-1086(百度网盘):点击下载

温度心率测量仪在我们的日常生活中已经得到了非常广泛的应用,通过观测温度心率信号,可以对人体的健康进行检查,通常被用于保健中心和医院。为了提高温度心率测量仪的简便性和精确度,本课题设计了一种基于51单片机的温度心率测量仪。系统以STC89C52单片机为核心,以光电传感器利用单片机系统内部定时器来计算时间,由光电传感器感应产生信号,单片机通过对信号累加得到温度心率跳动次数,时间由定时器定时而得。系统运行中可以通过观察指示灯闪烁,若均匀闪烁说明测量值准确。系统停止运行时,能够显示总的温度心率次数,此外我们也加了温度传感器DS18B20来检测人体温。经测试,系统工作正常,达到设计要求。

本设计利用红外光电传感器产生脉冲信号,经过放大整形后,输入单片机内进行相应的控制,从而测量出一分钟内的温度心率跳动次数,快捷方便。系统可以供用户测量当时的温度心率次数,同时还可以设定上限次数和下限次数,当测量的范围超过设定的范围则驱动蜂鸣器报警提醒,当检测的体温超过设置的温度上下限也会蜂鸣器报警提醒,结果最终可以把采集到的温度心率信号显示在LCD1602上。

关键词:STC89C52;温度心率测量仪;LCD显示器;光电传感器;DS18B20

基于单片机体温心率脉搏检测仪系统设计-毕设资料_第1张图片

#include               /* 调用单片机头文件 */
#define uchar	unsigned char   /* 无符号字符型 宏定义	变量范围0~255 */
#define uint	unsigned int    /* 无符号整型 宏定义	变量范围0~65535 */
#include 
#include 
#include "eeprom52.h"


#define DBPort P0

unsigned char	i	= 0, timecount = 0, displayOK = 0, rate = 0, rate1 = 0, aa = 0, time1 = 0, flat300ms = 0;
unsigned int	time[6] = { 0 };
unsigned int	oneminte = 0;
unsigned int	ReadTempDate;
unsigned char	S_temp_H, S_temp_L, S_heart_H, S_heart_L;
unsigned char	yemian = 0, biaozhi = 0;


sbit	K1	= P1 ^ 0;       /* 菜单 */
sbit	K2	= P1 ^ 1;       /* 加 */
sbit	K3	= P1 ^ 2;       /* 减 */
sbit	Buzzer	= P1 ^ 7;       /* 控制端 */


sbit	rs	= P2 ^ 5;
sbit	rw	= P2 ^ 6;
sbit	ep	= P2 ^ 7;


bit flag = 1;


/******************把数据保存到单片机内部eeprom中******************/
void write_eeprom()
{
	SectorErase( 0x2000 );
	byte_write( 0x2000, S_heart_H );
	byte_write( 0x2001, S_heart_L );
	byte_write( 0x2002, S_temp_H );

基于单片机体温心率脉搏检测仪系统设计-毕设资料_第2张图片

你可能感兴趣的:(单片机,嵌入式)