一.系统概述
心电监测系统的功能如下:
1. 心电数据采集:系统能够实时采集用户的心电信号数据。
2. 数据显示:在显示屏上实时显示采集到的心电波形和相关参数。
3. 数据传输至APP端:将采集到的心电数据通过无线通信模块传输到用户的手机APP端。
4. APP端功能:在手机APP上绘制并显示心电波形图像。提供用户友好的界面,以便用户能够实时监测和分析自己的心电信号。
通过以上设计,这套心电监测系统能够帮助用户实时监测心脏健康状况,及时发现异常情况,并通过手机APP提供便捷的数据展示和分析功能,提升用户对心脏健康的管理和关注能力。
二.电路设计
电路图采用Altium Designer进行设计:
1. 通过STM32F103C8T6单片机作为系统主控,最小系统电路是整个电路的核心;
使用ECG传感器AD8232来检测心电脉搏数据,需要将模块的OUT引脚接单片机的ADC输入引脚,LO-、LO+脚接单片机的GPIO脚;
2. 通过0.96寸的OLED12864进行数据显示,采用IIC总线的形式与单片机进行通信;
3. 通过ESP8266-01S将检测到数据上传到上位机,通过UART串口与单片机进行通信。
三.程序设计
#include "sys.h"
#include "delay.h"
#include "adc.h"
#include "adc2.h"
#include "math.h"
#include "key.h"
#include "OLED_I2C.h"
//#include "Beep_Led_Relay.h"
#include "Control_Report_To_Police.h"
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
delay_init(); //延时函数初始化
TIM4_Init(300,7200); //定时器初始化
OLED_Init(); //OLED初始化
Adc_Init1(); //PA1
OLED_CLS(); //OLED清屏
OLED_ShowCN(32,2,0); //小常硬件
OLED_ShowCN(32+16,2,1);
OLED_ShowCN(32+32,2,2);
OLED_ShowCN(32+32+16,2,3);
delay_ms(500);
OLED_CLS();
// /*******显示汉字**********/
OLED_ShowCN(0,0,6);
OLED_ShowCN(16,0,13); //心电
ALi_ESP8266_GPIO_Init();
MQTT_Buff_Init();
AliIoT_Parameter_Init();
while(1)
{
OLED_Display_Cotrol(); //显示控制函数
}
}