數(shù)字式溫濕度測量儀設(shè)計.._第1頁
數(shù)字式溫濕度測量儀設(shè)計.._第2頁
數(shù)字式溫濕度測量儀設(shè)計.._第3頁
數(shù)字式溫濕度測量儀設(shè)計.._第4頁
數(shù)字式溫濕度測量儀設(shè)計.._第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、長沙學(xué)院?單片機(jī)原理及應(yīng)用?課程設(shè)計說明書題目數(shù)字式溫濕度測量儀設(shè)計系部專業(yè)班級姓名學(xué)號指導(dǎo)教師起止日期設(shè)計內(nèi)容及要求設(shè)計工作量?單片機(jī)原理及應(yīng)用?課程設(shè)計任務(wù)書8系部:電信系專業(yè):2021級電子信息工程課題名稱數(shù)字式溫濕度測量儀設(shè)計1、課題內(nèi)容:以單片機(jī)為核心,使用SHT11溫、濕度傳感器設(shè)計一個數(shù)字式溫濕度計.測量一路溫度和濕度信號并用12864液晶屏顯示.測溫范圍一55-125攝氏度,精度0.5攝氏度;濕度測量范圍:0-100%RH液晶屏的第一行顯示“溫濕度測量儀,第二行顯示設(shè)計者姓名和學(xué)號,第三行顯示測量溫度、溫度設(shè)定的上、下限報警值.第四行顯示測量濕度、濕度設(shè)定的上、下限報警值.當(dāng)溫

2、度或濕度高于設(shè)定上限值或低于下限值時驅(qū)動蜂鳴器演奏歌曲一首作為報警信號.2、要求:完成該系統(tǒng)的硬件和軟件的設(shè)計,在Proteus軟件上仿真通過,并提交一篇課程設(shè)計說明書.1、匯編或C51語言程序設(shè)計;2、程序調(diào)試;3、在Proteus上進(jìn)行仿真成功;4、提交一份完整的課程設(shè)計說明書,包括設(shè)計原理、程序設(shè)計、程序分析、仿真分析、調(diào)試過程,參考文獻(xiàn)、設(shè)計總結(jié)等.進(jìn)度安排起止日期或時間量設(shè)計內(nèi)容或預(yù)期目標(biāo)備注第f課題介紹,答疑,收集材料,C51介紹第二天設(shè)計方案論證,練習(xí)編寫C51程序第三天第六天程序設(shè)計第六天第八天程序調(diào)試、仿真第九天第十天系統(tǒng)測試并編寫設(shè)計說明書教研室意見年月日系部主管領(lǐng)導(dǎo)意見年

3、月日目錄一、概述4二、設(shè)計內(nèi)容及要求41、課題內(nèi)容42、要求4三、設(shè)計原理51、溫度傳感器的選擇52、濕度傳感器的選擇5四、設(shè)計方案5程序:6五、測試結(jié)果17六、設(shè)計心得體會17七、參考文獻(xiàn)18、概述溫濕度測量有著廣泛的應(yīng)用,標(biāo)準(zhǔn)溫濕度測量儀主要應(yīng)用于計量、氣象、軍事等領(lǐng)域,實(shí)現(xiàn)準(zhǔn)確高精度的測量溫濕度,同時還可以作為其他溫濕度儀表校正的參考標(biāo)準(zhǔn).數(shù)字式通風(fēng)干濕表是一種重要的濕度標(biāo)準(zhǔn)器,干濕球溫度的測量精度是制約其濕度精度的重要因素,本文設(shè)計的數(shù)字式標(biāo)準(zhǔn)溫濕度測量儀,著重提升溫度的測量精度,到達(dá)高精度濕度測量的目的.溫濕度是人們?nèi)粘I钪薪佑|最多的兩個物理量,人們的日常生活、動植物的生存繁衍和周

4、圍環(huán)境的溫濕度息息相關(guān),石油、化工、冶金、紡織、機(jī)械制造、航空航天、制藥、煙草、檔案保管、糧食存儲等領(lǐng)域?qū)?、濕度也有著較高的要求.例如:煙葉和紙張是吸濕性極高的材料,卷煙生產(chǎn)的每一個階段對溫、濕度都有非常特別的要求,以保證所使用材料的水分,保證生產(chǎn)的效率和產(chǎn)品質(zhì)量;印刷車間的溫、濕度限制水平對印刷質(zhì)量有很大的影響2;為預(yù)防庫存武器彈藥、金屬材料等物品霉?fàn)€、生銹,必須保持環(huán)境溫度不能過高和枯燥;而水果、種子、肉類等的保存又需要保證一定的濕度;在礦山、棉麻、塑料、粉末金屬、食品生產(chǎn)加工等企業(yè)的生產(chǎn)車間環(huán)境中往往會產(chǎn)生大量的可燃或易燃粉塵,如果空氣濕度過低,在一定的能量下,極易發(fā)生粉塵爆炸.二、設(shè)

