課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告溫度計(jì)的設(shè)計(jì)_第1頁(yè)
課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告溫度計(jì)的設(shè)計(jì)_第2頁(yè)
課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告溫度計(jì)的設(shè)計(jì)_第3頁(yè)
課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告溫度計(jì)的設(shè)計(jì)_第4頁(yè)
課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告溫度計(jì)的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課程設(shè)計(jì)報(bào)告課題名稱:基于DS18B20的溫度計(jì)的設(shè)計(jì)姓 名:常艷昭 學(xué) 號(hào):1128401073 班 級(jí):11級(jí)通信工程 時(shí) 間:2014年6月10日 摘要 本實(shí)驗(yàn)介紹了一種基于單片機(jī)控制的數(shù)字溫度計(jì),就是用單片機(jī)AT89C51實(shí)現(xiàn)溫度測(cè)量和報(bào)警,采用DS18B20溫度傳感器來(lái)作為溫度監(jiān)測(cè)元件,測(cè)溫范圍是-30度120度,使用LCD顯示模塊,能通過(guò)按鍵調(diào)整報(bào)警的上下限溫度。該電路設(shè)計(jì)結(jié)構(gòu)簡(jiǎn)單,可靠性高,功能強(qiáng)大。關(guān)鍵詞:?jiǎn)纹瑱C(jī),溫度計(jì),AT89C51,DS18B20,LCD顯示Abstract The design of the Digital Thermometer,using AT89C

2、51 MCD as the core to control the temperature measurement and alarm,uses DS18B20 temperature sensor for temperature monitoring device,which can measure temperatures from -30 to 120 degrees. This study uses LCD to show the current temperature. It can adjust the upper and lower temperature of the alar

3、m by the three buttons. This circuit design has simple structure, high reliability and powerful functions. Key words: MCD, Thermometer, AT89C51, DS18B20, LCD目錄1.設(shè)計(jì)目標(biāo)······················

4、83;··························41.1 設(shè)計(jì)要求······················

5、·································41.2 設(shè)計(jì)背景···············

6、83;·······································42.設(shè)計(jì)方案2.1 設(shè)計(jì)思路 ········

7、;··············································42.2 設(shè)計(jì)框圖 ··&

8、#183;·················································&

9、#183;·42.3 所需器材 ··············································

10、83;·······53.硬件設(shè)計(jì) ·········································&

11、#183;··············5 3.1主控制器AT89C51 ································&#

12、183;·············5 3.2溫度傳感器DS18B20 ·································&#

13、183;···········5 3.3 各部分電路說(shuō)明 ····································

14、···········7 3.3.1 晶振電路 ·····································

15、;·············7 3.3.2 復(fù)位電路 ··································

16、3;···············8 3.3.3 蜂鳴器和指示燈電路 ·······························

17、3;········8 3.3.4 DS18B20溫度采集電路及按鍵控制電路 ························8 3.3.5 LCD顯示電路 ··········&

18、#183;···································84.電路測(cè)試及分析 ············&#

19、183;····································9 4.1 實(shí)物圖 ···········

20、3;············································9 4.2 實(shí)測(cè)結(jié)果····

21、··················································

22、·9 4.2.1溫度顯示及報(bào)警 ············································9 4.2.2掉電保存 

23、83;·················································105

24、.總結(jié) ·················································&#

25、183;··········11附錄一、proteus仿真電路圖 ····································&

26、#183;··11附錄二、總程序 ·············································

27、83;·····111. 設(shè)計(jì)目標(biāo)1.1 設(shè)計(jì)要求 1、使用DS18B20溫度傳感器設(shè)計(jì)溫度測(cè)量電路,溫度范圍設(shè)置為-30度到150度。2、能進(jìn)行溫度顯示3、溫度報(bào)警設(shè)定,掉電后數(shù)據(jù)保存。4、溫度超限報(bào)警功能。1.2 設(shè)計(jì)背景在一些傳統(tǒng)溫控系統(tǒng)電路中,廣泛采用的是通過(guò)熱電偶、熱電阻或PN結(jié)測(cè)溫電路經(jīng)過(guò)相應(yīng)的信號(hào)調(diào)理電路,轉(zhuǎn)換成AD轉(zhuǎn)換器能接收的模擬量,再經(jīng)過(guò)采樣保持電路進(jìn)行AD轉(zhuǎn)換,最終送入單片機(jī)及其相應(yīng)的外圍電路,完成監(jiān)控。但是由于傳統(tǒng)的信號(hào)調(diào)理電路實(shí)現(xiàn)復(fù)雜、易受干擾、不易控制且精度不高。 本實(shí)驗(yàn)介紹單片機(jī)結(jié)合DS18B20進(jìn)行溫度控制系統(tǒng)設(shè)

