加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入

基于51单片机的电子血压温度计(单片机健康检测系统设计)proteus仿真设计

08/22 13:45
739
服务支持:
技术交流群

完成交易后在“购买成功”页面扫码入群,即可与技术大咖们分享疑惑和经验、收获成长和认同、领取优惠和红包等。

虚拟商品不可退

当前内容为数字版权作品,购买后不支持退换且无法转移使用。

加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
放大
实物图
相关方案
  • 方案介绍
    • 基于51单片机的电子血压温度计proteus仿真设计 (仿真+程序+演示视频)
  • 相关文件
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

基于51单片机的电子血压温度计proteus仿真设计 (仿真+程序+演示视频)

仿真图proteus 8.9

程序编译器:keil 5

编程语言:C语言

设计编号:S0026

演示视频:


51单片机的电子血压温度计proteus仿真设计(健康监测系统)

主要功能:

以单片机为控制核心,设计一种电子血压计,同时具有测量体温的功能。该系统利用压力传感器采集压力信号,通过温度传感器采集温度信号,整个系统包括处理模块、测量模块、信号处理模块、显示模块以及电源处理模块;血压和体温通过按键进行切换。

(1) 可以实现温度测量,压力测量;

(2) 通过按键设置压力报警器设定值,测量压力值大于设定值时,蜂鸣器报警;低于则蜂鸣器不报警。

(3) LCD液晶显示测量的温度和压力值,可以通过按键切换显示;

(4)设计出来之后用Proteus软件仿真出效果;

主要硬件设备:51单片机、ADC0832数模转换芯片、MPX4115压力传感器、按键、LCD1602液晶屏幕、蜂鸣器。

仿真演示:

测量体温
img

测量血压
img

温度血压调节,通过箭头所指的地方调整温度大小,压力大小,单片机实时采集数据进行处理,通过LCD1602显示。
img

设置血压报警值

通过按键设置压力报警器设定值,测量压力值大于设定值时,蜂鸣器报警;低于则蜂鸣器不报警。

img

程序:


void main()	  //主函数
{
 InitLcd();

  while(1)			  //进入循环
  {
  	KEY_SCAN();
	getdata=Adc0832(0);			    		
	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													  
//				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( "   heart rate   " );
				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] );
	}
  }
}

下载方式见文章开头视频
img

  • 设计资料获取联系方式.doc

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
MC9S12A64CFUE 1 Rochester Electronics LLC 16-BIT, FLASH, 25MHz, MICROCONTROLLER, PQFP80, PLASTIC, QFP-80
$14.39 查看
ATXMEGA64A1-AU 1 Microchip Technology Inc IC MCU 8BIT 64KB FLASH 100TQFP

ECAD模型

下载ECAD模型
$7.58 查看
ATXMEGA64A4U-MH 1 Atmel Corporation RISC Microcontroller, 16-Bit, FLASH, AVR RISC CPU, 32MHz, CMOS, PQCC44, 7 X 7 MM, 1 MM HEIGHT, 0.50 MM PITCH, GREEN, PLASTIC, MO-220VKKD-3, VQFN-44
$4.89 查看

相关推荐

电子产业图谱