当前位置:   article > 正文

【单片机毕业设计】【mcuclub-dz-200】基于单片机的医院病人呼叫系统设计

【单片机毕业设计】【mcuclub-dz-200】基于单片机的医院病人呼叫系统设计

一、基本介绍

项目名:基于单片机的医院病人呼叫系统设计

项目名:医院病人呼叫(实物)
项目编号:mcuclub-dz-200
单片机类型:STM32F103C8T6
具体功能:
从机作为病人呼叫
1、通过DHT11获取温湿度
2、通过pulsesensor心率传感器检测心率,通过一个按键启动,测量10s
3、通过血压检测模块检测血压,通过一个按键启动
4、通过4个按键模拟4个病人呼叫按键,当病人按下呼叫按键时,对应指示灯点亮,当医护人员过来时,再次按下按键,灯熄灭
5、通过蓝牙将温湿度、心率、血压、呼叫号发送到主机

主机作为医护人员观察
1、当没有人呼叫时,显示温湿度、心率、血压,有人呼叫时,依次显示呼叫号
2、通过4个按键作为回应键,当有病人呼叫时,进行声光报警,医护人员按下相对应的按键作为回应,回应后,声光报警取消,从机常亮灯闪烁,若同时有两个病人呼叫,按照先后顺序进行显示
3、通过按键设置温湿度上下限值、心率上下限、血压上下限值,不在设置的上下限值进行蜂鸣器报警
4、通过OLED显示屏显示数据

二、资料总览

实物资料

请添加图片描述

仿真资料

请添加图片描述

三、51单片机部分资料展示

1、实物图展示

单片机型号:STC89C52
供电接口:TYPE-C
板子类型:PCB集成板,厚度1.2,两层板(上下层覆铜接地)
器件类型:元器件基本上为插针式,个别降压芯片会使用贴片式。

在这里插入图片描述

3、原理图展示

软件版本:AD2013
电路连线方式:网络标号连线方式
注意:原理图只是画出了模块的引脚图,而并不是模块的内部结构图

在这里插入图片描述
在这里插入图片描述

4、PCB图展示

在这里插入图片描述
在这里插入图片描述

四、系统框图

绘制软件:VISIO

在这里插入图片描述

本设计以单片机为核心控制器,加上其他模块一起组成此次设计的整个系统,该设计可以分为主机和从机,主机和从机都使用STM32单片机作为此次设计的主控模块,主机的输入由五部分组成,第一部分是温湿度传感器监测模块,通过该模块获取当前环境的温湿度;第二部分是心率监测模块,该模块通过pulsesensor心率传感器检测病人当前的心率值;第三部分是血压监测模块,通过该模块监测病人当前的血压值;第四部分是按键模块,病人按下该模块的按键,当有病人呼叫时,进行声光报警,医护人员按下相对应的按键作为回应,回应后,声光报警取消,从机常亮灯闪烁,若同时有两个病人呼叫,按照先后顺序进行显示;第五部分是供电模块,通过该模块给整个系统进行供电;输出包括一部分,该部分是指示灯模块,通过该模块指示当前按键,对应的指示灯亮;除此之外还有蓝牙模块,从机按下对应按键,信息传送到医护室后,发送对于按下的功能监测到主机。
主机也可以分为输入和输出,输入通过按键作为回应键,通过按键设置温湿度上下限值、心率上下限、血压上下限值,不在设置的上下限值进行蜂鸣器报警,用户可以按下对于的功能监测键,将对于的功能信息传输到主机中,输出通过指示灯进行显示,当当没有人呼叫时,显示温湿度、心率、血压,有人呼叫时,依次显示呼叫号。具体系统框图如图3.1所示。

五、部分程序展示

软件版本:keil5
注意:逻辑程序和驱动程序分开,分布于main.c和其他.c文件

***处理函数
*****/
void Manage_function(void)
{
if(flag_display == 0) //测量界面
{
if(temp_value > temp_max
10 || temp_value < temp_min
10) //如果温度不在设定范围内,标记温度异常
{
alarm_temp = 1;
}
else
{
alarm_temp = 0;
}
if(humi_value > humi_max
10 || humi_value < humi_min
10) //如果湿度不在设定范围内,标记湿度异常
{
alarm_humi = 1;
}
else
{
alarm_humi = 0;
}
if(heart_value > heart_max || heart_value < heart_min) //如果心率不在设定范围内,标记心率异常
{
if(heart_value > 0)
alarm_heart = 1;
}
else
{
alarm_heart = 0;
}
if(blood_value > blood_max || blood_value < blood_min) //如果血压不在设定范围内,标记血压异常
{
if(blood_value > 0)
alarm_blood = 1;
}
else
{
alarm_blood = 0;
}

	if(hujiao_value1 == 1 || hujiao_value2 == 1 || hujiao_value3 == 1 || hujiao_value4 == 1	|| 
		alarm_temp == 1 || alarm_humi == 1 || alarm_heart == 1 || alarm_blood == 1)		//有病人呼或有警报,声光报警
	{
		if(time_num % 3 == 0)
		{
			BEEP = ~BEEP;
			LED = ~LED;
		}
	}
	else
	{		
		BEEP = 0;
		LED = 1;
	}		
}
else									//设置界面,关闭声光报警
{
	BEEP = 0;
	LED = 1;	
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

}

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/82833
推荐阅读
相关标签
  

闽ICP备14008679号