目錄
具體實(shí)現(xiàn)功能
設(shè)計(jì)介紹
51單片機(jī)簡(jiǎn)介
資料內(nèi)容
仿真實(shí)現(xiàn)(protues8.7)
程序(Keil5)
全部資料(壓縮文件)
具體實(shí)現(xiàn)功能
(1)實(shí)時(shí)檢測(cè)溫濕度值,LCD12864分別顯示溫度值、濕度值、溫度上下限值、濕度上下限值;
(2)通過按鍵可以設(shè)定溫濕度報(bào)警閾值;
(3)當(dāng)溫度值過高且濕度值過低時(shí),相應(yīng)的指示燈亮,蜂鳴器響,繼電器控制風(fēng)扇轉(zhuǎn)動(dòng),表示降溫;
(4)當(dāng)溫度值過低且濕度值過高時(shí),相應(yīng)的指示燈亮,蜂鳴器響,繼電器控制加熱膜工作,表示升溫。
(5)溫度測(cè)量范圍0-99,濕度測(cè)量范圍0-99,誤差±1。
設(shè)計(jì)介紹
?51單片機(jī)簡(jiǎn)介
51單片是一種低功耗、高性能CMOS-8位微控制器,擁有靈巧的8位CPU和可編程Flash,使得51單片機(jī)為眾多嵌入式控制應(yīng)用系統(tǒng)提供靈活、高效的解決方案。
本設(shè)計(jì)所使用的芯片可兼容以下所有的51系列單片機(jī)(包括AT系列和STC系列)。
?資料內(nèi)容
仿真實(shí)現(xiàn)(protues8.7)
本設(shè)計(jì)利用protues8.7軟件實(shí)現(xiàn)仿真設(shè)計(jì),具體如圖。
注:請(qǐng)使用protues8.7直接打開資料中的工程文件(資料中已說明打開方式)!
程序(Keil5)
本設(shè)計(jì)利用KEIL5軟件實(shí)現(xiàn)程序設(shè)計(jì)。
注意:請(qǐng)使用KEIL5直接打開資料中的工程文件(資料中已說明打開方式)!
主程序如下:
/****************主函數(shù)***************/ void main()//主函數(shù) { value humi_val,temp_val; uchar humi_max=50,humi_min=15,temp_max=40,temp_min=20,temp,humi;//定義變量 uchar error,checksum; uchar flag=0; DisplayOn(); s_connectionreset(); Led1=1; jiangwen=1; Led2=1; shengwen=1; beep=1; while(1) { error=0; error+=s_measure((unsigned char*) &humi_val.i,&checksum,HUMI); //measure humidity error+=s_measure((unsigned char*) &temp_val.i,&checksum,TEMP); //measure temperature if(error!=0) s_connectionreset(); //in case of an error: connection reset else { //溫濕度值、閾值讀取及顯示 humi_val.f=(float)humi_val.i; //converts integer to float temp_val.f=(float)temp_val.i; //converts integer to float calc_sth11(&humi_val.f,&temp_val.f); //calculate humidity, temperature //dew_point=calc_dewpoint(humi_val.f,temp_val.f); //calculate dew point if(temp_val.f>99) temp_val.f=99; if(humi_val.f>99) humi_val.f=99; temp=(uchar)temp_val.f+1; humi=(uchar)humi_val.f-3; Disp(temp,humi,temp_max,temp_min,humi_max,humi_min); } while(P1!=0xff||flag!=0) { if(SetTempMax==0) { while(SetTempMax==0); flag=1; //顯示文字 DispHZ(0,3,she); DispHZ(16,3,ding); DispHZ(32,3,wen); DispHZ(48,3,du); DispHZ(64,3,shang); DispHZ(80,3,xian); } else if(SetTempMin==0) { //顯示文字 while(SetTempMin==0); flag=2; DispHZ(0,3,she); DispHZ(16,3,ding); DispHZ(32,3,wen); DispHZ(48,3,du); DispHZ(64,3,xia); DispHZ(80,3,xian); } if(SetHumiMax==0) { //顯示文字 while(SetHumiMax==0); flag=3; DispHZ(0,3,she); DispHZ(16,3,ding); DispHZ(32,3,shi); DispHZ(48,3,du); DispHZ(64,3,shang); DispHZ(80,3,xian); } if(SetHumiMin==0) { //顯示文字 while(SetHumiMin==0); flag=4; DispHZ(0,3,she); DispHZ(16,3,ding); DispHZ(32,3,shi); DispHZ(48,3,du); DispHZ(64,3,xia); DispHZ(80,3,xian); } else if(flag==1&&NumInc==0) { while(NumInc==0);//改變溫度上限++ temp_max++; Disp(temp,humi,temp_max,temp_min,humi_max,humi_min); } else if(flag==2&&NumInc==0) { while(NumInc==0);//改變溫度下限++ temp_min++; Disp(temp,humi,temp_max,temp_min,humi_max,humi_min); } else if(flag==3&&NumInc==0) { while(NumInc==0); humi_max++;//改變溫濕度上限++ Disp(temp,humi,temp_max,temp_min,humi_max,humi_min); } else if(flag==4&&NumInc==0) { while(NumInc==0); humi_min++;//改變溫度下限++ Disp(temp,humi,temp_max,temp_min,humi_max,humi_min); } else if(flag==1&&NumDec==0) { while(NumDec==0); temp_max--;//改變溫度上限-- Disp(temp,humi,temp_max,temp_min,humi_max,humi_min); } else if(flag==2&&NumDec==0) { while(NumDec==0); temp_min--;//改變溫度下限-- Disp(temp,humi,temp_max,temp_min,humi_max,humi_min); } else if(flag==3&&NumDec==0) { while(NumDec==0); humi_max--;//改變濕度上限-- Disp(temp,humi,temp_max,temp_min,humi_max,humi_min); } else if(flag==4&&NumDec==0) { while(NumDec==0); humi_min--;//改變濕度下限-- Disp(temp,humi,temp_max,temp_min,humi_max,humi_min); } else if(isOK==0) { //清空文字顯示 while(isOK==0); flag=0; DispHZ(0,3,blank); DispHZ(16,3,blank); DispHZ(32,3,blank); DispHZ(48,3,blank); DispHZ(64,3,blank); DispHZ(80,3,blank); } } if((temp>temp_max)&&(humihumi_max))//溫度過低且濕度過高,報(bào)警及加熱 { Led1=1; jiangwen=1; Led2=0; shengwen=0; beep=0; } else { Led1=1; jiangwen=1; Led2=1; shengwen=1; beep=1; } delayms(10); } }
程序運(yùn)行結(jié)果如圖:
全部資料(壓縮文件)
全部資料包括程序(Keil5)、protues仿真(protues8.7)、仿真視頻、開發(fā)資料、資料使用介紹視頻、仿真講解視頻、程序講解視頻、單片機(jī)最小系統(tǒng)介紹等,全網(wǎng)最全!
資料鏈接:https://docs.qq.com/doc/DT2JidWJ6WmRFZ2dm
-
單片機(jī)
+關(guān)注
關(guān)注
6030文章
44491瀏覽量
632031 -
仿真
+關(guān)注
關(guān)注
50文章
4023瀏覽量
133341 -
LCD12864
+關(guān)注
關(guān)注
7文章
232瀏覽量
44815 -
SHT11
+關(guān)注
關(guān)注
6文章
21瀏覽量
26926
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論