28、計(jì),因此,本系統(tǒng)用一種新型的可編程溫度傳感(DS18B20),不需復(fù)雜的信號(hào)調(diào)理電路和AD轉(zhuǎn)換電路能直接與單片機(jī)完成數(shù)據(jù)采集和處理,實(shí)現(xiàn)方便、精度高,可根據(jù)不同需要用于各種場(chǎng)合。2.設(shè)計(jì)方案2.1設(shè)計(jì)思路在單片機(jī)電路設(shè)計(jì)中,大多都是使用傳感器,所以這是非常容易想到的,可以采用一只溫度傳感器DS18B20,此傳感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,就可以滿足設(shè)計(jì)要求。顯示模塊采用的是液晶顯示屏。2.2溫度計(jì)電路設(shè)計(jì)總體設(shè)計(jì)方框圖如圖1所示 2.3所需器材 AT89C51芯片一個(gè),DS18B20溫度傳感器一個(gè),LCD液晶屏一個(gè),22pF電容2個(gè),12M晶振1個(gè),10uF電容1個(gè),觸碰式按鍵

29、4個(gè),220歐電阻3個(gè),1K歐電阻一個(gè),4.7K歐電阻一個(gè),10K歐電阻一個(gè),10K歐滑動(dòng)變阻器一個(gè),1K歐排阻一個(gè),三極管一個(gè),蜂鳴器一個(gè),LED燈2個(gè)。3.硬件設(shè)計(jì) 3.1 主控制器AT89C5140個(gè)引腳,4k bytes flash片內(nèi)程序存儲(chǔ)器,128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(ram),32個(gè)外部雙向輸入/輸出(I/O)口,5個(gè)中斷優(yōu)先級(jí)2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門狗(WDT)電路,片內(nèi)時(shí)鐘振蕩器。AT89C51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時(shí)器

30、,計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個(gè)硬件復(fù)位為止。單片機(jī)AT89S51具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。單片機(jī)AT89S51具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。3.2 溫度傳感器DS18B20DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,

31、并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)位的數(shù)字值讀數(shù)方式。 TO92封裝的DS18B20的引腳排列見(jiàn)下圖。 DS18B20的特點(diǎn)如下: 1、適應(yīng)電壓范圍更寬,電壓范圍:3.05.5V,在寄生電源方式下可由數(shù) 據(jù)線供電。 2、獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B20的雙向通訊。 3、 DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫。 4、DS18B20在使用中不需要任何外圍元件,全部 傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。 5、溫范圍55+125,在-10+85時(shí)精度為±0

32、.5。 6、可編程 的分辨率為912位,對(duì)應(yīng)的可分辨溫度分別為0.5、0.25、0.125和0.0625,可實(shí)現(xiàn)高精度測(cè)溫。 7、在9位分辨率時(shí)最多在 93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時(shí)最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快。 8、測(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以"一 線總線"串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力。 9、負(fù)壓特性:電源極性接反時(shí),芯片不會(huì)因發(fā)熱而燒毀, 但不能正常工作。 10、內(nèi)部含有E2PROM,其報(bào)警上、下限溫度值和設(shè)定的分辨率倍數(shù)在芯片掉電的情況下不丟失。DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)

33、高速暫存和一個(gè)非易失性的可電擦除的EERAM。高速暫存RAM的結(jié)構(gòu)為字節(jié)的存儲(chǔ)器,結(jié)構(gòu)如圖3所示。頭個(gè)字節(jié)包含測(cè)得的溫度信息,第和第字節(jié)和的拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第個(gè)字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工作時(shí)寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如圖3所示。低位一直為,是工作模式位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式,DS18B20出廠時(shí)該位被設(shè)置為,用戶要去改動(dòng),R1和0決定溫度轉(zhuǎn)換的精度位數(shù),來(lái)設(shè)置分辨率。溫度 LSB溫度 MSBTH用戶字節(jié)1TL用戶字節(jié)2配置寄存器保留保留保留CRCDS18B20的初始

