资料编号:069 下面是相关功能视频演示:
69-基于51单片机的心率血压检测报警WIFI上传手机APP(源码+原理图+仿真+参考论文)
功能讲解:
采用51单片机,可以检测心率,血压,OLED 显示,并且通过esp8266wifi上传手机App ,并且超过设定值会蜂鸣器报警,全套资料齐全:
下面是原理图展示:采用AD绘制
下面是程序部分展示:使用C语言,采用keil5
void main()
{
unsigned char set1=120,set2=60;
int v1=0,v2,buf,num=0,num1=0;
unsigned char Tx_Buf[12];
unsigned char LEDstatus;//灯的状态
delayms(500);
delayms(1000); //延时一段时间,让WIFI模块稳定
InitUART(); //初始化串口
ESP8266_SERVER(); //初始化ESP8266
OLED_Init(); //初始化OLED
OLED_Clear() ;
SF16T=25;
SF16RH=50;
x=1;beep=1;K1=K2=1;
while(1)
{
if(sb==1)
{
OLED_ShowNum(0,2,v1,3,16);//显示ASCII字符的码值
OLED_ShowString(35,2,"/Min",16);
OLED_ShowNum(70,2,set1,3,16);//显示ASCII字符的码值
OLED_ShowNum(95,2,set2,3,16);//显示ASCII字符的码值
OLED_ShowNum(0,5,v2/10,4,16);//显示ASCII字符的码值
OLED_ShowString(35,5,".",16);
OLED_ShowNum(45,5,v2%10,1,16);//显示ASCII字符的码值
OLED_ShowString(55,5,"KPa",16);
//OLED_ShowNum(90,3,num1,3,16);//显示ASCII字符的码值
//OLED_ShowNum(80,5,buf,3,16);//显示ASCII字符的码值
Tx_Buf[0]=v1/10+0x30; //将温湿度数据送往发送数组,送给模块让手机APP显示
Tx_Buf[1]=v1%10+0x30;
Tx_Buf[2]='/';
Tx_Buf[3]='M';
Tx_Buf[4]=v2/1000+0x30; //将温湿度数据送往发送数组,送给模块让手机APP显示
Tx_Buf[5]=v2%1000/100+0x30;
Tx_Buf[6]=v2%100/10+0x30;
Tx_Buf[7]='.';
Tx_Buf[8]=v2%10+0x30;
Tx_Buf[9]='K';
Tx_Buf[10]='P';
Send_DATA(Tx_Buf) ;//发送数据
}
if((v1>set1||v2>1200||v1<set2)&&sb==1) beep=0;
else beep=1;
}
}
下面是该资料的分享下载链接: