一. 系统概述
本系统采用STM32单片机作为主控单元,通过血氧心率传感器实现心率和血氧的监测。检测到的数据将实时显示在屏幕上。此外,当心率或血氧水平超出预设阈值时,系统会触发报警以提醒用户。
二. 仿真概述
- 实时数据显示在屏幕上,包括心率、血氧水平和健康状态信息。
- 当心率检测值超过设定的阈值时,系统将控制LED灯亮起以进行提醒。
- 当血氧水平超过预设阈值时,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");
}
}
}
24-32-17