5、計內(nèi)容及要求1、課題內(nèi)容以單片機(jī)為核心,使用SHT11溫、濕度傳感器設(shè)計一個數(shù)字式溫濕度計.測量一路溫度和濕度信號并用12864液晶屏顯示.測溫范圍一55-125攝氏度,精度0.5攝氏度;濕度測量范圍:0-100%RH液晶屏的第一行顯示“溫濕度測量儀,第二行顯示設(shè)計者姓名和學(xué)號,第三行顯示測量溫度、溫度設(shè)定的上、下限報警值.第四行顯示測量濕度、濕度設(shè)定的上、下限報警值.當(dāng)溫度或濕度高于設(shè)定上限值或低于下限值時驅(qū)動峰鳴器演奏歌曲一首作為報警信號.2、要求完成該系統(tǒng)的硬件和軟件的設(shè)計,在Proteus軟件上仿真通過,并提交一篇課程設(shè)計說明書.三、設(shè)計原理1、溫度傳感器的選擇采用熱電阻溫度傳感器.熱

6、電阻是利用導(dǎo)體的電阻隨溫度變化的特性制成的測溫元件.現(xiàn)應(yīng)用較多的有鉗、銅、饃等熱電阻.其主要的特點(diǎn)為精度高、測量范圍大、便于遠(yuǎn)距離測量.鉗的物理、化學(xué)性能極穩(wěn)定,耐氧化水平強(qiáng),易提純,復(fù)制性好,工業(yè)性好,電阻率較高,因此,鉗電阻用于工業(yè)檢測中高精密測溫和溫度標(biāo)準(zhǔn).缺點(diǎn)是價格貴,溫度系數(shù)小,受到磁場影響大,在復(fù)原介質(zhì)中易被玷污變脆.按IEC標(biāo)準(zhǔn)測溫范圍-200650C,百度電阻比W(100)=1.3850時,R0為100和10Q,其允許的測量誤差A(yù)級為土(0.15C+0.002|t|),B級為土(0.3C+0.005|t|).銅電阻的溫度系數(shù)比鉗電阻大,價格低,也易于提純和加工;但其電阻率小,在

7、腐蝕性介質(zhì)中使用穩(wěn)定性差.在工業(yè)中用于-50180c測溫.2、濕度傳感器的選擇測量空氣濕度的方式很多,其原理是根據(jù)某種物質(zhì)從其周圍的空氣吸收水分后引起的物理或化學(xué)性質(zhì)的變化,間接地獲得該物質(zhì)的吸水量及周圍空氣的濕度.電容式、電阻式和濕漲式濕敏原件分別是根據(jù)其高分子材料吸濕后的介電常數(shù)、電阻率和體積隨之發(fā)生變化而進(jìn)行濕度測量的.采用CHR-01濕敏電阻.CHR-01濕敏電阻適用于阻抗型高分子濕度傳感器,它的工作電壓為交流1V,頻率為50Hz2kHz,測量濕度范圍為20%90%RH測量精度土5%工作溫度范圍為0+85C,最高使用溫度120C,阻抗在60%RH(25C)時為30(2140.5)KQ.

8、采用555時基或RC振蕩電路,將濕度傳感器等效為阻抗值,測量振蕩頻率輸出,振蕩頻率在1kHz左右.四、設(shè)計方案把各個功能模塊編寫成單獨(dú)的源文件進(jìn)行調(diào)試,調(diào)試成功以后,再將各局部聯(lián)合在一起.用戶溫度輸入數(shù)據(jù)時上限、下限分別在七段數(shù)碼管的0、1、2、3位置顯示,濕度輸入數(shù)據(jù)時上限、下限分別在七段數(shù)碼管的4、5、6、7位置顯示.讀鍵存儲的過程是循環(huán)程序.可循環(huán)等待直到用戶輸入正確并確認(rèn)為止.采樣轉(zhuǎn)換模塊是一個比擬重要的模塊,在調(diào)試的階段遇到的問題較多,由于它是程序運(yùn)行的瓶頸,如果這一局部通不過的話,那么程序就無法執(zhí)行下去,本系統(tǒng)采用的是延時的方法.溫濕度判斷限制模塊也一個非常重要的模塊,由于溫濕度對

