基于51單片機的數(shù)字溫度計設(shè)計08390_第1頁
基于51單片機的數(shù)字溫度計設(shè)計08390_第2頁
基于51單片機的數(shù)字溫度計設(shè)計08390_第3頁
基于51單片機的數(shù)字溫度計設(shè)計08390_第4頁
基于51單片機的數(shù)字溫度計設(shè)計08390_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 . . . 題目:基于51單片機的數(shù)字溫度計設(shè)計 學(xué)生:寶班級:自動化083班學(xué)號:指導(dǎo)老師:蘭君,唐耀庚 2011年12月26日 基于51單片機的數(shù)字溫度計設(shè)計摘要:隨著時代的進步和發(fā)展,單片機技術(shù)已經(jīng)普與到我們生活,工作的方方面面。單片機已經(jīng)走進了我們的生活,并有了不可替代的地位。而在工業(yè)五大基本參數(shù)中,溫度的測量尤其廣泛,可見精確的溫度對于工業(yè)發(fā)展來看有多大的作用。本文將介紹一種基于單片機的簡單數(shù)字溫度計,本溫度計可以畢竟精確地測量并顯示溫度,并實現(xiàn)上下限的報警功能。關(guān)鍵字:AT89C2051單片機 DS18B20 溫度測量 報警正文:第一章 緒論 溫度計這個詞對于我們來說應(yīng)該都算是家

2、喻戶曉了,即使在我們孩提時,溫度計也是屢見不鮮。那時候我們見得最多的就當(dāng)體溫計了,每次感冒生病了,量體溫是必不可少的,再后來我們又見到了氣溫計等一系列的溫度計。但是,這些溫度計總的來說都是模擬的,在數(shù)字化越來越普與的當(dāng)代,數(shù)字產(chǎn)品的有點已被我們沒個人知曉。和傳統(tǒng)的溫度計相比,數(shù)字溫度計具有讀數(shù)方便,測溫圍廣,測溫準確等優(yōu)點。在一些需要對溫度有準確測量的場所,數(shù)字溫度計有傳統(tǒng)溫度計無法替代的作用。在社會發(fā)展的方向來看,數(shù)字式儀表也是科技發(fā)展的潮流。該設(shè)計是以AT89C2051單片機為控制器,DS18B20為溫度傳感器,三位共陰極LED數(shù)碼管為顯示單元,發(fā)光二極管當(dāng)報警裝置的數(shù)字溫度計,基本能夠滿

3、足實際應(yīng)用的需要。 目前的智能溫度傳感器(亦稱數(shù)字溫度傳感器)是在20世紀90年代中期問世的,它是微電子技術(shù)、計算機技術(shù)和自動測試技術(shù)(ATE)的結(jié)晶,特點是能輸出溫度數(shù)據(jù)與相關(guān)的溫度控制量,適配各種微控制器(MCU)。社會的發(fā)展使人們對傳感器的要求也越來越高,現(xiàn)在的溫度傳感器正在基于單片機的基礎(chǔ)上從模擬式向數(shù)字式,從集成化向智能化、網(wǎng)絡(luò)化的方向飛速發(fā)展,并朝著高精度、多功能、總線標準化、高可靠性與安全性、開發(fā)虛擬傳感器和網(wǎng)絡(luò)傳感器、研制單片測溫系統(tǒng)等高科技的方向迅速發(fā)展,本文將介紹智能集成溫度傳感器DS18B20的結(jié)構(gòu)特征與控制方法,并對以此傳感器,89C51單片機為控制器構(gòu)成的數(shù)字溫度測量

4、裝置的工作原理與程序設(shè)計作了詳細的介紹。與傳統(tǒng)的溫度計相比,其具有讀數(shù)方便,測溫圍廣,測溫準確,輸出溫度采用數(shù)字顯示,主要用于對測溫要求比較準確的場所,或科研實驗室使用。該設(shè)計控制器使用ATMEL公司的AT89C51單片機,測溫傳感器使用DALLAS公司DS18B20,用液晶來實現(xiàn)溫度顯示。第二章 總體設(shè)計方案2.1 設(shè)計方案 方案的選擇主要在于溫度檢測方面的選擇,其它方面基本上都差不多。2.1.1 方案一 設(shè)計一個測溫電路,包括溫度傳感器,溫度變送器,A/D轉(zhuǎn)換電路。具體流程為溫度傳感器測量溫度信號,經(jīng)過溫度變送器變換為電流信號,再通過A/D轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字信號進入單片機進行處理,再在數(shù)碼管

