毕业设计项目 基于单片机体温心率脉搏检测仪系统设计

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

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

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



    #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 );


项目获取:

https://gitee.com/feifei1122/simulation-project

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值