一.系統(tǒng)概述
系統(tǒng)內(nèi)使用STM32單片機進行主控,系統(tǒng)內(nèi)可以檢測糧倉的溫濕度,另外通過EEPROM進行溫濕度閾值的保存,當溫度和濕度超過或者低于設(shè)定的閾值后就會進行相應的控制和調(diào)節(jié)。

二.仿真概述
1. 當檢測濕度低于閾值就會控制加熱并進行報警,當濕度高于設(shè)定閾值就會除濕并報警(閃爍)

2. 當檢測到溫度超過設(shè)定閾值就會控制報警并啟動風扇(閃爍報警)

3. 當檢測溫度低于閾值就會控制報警并進行加熱(閃爍報警),設(shè)定的溫濕度閾值通過EEPROM進行保存,即使重新關(guān)閉和啟動仿真后設(shè)定的閾值不會改變。

三.程序設(shè)計
#include#include #include #include "dht11.h" #include #include "PCF8591.h" #include "24cxx.h" int main(void) { u8 t,h,m=0,tmax=28,tmin=26,hmax=80,hmin=78; Lcd1602_Init();//pa0-7 pb8-10 DHT11_Init();//pa12 Led_Init();//pc0-4 Key_Init();//pb12-15 PCF8591_Init(); AT24CXX_Init(); while(AT24CXX_Check()); Lcd1602_Write_String(0x80,2,(u8*)"T:"); Lcd1602_Write_String(0x80+4,1,(u8*)"c"); Lcd1602_Write_String(0x86+2,1,(u8*)"-"); Lcd1602_Write_String(0xc0,2,(u8*)"H:"); Lcd1602_Write_String(0xc0+4,1,(u8*)"%"); Lcd1602_Write_String(0xc6+2,1,(u8*)"-"); tmin=AT24CXX_ReadOneByte(0);//讀取 tmax=AT24CXX_ReadOneByte(1);//讀取 hmin=AT24CXX_ReadOneByte(2);//讀取 hmax=AT24CXX_ReadOneByte(3);//讀取 Led1_Low;Led3_Low;Led4_Low;Led5_Low; while(1) { DHT11_Read_Data(&t,&h); Lcd1602_Write_Num8(0x82,t); Lcd1602_Write_Num8(0xc2,h); Lcd1602_Write_Num8(0x86,tmin); Lcd1602_Write_Num8(0xc6,hmin); Lcd1602_Write_Num8(0x89,tmax); Lcd1602_Write_Num8(0xc9,hmax); delay_ms(500); if(Key2==0) { m++; if(m==5) m=0; } if(Key3==0) m=0; if(m==0) { AT24CXX_WriteOneByte(0,tmin);//保存 AT24CXX_WriteOneByte(1,tmax);//保存 AT24CXX_WriteOneByte(2,hmin);//保存 AT24CXX_WriteOneByte(3,hmax);//保存 } else if(m==1) { Lcd1602_Write_String(0x86,2,(u8*)" "); if(Key0==0) tmin++; else if(Key1==0) tmin--; } else if(m==2) { Lcd1602_Write_String(0x89,2,(u8*)" "); if(Key0==0) tmax++; else if(Key1==0) tmax--; } else if(m==3) { Lcd1602_Write_String(0xc6,2,(u8*)" "); if(Key0==0) hmin++; else if(Key1==0) hmin--; } } }
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
單片機
+關(guān)注
關(guān)注
6076文章
45495瀏覽量
670380 -
控制系統(tǒng)
+關(guān)注
關(guān)注
41文章
6955瀏覽量
114097 -
STM32
+關(guān)注
關(guān)注
2309文章
11162瀏覽量
373462
原文標題:Proteus仿真實例_基于STM32單片機的糧倉溫濕度控制系統(tǒng)(仿真文件+程序)
文章出處:【微信號:小常硬件,微信公眾號:小常硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
怎樣去設(shè)計一種基于單片機的溫濕度控制系統(tǒng)
設(shè)計簡介:本設(shè)計是基于單片機的溫濕度控制系統(tǒng),主要實現(xiàn)以下功能:主機1、設(shè)置溫濕度閾值2、溫濕度超過設(shè)置閾值報警,并顯示異常從
發(fā)表于 11-19 08:24
怎樣去設(shè)計一個基于單片機的糧倉溫濕度無線監(jiān)測系統(tǒng)
任務書,以及相關(guān)資料見附件,下載查看。任務概述,設(shè)計一個基于單片機的糧倉溫濕度無線監(jiān)測系統(tǒng)。該系統(tǒng)包括:
發(fā)表于 11-25 09:01
怎樣去設(shè)計一種基于單片機的溫濕度控制系統(tǒng)
設(shè)計簡介:本設(shè)計是基于單片機的溫濕度控制系統(tǒng),主要實現(xiàn)以下功能:可通過LCD1602顯示溫濕度和閾值;可通過按鍵設(shè)置溫濕度閾值;可通過蜂鳴器
發(fā)表于 12-02 06:02
如何去實現(xiàn)一種基于單片機的糧倉溫濕度監(jiān)控系統(tǒng)設(shè)計
設(shè)計簡介:本設(shè)計是基于單片機的糧倉溫濕度監(jiān)控系統(tǒng),主要實現(xiàn)以下功能:可通過LCD1602顯示時間以及溫濕度、煙霧濃度、模式;可通過按鍵手動
發(fā)表于 02-18 06:25
基于單片機控制的大棚溫濕度監(jiān)控系統(tǒng)的設(shè)計
基于單片機控制的大棚溫濕度監(jiān)控系統(tǒng)的設(shè)計
發(fā)表于 09-20 08:24
?109次下載
使用STM32單片機實現(xiàn)溫濕度控制系統(tǒng)的程序免費下載
本文檔的主要內(nèi)容詳細介紹的是使用STM32單片機實現(xiàn)溫濕度控制系統(tǒng)的程序免費下載
發(fā)表于 06-28 08:00
?42次下載
基于STC89C52單片機的糧倉溫濕度無線監(jiān)測系統(tǒng)簡易設(shè)計
任務書,以及相關(guān)資料見附件,下載查看。任務概述,設(shè)計一個基于單片機的糧倉溫濕度無線監(jiān)測系統(tǒng)。該系統(tǒng)包括:
發(fā)表于 11-17 15:36
?24次下載
基于單片機的溫濕度控制系統(tǒng)
設(shè)計簡介:本設(shè)計是基于單片機的溫濕度控制系統(tǒng),主要實現(xiàn)以下功能:可通過LCD1602顯示溫濕度和閾值; 可通過按鍵設(shè)置溫濕度閾值; 可通過蜂
發(fā)表于 11-23 17:21
?49次下載
基于單片機的糧倉溫濕度監(jiān)控系統(tǒng)
設(shè)計簡介:本設(shè)計是基于單片機的糧倉溫濕度監(jiān)控系統(tǒng),主要實現(xiàn)以下功能:可通過LCD1602顯示時間以及溫濕度、煙霧濃度、模式; 可通過按鍵手動
發(fā)表于 12-23 19:29
?40次下載
基于單片機和LabVIEW的溫濕度監(jiān)測系統(tǒng)設(shè)計
利用單片機和虛擬儀器LabVIEW在PC端設(shè)計了溫濕度測量及控制系統(tǒng),用于溫濕度數(shù)據(jù)監(jiān)測。該系統(tǒng)上位機
基于51單片機的室內(nèi)溫濕度自動控制系統(tǒng)設(shè)計
電子發(fā)燒友網(wǎng)站提供《基于51單片機的室內(nèi)溫濕度自動控制系統(tǒng)設(shè)計.rar》資料免費下載
發(fā)表于 01-03 11:45
?10次下載
基于51單片機的室內(nèi)溫濕度自動控制系統(tǒng)設(shè)計
電子發(fā)燒友網(wǎng)站提供《基于51單片機的室內(nèi)溫濕度自動控制系統(tǒng)設(shè)計.rar》資料免費下載
發(fā)表于 01-12 09:15
?43次下載
基于STM32單片機的糧倉溫濕度控制系統(tǒng)設(shè)計
評論