一.系统概述
本次设计的系统是以STM32 单片机作为核心控制器,可以控制气压传感器、温湿度传感器完成对气象参数的采案,将检测到的气象数据在显示端进行显示,并且可以在软件程序中设定阈值,当检测到某个参数超过间值后会控制语音播报模块将异常情况进行播报。
二.仿真概述
通过调节气体模块处的滑动变阻器可以实现气压值的调节,当检测到气压超过阈值就会控制语音播报模块进行播报,语音播报模块的工作状态改变并在显示屏端显示“Voice”字样。
2.通过调节DHT11传感器处的滑动变阻器可以实现温湿度值的调节,当检测到温湿度超过阈值就会控制语音播报模块进行播报,语音播报模块的工作状态改变并在显示屏端显示“Voice”字样。
3. 当温湿度和气压值都不超过阈值后,语音模块停止播报且显示屏端也不会再显示“Voice”字样。
三.程序设计
#includeu8 t,h,adc; u8 th=30,hh=40,adch=50; void Init(void); int main(void) { Init(); while(1) { adc=Get_Adc(ADC_Channel_1); OLED_ShowNum(3,6,adc,2);OLED_ShowString(3,8,"Pa"); DHT11_Read_Data(&t,&h); OLED_ShowNum(1,6,t,2);OLED_ShowString(1,8,"C"); OLED_ShowNum(2,6,h,2);OLED_ShowString(2,8,"%"); OLED_ShowNum(1,11,th,2); OLED_ShowNum(2,11,hh,2); OLED_ShowNum(3,11,adch,2); if(t>th|h>hh|adc>adch) { LedC1_1; OLED_ShowString(4,1,"voice"); delay_ms(500); OLED_ShowString(4,1," "); } else { LedC1_0; OLED_ShowString(4,1," "); } } } void Init(void) { NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//2:2 /* system Init */ Adc_Init(); /* HardWare Init */ OLED_Init(); while(DHT11_Init()); LedC_Init(); OLED_ShowString(1,1,"Temp:"); OLED_ShowString(2,1,"Humi:"); OLED_ShowString(3,1,"Atmo:"); }
-
传感器
+关注
关注
2550文章
51034浏览量
753039 -
单片机
+关注
关注
6035文章
44554浏览量
634580 -
STM32
+关注
关注
2270文章
10895浏览量
355708 -
气象仪
+关注
关注
0文章
61浏览量
8126
原文标题:Proteus仿真实例_基于STM32单片机的气象仪(仿真文件+程序)
文章出处:【微信号:小常硬件,微信公众号:小常硬件】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论