5、上顯示。 采用熱電偶溫差電路測溫,溫度檢測部分可以使用低溫?zé)崤?,熱電偶由兩個焊接在一起的異金屬導(dǎo)線所組成(熱電偶的構(gòu)成如圖 2.1),熱電偶產(chǎn)生的熱電勢由兩種金屬的接觸電勢和單一導(dǎo)體的溫差電勢組成。通過將參考結(jié)點保持在已知溫度并測量該電壓,便可推斷出檢測結(jié)點的溫度。數(shù)據(jù)采集部分則使用帶有A/D 通道的單片機,在將隨被測溫度變化的電壓或電流采集過來,進行A/D 轉(zhuǎn)換后,就可以用單片機進行數(shù)據(jù)的處理,在顯示電路上,就可以將被測溫度顯示出來。熱電偶的優(yōu)點是工作溫度圍非常寬,且體積小,但是它們也存在著輸出電壓小、容易遭受來自導(dǎo)線環(huán)路的噪聲影響以與漂移較高的缺點,并且這種設(shè)計需要用到A/D 轉(zhuǎn)換電路,感

6、溫電路比較麻煩。圖2.1熱電偶電路圖2.1.2 方案二 溫度測量上使用集成芯片DS18B20,實現(xiàn)溫度測量并輸出數(shù)字信號,由單片機接收。該系統(tǒng)利用AT89C51芯片控制溫度傳感器DS18B20進行實時溫度檢測并顯示,能夠?qū)崿F(xiàn)快速測量環(huán)境溫度,并可以根據(jù)需要設(shè)定上下限報警溫度。該系統(tǒng)擴展性非常強,它可以在設(shè)計中加入時鐘芯片DS1302以獲取時間數(shù)據(jù),在數(shù)據(jù)處理同時顯示時間,并可以利用AT24C16芯片作為存儲器件,以此來對某些時間點的溫度數(shù)據(jù)進行存儲,利用鍵盤來進行調(diào)時和溫度查詢,獲得的數(shù)據(jù)可以通過MAX232芯片與計算機的RS232接口進行串口通信,方便的采集和整理時間溫度數(shù)據(jù)。 系統(tǒng)框圖如圖

7、 2-1-2所示圖2-1-2 DS18B20溫度測溫系統(tǒng)框圖2.1.3 方案選擇 根據(jù)上述兩種方案的設(shè)計思路可以看出來方案二更加容易實現(xiàn)和操作,而且電路相對簡單,軟件設(shè)計也比較簡單,所以應(yīng)選擇方案二。第三章 系統(tǒng)的硬件設(shè)計 根據(jù)經(jīng)驗硬件設(shè)計思路而得系統(tǒng)的硬件應(yīng)由一系列的模塊組成,根據(jù)本設(shè)計可以把此數(shù)字溫度計分解成以下5個基本模塊:溫度采集模塊、數(shù)值顯示模塊、報警模塊、單片機模塊、外存模塊,系統(tǒng)框圖如圖3.1所示。圖3.1 系統(tǒng)模塊框圖3.1 溫度采集模塊 溫度測量模塊是選用集成芯片DS18B20作為溫度的測量和変送,輸出信號為數(shù)字信號。DS18B20采用單總線的數(shù)據(jù)傳輸,可以直接通過一個I/O

8、口向單片機接收設(shè)置信號和向單片機發(fā)送溫度的測量值。3.1.1 DS18B20的結(jié)構(gòu)DS18B20有耐磨耐碰,體積小,使用方便,封裝形式多樣等特點。本設(shè)計采用的封裝為PR-35,其引腳圖如3-1-1-1。由圖所示,DS18B20只有三個引腳,兩邊的引腳為電源的正于地,中間的信號引腳可以直接于單片機的I/O相連,這就大大簡化了溫度測量模塊的硬件電路。從圖3-1-1-2我們可以看出DS18B20部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。圖3-1-1-1 DS18B20引腳圖 圖3-1-1-2 DS18B20部結(jié)構(gòu)圖3-1-2 DS18B20的

9、工作步驟 根據(jù)DS18B20的通訊協(xié)議,主機控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個步驟:每一次讀寫之前都要對DS18B20進行復(fù)位,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對DS18B20進行預(yù)定的操作。復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,DS18B20收到信號后等待1660微秒左右,后發(fā)出60240微秒的存在低脈沖,主CPU收到此信號表示復(fù)位成功。3-1-3 DS18B20于單片機的硬件連接因為DS18B20可以于單片機直接連接,所以連接的硬件電路圖非常簡單,硬件電路如圖3-1-3-1所示。圖3-1-3-1 DS18B20于單片機的硬件連接圖3.2 數(shù)值顯