34、化1.時(shí)序圖 2.寫時(shí)序圖 3.讀時(shí)序圖3.3 各部分電路說(shuō)明 3.3.1 晶振電路 每個(gè)單片機(jī)系統(tǒng)里都有晶振,全程是叫晶體震蕩器。如右圖電路所示,C1、C2為瓷片電容,其大小均為22PF;X1即為晶振,其大小為11.0592MHz,電路中的XTAL1與XTAL2分別與AT89S51的第19腳和第18腳相連。 在單片機(jī)系統(tǒng)里晶振的作用非常大,他結(jié)合單片機(jī)內(nèi)部的電路,產(chǎn)生單片機(jī)所必須的時(shí)鐘頻率,單片機(jī)的一切指令的執(zhí)行都是建立在這個(gè)基礎(chǔ)上的,晶振的提供的時(shí)鐘頻率越高,那單片機(jī)的運(yùn)行速度也就越快。 3.3.2 復(fù)位電路 單片機(jī)在啟動(dòng)時(shí)都需要復(fù)位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并

35、從初態(tài)開(kāi)始工作。如上圖所示電路可實(shí)現(xiàn)上電復(fù)位與手動(dòng)復(fù)位。圖中的SW為微動(dòng)按鈕,C3為電解電容,其大小為10uF/16V,所用的電阻R為10K。 手動(dòng)按鈕復(fù)位需要人為在復(fù)位輸入端RST上加入高電平。當(dāng)人為按下按鈕時(shí),則Vcc的+5V電平就會(huì)直接加到RST端。由于人的動(dòng)作再快也會(huì)使按鈕保持接通達(dá)數(shù)十毫秒,所以,完全能夠滿足復(fù)位的時(shí)間要求。 3.3.3 蜂鳴器和指示燈電路 當(dāng)溫度在安全范圍內(nèi)時(shí),D2燈保持點(diǎn)亮;當(dāng)超出安全溫度時(shí),D1燈點(diǎn)亮,同時(shí),蜂鳴器報(bào)警。 3.3.4 DS18B20溫度采集電路及按鍵控制電路電路中采用R2為4.7K的上拉電阻,作用是在電路驅(qū)動(dòng)器關(guān)閉時(shí)給線路(節(jié)點(diǎn))以一個(gè)

36、固定的電平。三個(gè)按鍵是用來(lái)調(diào)整溫度報(bào)警的上下限值。3.3.5 LCD顯示電路 本實(shí)驗(yàn)中是采用的LCD液晶顯示模塊。4.電路測(cè)試及分析 4.1實(shí)物圖 實(shí)物圖如下所示,左邊是正面圖,右邊是反面圖。 4.2 實(shí)測(cè)結(jié)果 4.2.1 溫度顯示及報(bào)警左圖中顯示的溫度下限是26度,當(dāng)實(shí)際溫度下降到溫度下限以下時(shí),D1等點(diǎn)亮,蜂鳴器報(bào)警;右圖顯示的是溫度上限80度,實(shí)際溫度高于下限溫度,D2燈點(diǎn)亮,且蜂鳴器不響。 4.2.2 掉電保存 下面左圖顯示的是掉電前溫度上限設(shè)置為69度,右圖是掉電后重啟時(shí),溫度上限仍為69度,實(shí)現(xiàn)了掉電后保存溫度上下限。5.總結(jié) 經(jīng)過(guò)我們小組成員的共同努力,終于完成了這次關(guān)于溫度計(jì)的