9、于植被的生長起著決定性的作用,因此,如果這兩個因素限制不好,這個系統(tǒng)就失敗了,這就需要我認(rèn)真的考慮這一模塊的限制方式,調(diào)試階段比較順利.除了以上所提到的模塊之外,還有一些模塊也很重要,也都需要認(rèn)真的調(diào)試,如報警模塊等.調(diào)試了各模塊之后,接下來的工作就是將各源程序段連接起來,進(jìn)行綜合調(diào)試了,綜合調(diào)試需要我們特別注意細(xì)節(jié)局部,這樣才能盡可能的減少錯誤的產(chǎn)生.程序:#include<reg52.h>#defineucharunsignedchar#defineuintunsignedintucharg,s,b;uinttemp,temp_dat;floatf_temp;voidlcd_d

10、isplay_temp_max(ucharname,ucharmax,ucharmin,bitf);uchards18b20_int_date(void);uchards18b20_float_date(void);sbitrs=P2A0;sbitrw=P2A1;sbiten=P2A2;sbitPSB=P2A3;sbitDS=P3A3;sbitfm=P3A4;sbitk1=P3A5;sbitk2=P3A6;sbitk3=P3A7;uintt,k;uchartimeh,timel;ucharshi,fen,miao;ucharcodedis5='.'ucharcodedis0尸&

11、quot;0123456789"ucharcodedis1="00時00分00秒"ucharcodedis2=".C-5590C"ucharcodedis3=""ucharcodedis4=0xa1,0xa0,0xca,0xfd,0xd7,0xd6,0xca,0xbd,0xce,0xc2,0xb6,0xc8,0xbc,0xc6,"C"ucharcodezbjbxf=0x64,0xA3,0xC1,0xA2,0x62,0x84,0x61,0x81,0x61,0xA4,0xA1,0x91,0xA1,0x81,0

12、x64/*,0xA3,0xC1,0xD2,0xD2,0xD2,0xA2,0xC4,0xA1,0xC1,0xA1,0xC1,0xD2,0xD2,0xD2,0xA2,0xC4,0xC2,0x62,0xC2,0x62,0xA2,0xA2,0x84,0x94,0x94,0x92,0x81,0x91,0xA2,0xC2,0xD4,0xE4,0xA4,0xE4,0xA2,0xE2,0xA2,0xE2,0xA2,0xA2,0x84,0x94,0x94,0x92,0x81,0x91,0xA2,0xC2,0xD8*/;ucharcodechuzhi=0xff,0xff,0xFC,0x8E,0xFC,0xED,0

13、xFD,0x43,0xFD,0x6A,0xFD,0xB3,0xFD,0xF3,0xFE,0x2D,0xFE,0x47,0xFE,0x76,0xFE,0xA1,0xFE,0xC7,0xFE,0xD9,0xFE,0xF9,0xFF,0x16);voidwarning();voiddelayms(uintxms)(uchari,j;for(i=xms;i>0;i-)for(j=110;j>0;j-);)voiddelay(uintz)延時165MS,即十六分音符(uinty;for(z;z>0;z-)for(y=19000;y>0;y-);大致時間)voidds18b20_i

14、nit(void)uinti;DS=0;i=103;while(i>0)i-;DS=1;i=4;while(i>0)i-;)bitds18b20_tmpreadbit(void)/readabit讀一位bitdat;DS=0;i+;/i+fordelay小延時一下DS=1;i+;i+;dat=DS;i=8;while(i>0)i-;return(dat);uchards18b20_tmpread(void)uchari,j,dat;dat=0;for(i=1;i<=8;i+)j=ds18b20_tmpreadbit();dat=(j<<7)|(dat>

15、>1);/讀出的數(shù)據(jù)最低位在最前面,這樣剛好/一個字節(jié)在DAT里return(dat);將一個字節(jié)數(shù)據(jù)返回voidds18b20_tmpwritebyte(uchardat)/寫一個字節(jié)到DS18B20里uinti;ucharj;bittestb;for(j=1;j<=8;j+)testb=dat&0x01;dat=dat>>1;if(testb)DS=0;i+;i+;DS=1;i=8;while(i>0)i-;elseDS=0;i=8;while(i>0)i-;DS=1;i+;i+;)voidds18b20_tmpchange(void)/DS18