10、示模塊 數(shù)值顯示模塊由三個帶有小數(shù)點的七段數(shù)碼管為主體,外加上拉電阻組成,硬件電路如圖3-2-1。增加的上拉電阻是為了提高數(shù)碼管的電流,依據(jù)此圖,可以得知顯示的圍為0999。由于只能顯示三位,所以精確都也不恒定,由0.01變化到1。圖3.2.1 數(shù)值顯示模塊圖3.3 報警模塊 報警模塊由5個發(fā)光二極管構(gòu)成,當(dāng)測量到的溫度值小于報警下限或大于報警上限,發(fā)光二極管發(fā)光。也可以通過5個發(fā)光二極管的發(fā)光情況判斷報警的是上限報警還是下限報警,報警電路的觸發(fā)信號是由單片機的P37引腳發(fā)出的。報警模塊的硬件電路如圖3-3-1所示。圖3-3-1 報警模塊電路圖3.4 單片機模塊 單片機模塊是系統(tǒng)的控制單元主要

11、復(fù)雜系統(tǒng)的調(diào)控,如接收溫度模塊的信號,處理并為顯示模塊,報警模塊等模塊提供信號。單片機模塊是以AT89C2051為基礎(chǔ)外加單片機的外圍電路構(gòu)成,外圍電路如晶振電路,復(fù)位電路,按鍵等。3.4.1 晶振電路 晶振電路由一個12M的晶振和兩個電容構(gòu)成的一個無輸入,而輸出電路,其硬件電路如圖3-4-1-1所示。圖3-4-1-1 晶振電路圖 圖3-4-2-1 復(fù)位電路圖3-4-2 復(fù)位電路 本設(shè)計采用基本的復(fù)位電路,硬件電路如圖3-4-2-1。3.5 外存模塊 外存模塊是由24C08為基礎(chǔ)組成了,24C08是8K位串行總線EEPROM,采用1024×8bit的組織結(jié)構(gòu)以與兩線串行接口,具有頁寫

12、能力。引腳排列和模塊電路如圖3-5-1。圖3-5-1 24C08的引腳圖和外存模塊的硬件圖外存模塊是為了保存一定時間段一定時刻的溫度值,用來統(tǒng)計溫度在這段時間之中的變化情況。第4章 系統(tǒng)的軟件設(shè)計在一個加工程序中,如果其中有些加工容完全一樣或相似,為了簡化程序,可以把這些重復(fù)的程序段單獨列出,并按一定的格式編寫成子程序。主程序在執(zhí)行過程中如果需要某一子程序,通過調(diào)用指令來調(diào)用該子程序,子程序執(zhí)行完后又返回到主程序,繼續(xù)執(zhí)行后面的程序段。為了進一步簡化程序,可以讓子程序調(diào)用另一個子程序,這種程序的結(jié)構(gòu)稱為子程序嵌套。在編程中使用較多的是二重嵌套。系統(tǒng)的軟件主要有下列子程序:溫度采集于處理子程序、

13、顯示數(shù)據(jù)子程序、報警子程序、外存存儲子程序等,主程序主要是根據(jù)實際情況把子程序進行合理的安排運行。4.1 主程序 主程序的主要功能是負責(zé)溫度的實時顯示,讀出并處理溫度采集模塊測量的當(dāng)前溫度值,溫度測量沒1s進行一次。這樣可以在1s之處理完一個采集周期的其他事情,主程序的流程見圖4-1-1。圖4-1-1 主程序流程圖沒一秒中采集并刷新顯示一次溫度值,沒五分鐘保存一次溫度值。4.2 顯示子程序 顯示子程序就是把經(jīng)過處理過的溫度值通過三個數(shù)碼管顯示出來,讓我們能夠容易而明白地知道即時的溫度值。顯示子程序先要判斷溫度值的正負大小來決定三個數(shù)碼管的分工,通過判斷正負來決定第一個數(shù)碼管顯示的是負號還是作為

