基于51单片机脉搏体温检测

2023-11-04 01:10

本文主要是介绍基于51单片机脉搏体温检测,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、项目功能

二、仿真

​三、程序


资料下载地址:基于51单片机脉搏体温设计  

一、项目功能

1、通过MPX4115模拟测量脉搏

2、通过DS18B20测量体温

3、按键设置报警阈值,超限报警

二、仿真

温度显示界面

脉搏测量界面

三、程序

main.c代码

void main()	  //主函数
{SCON_init();InitLcd();while(1)			  //进入循环{counts ++;sprintf(mStrBloodPressure,"%.1f    1\r\n",mBloodPressure);KEY_SCAN();getdata=Adc0832(0);	mBloodPressure = (getdata * 10 / 2 - 50) / 10;	if(counts >= 4){counts = 5;send(mStrBloodPressure,1);delay5ms();delay5ms();delay5ms();delay5ms();send(mStrBloodPressure+1,1);delay5ms();delay5ms();delay5ms();delay5ms();send(mStrBloodPressure+2,1);delay5ms();delay5ms();delay5ms();delay5ms();send(mStrBloodPressure+3,1);delay5ms();delay5ms();delay5ms();delay5ms();//send((char *)mStrBloodPressure,11);}temp=getdata/2-5;if( temp >  Xintiao_H ){speaker = 0;}else{speaker = 1;}temp = 0;if( KEY_Set_TIMES == 0 ){if( KEY_TIMES == 1 )//血压显示{getdata=Adc0832(0);if(14<getdata<243)			               //当压力值介于15kpa到115kpa之间时,遵循线性变换{			    
//			  	int vary=getdata;						//y=(115-15)/(243-13)*X+15kpa			temp=getdata*10/2-50;			//测试时补偿值为9.3		//  mBloodPressure = temp;				
//				temp=(int)(press*10);	          //放大10倍,便于后面的计算if(temp != ppress){ppress = temp;OverFlg = 1;}    											dispbuf[3]=temp/1000;			     	//取压力值百位dispbuf[2]=(temp%1000)/100;		    	//取压力值十位dispbuf[1]=((temp%1000)%100)/10;	    	//取压力值个位dispbuf[0]=((temp%1000)%100)%10;			//取压力值十分位LCD_WriteCom( 0x80 );LCD1602_Write_char( "blood pressure 1" );LCD_WriteCom( 0x80 + 0x40 );LCD1602_Write_char("   Rate:");LCD_WriteData( 0x30 + dispbuf[3] );LCD_WriteData( 0x30 + dispbuf[2] );LCD_WriteData( 0x30 + dispbuf[1] );LCD_WriteData( '.' );LCD_WriteData( 0x30 + dispbuf[0] );}}if( KEY_TIMES == 0 ){lcd_1602_word(0x80,16,"  temperature  ");	  //初始化显示 wendu=ReadTemperature();lcd_1602_word(0xc0,10," Temp:    ");//显示第二行数据LCD_WriteCom(0x80+0x40+10);LCD_WriteData(wendu/100+0x30);LCD_WriteData(wendu%100/10+0x30);LCD_WriteData('.');LCD_WriteData(wendu%100%10+0x30);LCD_WriteData(0xdf);LCD_WriteData('C');}}else{KEY_Set_Rate();dispbuf[3]=Xintiao_H/100;			     	    //取设置压力值百位dispbuf[2]=Xintiao_H%100/10;		    	    //取设置压力值十位dispbuf[1]=Xintiao_H%10;	    				//取设置压力值个位LCD_WriteCom( 0x80  );LCD1602_Write_char( " Set heart rate " );LCD_WriteCom( 0x80 + 0x40 );LCD1602_Write_char("warning:");LCD_WriteData( 0x30 + dispbuf[3] );LCD_WriteData( 0x30 + dispbuf[2] );LCD_WriteData( 0x30 + dispbuf[1] );}}
}/**Adress_Com显示地址,Num_Adat显示字符数量,Adress_Data显示字符串内容**/ 
void lcd_1602_word(uchar Adress_Com,uchar Num_Adat,uchar *Adress_Data)
{uchar a=0;uchar Data_Word;LCD_WriteCom(Adress_Com); //选中地址for(a=0;a<Num_Adat;a++)   //for循环决定显示字符个数{Data_Word=*Adress_Data;	  //读取字符串数据LCD_WriteData(Data_Word);  //显示字符串Adress_Data++;			  //显示地址加一}
}

这篇关于基于51单片机脉搏体温检测的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/342157

相关文章

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

烟火目标检测数据集 7800张 烟火检测 带标注 voc yolo

一个包含7800张带标注图像的数据集,专门用于烟火目标检测,是一个非常有价值的资源,尤其对于那些致力于公共安全、事件管理和烟花表演监控等领域的人士而言。下面是对此数据集的一个详细介绍: 数据集名称:烟火目标检测数据集 数据集规模: 图片数量:7800张类别:主要包含烟火类目标,可能还包括其他相关类别,如烟火发射装置、背景等。格式:图像文件通常为JPEG或PNG格式;标注文件可能为X

day-51 合并零之间的节点

思路 直接遍历链表即可,遇到val=0跳过,val非零则加在一起,最后返回即可 解题过程 返回链表可以有头结点,方便插入,返回head.next Code /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}*

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景

JavaFX应用更新检测功能(在线自动更新方案)

JavaFX开发的桌面应用属于C端,一般来说需要版本检测和自动更新功能,这里记录一下一种版本检测和自动更新的方法。 1. 整体方案 JavaFX.应用版本检测、自动更新主要涉及一下步骤: 读取本地应用版本拉取远程版本并比较两个版本如果需要升级,那么拉取更新历史弹出升级控制窗口用户选择升级时,拉取升级包解压,重启应用用户选择忽略时,本地版本标志为忽略版本用户选择取消时,隐藏升级控制窗口 2.

基于51单片机的自动转向修复系统的设计与实现

文章目录 前言资料获取设计介绍功能介绍设计清单具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 单片机

单片机毕业设计基于单片机的智能门禁系统的设计与实现

文章目录 前言资料获取设计介绍功能介绍程序代码部分参考 设计清单具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订

[数据集][目标检测]血细胞检测数据集VOC+YOLO格式2757张4类别

数据集格式:Pascal VOC格式+YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2757 标注数量(xml文件个数):2757 标注数量(txt文件个数):2757 标注类别数:4 标注类别名称:["Platelets","RBC","WBC","sickle cell"] 每个类别标注的框数:

Temu官方宣导务必将所有的点位材料进行检测-RSL资质检测

关于饰品类产品合规问题宣导: 产品法规RSL要求 RSL测试是根据REACH法规及附录17的要求进行测试。REACH法规是欧洲一项重要的法规,其中包含许多对化学物质进行限制的规定和高度关注物质。 为了确保珠宝首饰的安全性,欧盟REACH法规规定,珠宝首饰上架各大电商平台前必须进行RSLReport(欧盟禁限用化学物质检测报告)资质认证,以确保产品不含对人体有害的化学物质。 RSL-铅,

代码训练营 Day26 | 47.排序II | 51. N-皇后 |

47.排序II 1.跟46题一样只不过加一个树层去重 class Solution(object):def backtracking(self,nums,path,result,used):# recursion stopif len(path) == len(nums):# collect our setresult.append(path[:])return for i in range(