16、B20beginchange發(fā)送溫度轉(zhuǎn)換命令(ds18b20_init();初始化DS18B20delayms(10);ds18b20_tmpwritebyte(0xcc);/跳過序列號命令ds18b20_tmpwritebyte(0x44);發(fā)送溫度轉(zhuǎn)換命令uintds18b20_gettemp()(uchara,b;ds18b20_init();delayms(10);ds18b20_tmpwritebyte(0xcc);ds18b20_tmpwritebyte(0xbe);a=ds18b20_tmpread();b=ds18b20_tmpread();temp=b;temp<<

17、;=8;temp=temp|a;f_temp=temp*0.0625;temp=f_temp*10+0.5;f_temp=f_temp+0.05;returntemp;voidwrite_com(ucharcom)(rs=0;rw=0;en=0;P0=com;delayms(5);en=1;delayms(5);en=0;voidwrite_data(uchardate)(rs=1;rw=0;en=0;P0=date;delayms(5);en=1;delayms(5);en=0;)voidlcd_pos(ucharX,ucharY)(ucharpos;if(X=0)(X=0x80;)if(X

18、=1)(X=0x90;)if(X=2)(X=0x88;)if(X=3)(X=0x98;)pos=X+Y;write_com(pos);)voidwrite_sfm(intadd,uintdate)(ucharshi,ge;shi=date/10;ge=date%10;lcd_pos(0,0+add);write_data(0x30+shi);write_data(0x30+ge);)voidkeyscan()(if(k1=0)(delayms(5);if(k1=0)(k+;while(!k1);if(k=1)(TR0=0;write_com(0x0f);lcd_pos(0,5);if(k=2)

19、(lcd_pos(0,3);if(k=3)(lcd_pos(0,1);if(k=4)(k=0;write_com(0x0c);TR0=1;if(k!=0)(if(k2=0)(delayms(5);if(k2=0)(while(!k2);if(k=1)(miao+;if(miao=60)miao=0;write_sfm(5,miao);lcd_pos(0,5);if(k=2)(fen+;if(fen=60)fen=0;write_sfm(3,fen);lcd_pos(0,3);)if(k=3)(shi+;if(shi=24)shi=0;write_sfm(1,shi);lcd_pos(0,1);

20、)if(k3=0)(delayms(5);if(k3=0)(while(!k3);if(k=1)(miao-;if(miao=-1)miao=59;write_sfm(5,miao);lcd_pos(0,5);)if(k=2)(fen-;if(fen=-1)fen=59;write_sfm(3,fen);lcd_pos(0,3);)if(k=3)(shi-;if(shi=-1)shi=23;write_sfm(1,shi);lcd_pos(0,1);)voidinit()(PSB=1;write_com(0x30);delayms(5);write_com(0x0c);delayms(5);w

21、rite_com(0x01);delayms(5);TH0=(65535-50000)/256;TL0=(65535-50000)%256;TMOD=0x11;ET0=1;ET1=1;PT0=1;PT1=0;EA=1;TR0=1;voidwrite_sfm3(intadd3,uintdate3)(ucharshi,ge;shi=date3/10;ge=date3%10;lcd_pos(1,0+add3);write_data(0x30+shi);write_data(0x30+ge);voidwrite_sfm4(intadd4,uintdate4)(ucharshi,ge;shi=date4

22、/10;ge=date4%10;lcd_pos(1,0+add4);write_data(0x30+shi);write_data(0x30+ge);voiddis_temp(uintt)(b=t/10;write_sfm3(0,b);/lcd_pos(1,0);/write_data(dis0b);s=t%10;write_sfm4(2,s);/*s=t%100/10;lcd_pos(1,1);write_data(dis0s);lcd_pos(1,2);write_data('.');g=t%10;lcd_pos(1,3);write_data(dis0g);*/voidw

23、arning()uinttemp_music;/存放簡譜數(shù)組中的每一個音符的臨時變量uchari=0;ucharjp;/jp用于取出temp中的高8位和低8位while(1)temp_music=zbjbxfi;if(temp_music=0xff)break;jp=temp_music/16;/取數(shù)白高4位,音頻數(shù)值if(jp!=0)timeh=chuzhijp*2;/構(gòu)造定時器初值高8位timel=chuzhijp*2+1;/構(gòu)造定時器初值低8位TR1=1;開定時器elseTR1=0;關(guān)定時器fm=1;關(guān)蜂鳴器delay(temp_music%16);/取數(shù)的低4位,節(jié)拍(音符總時延)TR

24、1=0;唱完一個音停5MSfm=1;delayms(5);i+;TR1=0;關(guān)定時器fm=1;關(guān)蜂鳴器voidmain()(uchari;init();delayms(10);lcd_pos(0,1);i=0;while(dis1i!='0')(write_data(dis1i);i+;)lcd_pos(1,0);i=0;while(dis2i!='0')(write_data(dis2i);i+;)lcd_pos(2,0);i=0;while(dis3i!='0')(write_data(dis3i);i+;)lcd_pos(3,0);i=0;while(dis4i!='0')(write_data(dis4i);i+;)while(1)(keyscan();ds18b20_tmpchange();temp_dat=ds18b20_gettemp();if(b>25|b<15)(warning();)voidtimer()interru

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論