你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】基于STM32单片机大棚温湿度检测无线蓝牙APP控制设计

[复制链接]
STMCU小助手 发布时间:2022-5-11 13:51
一.硬件方案
本设计由STM32单片机、风扇控制电路、温湿度传感器电路、1602液晶显示电路+蓝牙模块电路和电源电路组成。通过温湿度传感器检测温湿度,并在液晶上和APP上实时显示。当湿度超过75度,APP发出报警信息,通过APP发送指令“O”,风扇启动。通过APP发送指令“C”,风扇关闭。。
主要由STM32单片机+风扇控制电路+温湿度传感器电路+1602液晶显示电路+蓝牙模块电路+电源电路组成;如图:

9(ZI$[I4R7C@@4R76}LV`UJ.png

二.设计功能

(1)通过温湿度传感器检测温湿度,并在液晶上和APP上实时显示。
(2)当湿度超过75度,APP发出报警信息。
(3)通过APP发送指令“O”,风扇启动;通过APP发送指令“C”,风扇关闭。

三.设计原理图
(1)原理图主要采用AD软件进行设计,如图:

Q4[JS0YP@`}F4N2U7RL84}6.png

(2)PCB图如下:

0D$%UN5ALC}Z8SR%$@Y_H.png

四.软件设计
(1)程序流程图

D69J6`TMMUUAEOAC`}D1FRJ.png

(2)主程序源码

  1. int main(void)
  2. {
  3.         delay_init();                     //延时函数初始化         
  4.         uart_init(9600);                 //串口初始化为9600
  5.   TIM3_Int_Init(499,7199);//50ms           
  6.         LED_Init();                                  //初始化与LED连接的硬件接口
  7.          
  8. //         Adc_Init();                                  //ADC初始化            

  9.         Lcd_GPIO_init();  //1602接口初始化
  10.         Lcd_Init();        
  11.         fengshan = 0;         //上电风扇转一下
  12.         delay_ms(200);

  13.         sprintf(dis0,"Temp:%02d C DH:%02d%%",(u16)DHT11.Tem_H,(u16)DHT11.Hum_H);//打印温湿度
  14.         Lcd_Puts(0,1,(unsigned char *)dis0);        //初始化显示
  15.         Lcd_1Put(7,1,0xdf);
  16.         sprintf(dis1,"My designer !   ");//打印电流
  17.         Lcd_Puts(0,0,(u8 *)dis1);//显示电流
  18.         fengshan = 1;
  19.          while(1)
  20.         {
  21.                         if(DHT11_ReadData())        //是否读取到温湿度
  22.                         {           
  23.                                 sprintf(dis0,"Temp:%02d C DH:%02d%%",(u16)DHT11.Tem_H,(u16)DHT11.Hum_H);//打印温湿度
  24.                            Lcd_Puts(0,1,(unsigned char *)dis0);        //显示
  25.                                 Lcd_1Put(7,1,0xdf);
  26.                                 printf(dis0);//串口打印数据
  27.                                 printf("\n");
  28.                                 if(DHT11.Hum_H>75)                          //对比湿度值
  29.                                 {
  30.                                         printf("Shidu High\n");//发送湿度过高
  31.                                 }
  32.                                 else
  33.                                 {
  34.                                         printf("Shidu Normal\n");//湿度正常
  35.                                 }
  36.                                         delay_ms(800);//风扇控制在串口中断中处理
  37.                 }
  38.                
  39.         }                                                                                            
  40. }      
复制代码

]H2}$P5K7OJZ~0G2A]Z(N%5.png
%5I`3)%_N_L3~9$LGDOK1QR.png
3~Z0(W(3~(QWRZT$[S7C6.png
F~J4SH~RE%BU8TIYB~_ZP8F.png
收藏 评论0 发布时间:2022-5-11 13:51

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版