37、設(shè)計(jì)實(shí)驗(yàn)。雖然還有一點(diǎn)點(diǎn)不足,但總算是完成了任務(wù),總體來(lái)說(shuō)是達(dá)到了目標(biāo)。通過(guò)這次實(shí)驗(yàn),讓我加深了對(duì)單片機(jī)的認(rèn)識(shí),同時(shí)也了解了DS18B20溫度傳感器的一些工作原理,以及如何寫入掉電保存。當(dāng)然,在實(shí)驗(yàn)過(guò)程中也碰到很多困難,其中程序上的就是關(guān)于掉電保存的問(wèn)題,DS18B20內(nèi)部含有E2PROM,芯片本身可以實(shí)現(xiàn)掉電保存,但是必須事先用程序?qū)戇M(jìn)去,這一步花了我們好多時(shí)間查找資料,最終是完成了。還有就是電路焊接的時(shí)候遇到點(diǎn)小麻煩,有的地方焊得不牢固,導(dǎo)致電路板測(cè)試時(shí)不穩(wěn)定。這次實(shí)驗(yàn)讓我收獲頗多,學(xué)到了不少知識(shí),也增加了我對(duì)單片機(jī)的興趣。附錄一、仿真電路圖附錄二、程序代碼#include <reg

38、51.h>#include <intrins.h>#include <stdio.h>#define INT8U unsigned char#define INT16U unsigned intsbit SET = P37 ; /定義調(diào)整鍵sbit DEC = P36 ; /定義減少鍵sbit ADD = P35 ; /定義增加鍵sbit DQ = P34;INT16U warn_h1=0x20;INT16U warn_l1=0x14;INT8U Temp_Disp_Buff17;INT8U set_st=0;void Xianshi();void KEY_Sca

39、n();void copyRAMtoEE();void huidiaotoRAM();extern INT8U Temp_Value;extern INT8U Init_DS18B20();extern void LCD_Initialise();extern void LCD_ShowString(INT8U r, INT8U c,INT8U *str);extern void delay_ms(INT16U);extern voidDelayX(INT16U x);extern INT8U Read_Temperature();extern void WriteOneByte(INT8U

40、dat);/-/ 主函數(shù)/-sbit beep=P23;sbit led0=P10;sbit led1=P11;sbit led2=P12;sbit led3=P13; void warn(INT16U s,INT8U led)INT8U i;i=s;beep=1;P1=led;while(i-)delay_ms(1);void copyRAMtoEE() /把RAM中的TH,TL,CONFIGURE REGISTER數(shù)據(jù)復(fù)制到EEPROM中 Init_DS18B20(); WriteOneByte(0xcc); WriteOneByte(0x48); /RAM中數(shù)據(jù)復(fù)制到EEPROM Del

41、ayX(100); /當(dāng)數(shù)據(jù)完全復(fù)制到EEPROM中時(shí)總線會(huì)輸出1void writetoRAM(INT8U CR) /CR-Configure registerInit_DS18B20();WriteOneByte(0xcc); /跳過(guò)寫ROM WriteOneByte(0x4e); /向RAM中寫數(shù)據(jù) WriteOneByte(warn_h1); WriteOneByte(warn_l1); WriteOneByte(CR); Init_DS18B20();void huidiaotoRAM()Init_DS18B20(); WriteOneByte(0xcc); /跳過(guò)寫ROM Writ

42、eOneByte(0xb8);void KEY_Scan()writetoRAM(0x7f);if(DEC=0|ADD=0|SET=0)delay_ms(10);if(SET=0)while(SET=0);set_st+; if(set_st=3) set_st=0; else if (1)if(DEC=0)&&(set_st=1) delay_ms(10); if(DEC=0)&&(set_st=1) while(DEC=0)&&(set_st=1);LCD_Initialise(); warn_h1-;sprintf(Temp_Disp_Bu

43、ff,"TEM:%dxDFx43",warn_h1); LCD_ShowString(0,0,Temp_Disp_Buff); delay_ms(150); elseif(DEC=0)&&(set_st=2) delay_ms(10); if(DEC=0)&&(set_st=2) while(DEC=0)&&(set_st=2);LCD_Initialise(); warn_l1-;sprintf(Temp_Disp_Buff,"TEM:%dxDFx43",warn_l1);LCD_ShowString(0,0,Temp_Disp_Buff);delay_ms(150); elseif(ADD=0)&&(set_st=1) delay_ms(10); if(ADD=0)&&(set_st=1) while(ADD=0)&&(set_st=1);LCD_Initialise(); warn_h1+; sprintf(Temp_Disp_Buff,"TEM:%dxDFx43",warn_h1); LCD_ShowString(0,0,Temp_Disp_Buff);

溫馨提示

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

評(píng)論

0/150

提交評(píng)論