一.系统概述
语音播报体温计系统包括温度采集模块,语音播放模块,显示模块,其中核心 CPU采用单片机 STM32,STM32在电子行业运用广泛。温度采集模块使用 MLX90614红外传感器采集体温数据,语音播放模块采用以JR6001为核心的模块,显示模块使用OLED12864液晶模块。
二.仿真概述
1. 系统运行后就会在OLED显示屏上显示体温,语音播报模块是通过一个UART串口模拟的,按下播报按键就会实现温度的播报。
2. 点击下方链接进入串口助手(网页版),设置号好后就能接受语音播报信息,以此来体现语音播报的结果。波特律动 串口助手https://serial.keysking.com
3. 通过调节DHT11的红色按钮来调节温度值,显示屏上温度跟随改变,点击播报按键后在串口助手端也会更新数据。
三.程序设计
#include <main.h>
//
u8 t,h,Heart,l;
u8 tl=10,hh=90;
u8 voice;
u8 key;
u8 rain;
char p1[]="";
//
//
void Init_Test(void);
void Test(void);
void Display(void);
//
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//2:2
Init_Test();
while(1)
{
Key_Scan(&key);
DHT11_Read_Data(&t,&h);
OLED_ShowString(1,1,"BodyTemperature");
OLED_ShowNum(2,8,t,2);
OLED_ShowString(2,11,"C");
if(Key1==0)
{
printf("BodyTemperature: ");
Usart1_TxNum(t,2);
printf(" C");
key=0;
}
if(Heart>=hh){ Beep_1;} else { Beep_0;}
}
}
void Init_Test(void)
{
/*-System Init-*/
Usart1_Init(9600);
Key_Init();
/*-HardWare Init-*/
OLED_Init(); //pb8-9
DHT11_Init(); //pa12
// PCF8591_Init(); //pb10-11
// Relay_Init();//Relay_1;Relay2_1;
// Beep_Init();//Beep_1;
}
void Display(void)
{
}