14、數(shù)據(jù),通過判斷數(shù)據(jù)的大小來決定小數(shù)點的位置,總共編輯了5種顯示方案。顯示子程序的流程圖如圖4-2-1所示。圖4-2-1 顯示子程序流程圖4.3 報警子程序 報警子程序是在溫度超過上、下限時啟動報警,程序流程圖如圖4-3-1。4.4 外存存儲子程序 外存存儲子程序所要實現(xiàn)的就是沒5分鐘外存空間存儲一次溫度值,程序流程圖如圖4-4-1。圖4-3-1 報警子程序程序流程圖 圖4-4-1 外存存儲子程序流程圖第五章 總結(jié) 該系統(tǒng)硬件電路比較簡單明了,主要是由集成芯片和一些電阻電容組成,關(guān)鍵的還是在系統(tǒng)軟件方面。系統(tǒng)溫度測量圍廣,顯示圍可以從-99到999。當(dāng)然數(shù)字溫度計的測量圍不會這么大,但因小數(shù)點位

15、置變化而引起顯示情況的增加,就造成程序的復(fù)雜性增加了。此系統(tǒng)是一個基礎(chǔ)的數(shù)字溫度計系統(tǒng),技術(shù)含量不是非常高,只是由一些基本的電路,子程序組成,但是組成系統(tǒng)的子程序比較多,這就在我們做系統(tǒng)時的細心是個考驗。經(jīng)過調(diào)試,本系統(tǒng)基本能滿足設(shè)計要求。 從這次的課程設(shè)計中,我真真正正的意識到,在以后的學(xué)習(xí)中,要理論聯(lián)系實際,把我們所學(xué)的理論知識用到實際當(dāng)中,學(xué)習(xí)單機片機更是如此,程序只有在經(jīng)常的寫與讀的過程中才能提高,這就是我在這次課程設(shè)計中的最大收獲。 最后,還要感我的指導(dǎo)老師和熱心的同學(xué),在他們的幫助下我的課程設(shè)計才能順利完成,你們!附錄一:系統(tǒng)原理圖附錄二:系統(tǒng)PCB圖附錄三:系統(tǒng)3D仿真圖附錄四:

16、系統(tǒng)元器件清單AT89C2051、24C08、DS18B20、晶振、4.7k電阻、10k電阻、電解電容各一個,按鍵兩個,1k電阻8個,發(fā)光二極管5個,100pF電容兩個附錄五:部分程序#include<reg52.h>#define uchar unsigned char#define uint unsigned intsbit DQ=P14;/ds18b20與單片機連接口unsigned char code str=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x39;/共陰數(shù)碼管字碼表unsigned char code

17、str1=0x0bf,0x86,0x0db,0x0cf,0x0e6,0x0ed,0x0fd,0x87,0x0ff,0x0ef,0x39;/個位帶小數(shù)點字碼表unsigned char code wei=0x0fe,0x0fd,0x0fb,0x0f7;uchar data disdata5;uint tvalue;/溫度值uchar tflag;/溫度正負標志/*ds1820程*/void delay_18B20(unsigned int i)/延時1微秒 while(i-);void ds1820rst()/*ds1820復(fù)位*/ unsigned char x=0;DQ = 1; /DQ復(fù)位

18、delay_18B20(4); /延時DQ = 0; /DQ拉低delay_18B20(100); /精確延時大于480usDQ = 1; /拉高delay_18B20(40);uchar ds1820rd()/*讀數(shù)據(jù)*/ unsigned char i=0;unsigned char dat = 0;for (i=8;i>0;i-) DQ = 0; /給脈沖信號 dat>>=1; DQ = 1; /給脈沖信號 if(DQ) dat|=0x80; delay_18B20(10); return(dat);void ds1820wr(uchar wdata)/*寫數(shù)據(jù)*/un

19、signed char i=0; for (i=8; i>0; i-) DQ = 0; DQ = wdata&0x01; delay_18B20(10); DQ = 1; wdata>>=1; read_temp()/*讀取溫度值并轉(zhuǎn)換*/uchar a,b;ds1820rst();ds1820wr(0xcc);/*跳過讀序列號*/ds1820wr(0x44);/*啟動溫度轉(zhuǎn)換*/ds1820rst();ds1820wr(0xcc);/*跳過讀序列號*/ds1820wr(0xbe);/*讀取溫度*/a=ds1820rd();b=ds1820rd();tvalue=b;tvalue<<=8;tvalue=tvalue|a; if(tvalue<0x0fff) tflag=0; else tvalue=tvalue+1;tflag=1; tvalue=tvalue*(0.625);/溫度值擴大10倍,精確到1位小數(shù)return(tvalue);/*/void ds1820disp()/溫度值顯示 uchar flagdat; uchar i; disdata0=tvalue/1000;/百位數(shù)

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論