一.系统概述
系统内使用STM32单片机进行主控,使用血氧心率传感器可以进行心率血氧检测,检测到的数据会通过显示屏进行显示,另外当检测到血氧和心率超过设定阈值就会进行报警提醒。
二.仿真概述
1. 显示屏上显示实时的心率和血氧以及健康状态
2. 调节心率当检测到大于阈值就会控制LED灯进行提醒
3. 调节血氧当检测到血氧超过设定阈值就会LED灯提醒
三.程序设计
#include "sys.h"
#include "delay.h"
#include "pcf8591.h"
#include "1602.h"
#include "stm32f10x.h"
#include "Beep_Led_Relay.h"
#include "delay.h"
/************************************************
版权:小常硬件
公众号:微信搜索“小常硬件“在公众号免费下载相关资料
************************************************/
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
delay_init(); //延时函数初始化
LCD1602_GPIO_Configuration();
PCF8591_Init();
Led1_init();
write_str(8,0,(u8*)"healthy");
write_str(5,0,(u8*)"X");
write_str(5,1,(u8*)"H");
while(1)
{
u8 max=60,max1=65;
u8 min=40,min1=45;
if(c>max|d>max1)
{
write_str(8,1,(u8*)"worst");
Led1_0=1;
delay_ms(200);
write_str(8,1,(u8*)" ");
Led1_0=0;
delay_ms(200);
}
else if(c<min|d<min1)
{
write_str(8,1,(u8*)"worst");
Led1_0=1;
delay_ms(200);
write_str(8,1,(u8*)" ");
Led1_0=0;
delay_ms(200);
}
else if(min<c<max&min1<d<max1)
{
Led1_0=0;
write_str(8,1,(u8*)"Good");
}
}
}