基于單片機(jī)控制的數(shù)字溫度計(jì)_第1頁(yè)
基于單片機(jī)控制的數(shù)字溫度計(jì)_第2頁(yè)
基于單片機(jī)控制的數(shù)字溫度計(jì)_第3頁(yè)
基于單片機(jī)控制的數(shù)字溫度計(jì)_第4頁(yè)
基于單片機(jī)控制的數(shù)字溫度計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩19頁(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、 . . . 摘要隨著社會(huì)的發(fā)展和人們生活水平的不斷提高,人們對(duì)溫度的掌握和控制越來(lái)越智能化,因此單片機(jī)控制無(wú)疑是人們追求的目標(biāo)之一,本設(shè)計(jì)以檢測(cè)溫度并顯示溫度提供上下限報(bào)警為目的,按照系統(tǒng)設(shè)計(jì)功能的要求。該設(shè)計(jì)控制器采用單片機(jī)8051,溫度傳感器采用DS18B20,用6位共陽(yáng)極LED數(shù)碼管實(shí)現(xiàn)溫度顯示。 隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普與到我們生活,工作,科研,各個(gè)領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù),本文將介紹一種基于單片機(jī)控制的數(shù)字溫度計(jì)。關(guān)鍵詞:?jiǎn)纹瑱C(jī)AT89C51溫度傳感器DS18B20 溫度報(bào)警19 / 24目錄摘要.I第1章 緒論.11.1 基于單片機(jī)溫度測(cè)量系統(tǒng)的研究背景.

2、11.2 基于單片機(jī)溫度測(cè)量系統(tǒng)的發(fā)展現(xiàn)狀.11.3基于單片機(jī)溫度測(cè)量系統(tǒng)的研究的 目的和意義. 11.4 基于單片機(jī)溫度測(cè)量系統(tǒng)主要研究 容.2第2章 溫度測(cè)量系統(tǒng)總體設(shè)計(jì)方案.2 2.1溫度測(cè)量系統(tǒng)設(shè)立方案論證.2 2.1.1方案一 .2 2.1.2方案二.2 2.1.3設(shè)計(jì)總框圖 .2 2.1.4設(shè)計(jì)要求和實(shí)現(xiàn)的功能.3第3章 硬件電路設(shè)計(jì).3 3.1單片機(jī)模塊(MCS-51系列).3 3.1.1AT89C51單片機(jī)的性能與特性.43.1.2 顯示電路.4 3.2 溫度采集部分硬件. 5 3.2.1 溫度傳感器DS18B20. 5 3.3 DS18B20的測(cè)溫原理.83.4 報(bào)警上下限調(diào)

3、整電路實(shí)現(xiàn).9第4章 報(bào)警上下限調(diào)整電路實(shí)現(xiàn).9 4.1主程序流程圖.104.2讀出溫度子程序流程圖.10 4.3讀出溫度交換流程圖.11 4.4計(jì)算溫度子程序流程圖.12 4.5 顯示數(shù)據(jù)刷新子程序.12結(jié)論.13參考文獻(xiàn).14附錄.14附錄一 整機(jī)電路圖.14附錄二 源程序.14第一章 緒論1.1 基于單片機(jī)溫度測(cè)量系統(tǒng)的研究背景隨著社會(huì)的發(fā)展,科技的進(jìn)步,以與測(cè)溫儀器在各個(gè)領(lǐng)域的應(yīng)用,智能化已是現(xiàn)代溫度控制系統(tǒng)發(fā)展的主流方向。特別是近年來(lái),溫度控制系統(tǒng)已應(yīng)用到人們生活的各個(gè)方面,但溫度報(bào)警控制一直是一個(gè)未開發(fā)的領(lǐng)域,卻又是與人們息息相關(guān)的一個(gè)實(shí)際問(wèn)題。針對(duì)這種實(shí)際情況,設(shè)計(jì)一個(gè)溫度報(bào)警控

4、制系統(tǒng),具有廣泛的應(yīng)用前景與實(shí)際意義。溫度是科學(xué)技術(shù)中最基本的物理量之一,物理、化學(xué)、生物等學(xué)科都離不開溫度。在工業(yè)生產(chǎn)和實(shí)驗(yàn)研究中,像電力、化工、石油、冶金、航空航天、機(jī)械制造、糧食存儲(chǔ)、酒類生產(chǎn)等領(lǐng)域,溫度常常是表征對(duì)象和過(guò)程狀態(tài)的最重要的參數(shù)之一。許多的電子設(shè)備和元器件必須在適宜的溫度和環(huán)境下才能正常使用,因此掌握溫度的控制十分重要,各行各業(yè)對(duì)溫度控制的要求越來(lái)越嚴(yán)格,可見溫度的測(cè)量和控制很重要的。單片機(jī)在電子產(chǎn)品中的應(yīng)用已經(jīng)越來(lái)越廣泛,在很多的電子產(chǎn)品中也用到了溫度檢測(cè)和溫度控制。隨著溫度控制器應(yīng)用圍的日益廣泛和多樣,各種適用于不同場(chǎng)合的智能溫度控制器應(yīng)運(yùn)而生,因此研究溫度的測(cè)量方法和

5、裝置具有重要意義。利用單片機(jī)技術(shù)的溫度測(cè)控系統(tǒng)以其體積小,可靠性高而被廣泛采用。1.2 基于單片機(jī)溫度測(cè)量系統(tǒng)的發(fā)展現(xiàn)狀自70年代以來(lái),由于工業(yè)過(guò)程控制的需要,特別是在微電子技術(shù)和計(jì)算機(jī)技術(shù)的迅猛發(fā)展,以與自動(dòng)控制理論和設(shè)計(jì)方法發(fā)展的推動(dòng)下,國(guó)外溫度控制系統(tǒng)發(fā)展迅速,并在智能化自適應(yīng)參數(shù)自整定等方面取得成果。在這方面以日本、美國(guó)、德國(guó)、瑞典等國(guó)技術(shù)領(lǐng)先,并且都生產(chǎn)出了一批商品化的性能優(yōu)異的溫度控制器與儀器儀表,目前,國(guó)外溫度控制系統(tǒng)與儀表正朝著高精度智能化、小型化等方面快速發(fā)展。國(guó)外溫度測(cè)量系統(tǒng)的發(fā)展極為迅速,比如機(jī)房溫度的監(jiān)控,蔬菜大棚溫度的監(jiān)控報(bào)警等等。溫度測(cè)量報(bào)警系統(tǒng)有很大的發(fā)展空間,國(guó)

6、也在這方面投入大量的人力物力進(jìn)行新產(chǎn)品的研發(fā)。比如國(guó)非典時(shí)期用的紅外溫度測(cè)量報(bào)警裝置,就是溫度測(cè)量系統(tǒng)發(fā)展到現(xiàn)在的一個(gè)代表性的產(chǎn)物。溫度測(cè)量報(bào)警系統(tǒng)在生活中有中藥的意義。現(xiàn)在溫度測(cè)量報(bào)警領(lǐng)域正在蓬勃快速的發(fā)展,各國(guó)都在進(jìn)行著各項(xiàng)測(cè)試研究,以更好的檢測(cè)溫度,進(jìn)行控制,讓人類能更好的生活、工作和學(xué)習(xí)1.3基于單片機(jī)溫度測(cè)量系統(tǒng)的研究的目的和意義溫度控制系統(tǒng)在國(guó)各行各業(yè)的應(yīng)用雖然已經(jīng)十分廣泛但從國(guó)生產(chǎn)的溫度控制器來(lái)講總體發(fā)展水平仍然不高,同國(guó)外的日本美國(guó)德國(guó)等先進(jìn)國(guó)家相比仍然有著較大的差距目前我國(guó)在這方面總體技術(shù)水平處于20世紀(jì)80年代中后期水平成熟產(chǎn)品主要以“點(diǎn)位”控制與常規(guī)的PID控制器為主,它

7、只能適應(yīng)一般溫度系統(tǒng)控制難于控制滯后復(fù)雜時(shí)變溫度系統(tǒng)控制。也就是說(shuō)國(guó)的技術(shù)還不是十分的成熟,形成儀表的商品很少。1.4 基于單片機(jī)溫度測(cè)量系統(tǒng)主要研究容在實(shí)際的溫度控制系統(tǒng)中,多采用熱敏電阻器或熱電偶測(cè)量溫度。這種溫度采集電路有時(shí)需要冷端補(bǔ)償電路,這樣就增加了電路的復(fù)雜性,而且該種電路易受干擾,使采集到的數(shù)據(jù)準(zhǔn)確性不高。隨著微電子技術(shù)、單片機(jī)技術(shù)、傳感器技術(shù)的不斷發(fā)展,為溫度控制系統(tǒng)測(cè)控功能的完善、測(cè)控精度的提高和抗干擾能力的增強(qiáng)等提供了條件。本設(shè)計(jì)是基于8051單片機(jī)和DS18B20 的溫度控制系統(tǒng),該設(shè)計(jì)通過(guò)8051單片機(jī)驅(qū)動(dòng)數(shù)字溫度傳感器DS18B20,進(jìn)行溫度數(shù)據(jù)采集、讀取、處理,并通

8、過(guò)數(shù)碼管顯示出來(lái)。本系統(tǒng)以8051單片機(jī)作為主控系統(tǒng),利用DS18B20數(shù)字溫度傳感器作為溫度傳感器件。通過(guò)四位共陰極數(shù)碼管作為顯示器件,通過(guò)單片機(jī)控制繼溫度顯示溫度。當(dāng)溫度高于設(shè)定最高溫度或者低于設(shè)定的最低溫度時(shí),蜂鳴器發(fā)出報(bào)警聲并伴隨紅燈的閃爍。第二章 溫度測(cè)量系統(tǒng)總體設(shè)計(jì)方案2.1溫度測(cè)量系統(tǒng)設(shè)立方案論證2.1.1方案一由于本設(shè)計(jì)是測(cè)溫電路,可以使用熱敏電阻之類的器件利用其感溫效應(yīng),在將隨被測(cè)溫度變化的電壓或電流采集過(guò)來(lái),進(jìn)行A/D轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,在顯示電路上,就可以將被測(cè)溫度顯示出來(lái),這種設(shè)計(jì)需要用到A/D轉(zhuǎn)換電路,感溫電路比較麻煩。2.1.2方案二進(jìn)而考慮到用溫

9、度傳感器,在單片機(jī)電路設(shè)計(jì)中,大多都是使用傳感器,所以這是非常容易想到的,所以可以采用一只溫度傳感器DS18B20,此傳感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,就可以滿足設(shè)計(jì)要求。 2.1.3設(shè)計(jì)總框圖 溫度計(jì)電路設(shè)計(jì)總體設(shè)計(jì)方框圖如圖1-1所示。主 控 制 器數(shù)碼管顯示溫 度 傳 感 器單片機(jī)復(fù)位時(shí)鐘振蕩報(bào)警點(diǎn)按鍵調(diào)整圖2-1 總體設(shè)計(jì)方框圖控制器采用單片機(jī)8051,溫度傳感器采用DS18B20,用4位LED數(shù)碼管傳送數(shù)據(jù)實(shí)現(xiàn)溫度顯示。2.1.4設(shè)計(jì)要求和實(shí)現(xiàn)的功能1.用溫度傳感器測(cè)試溫度,用6位LED數(shù)碼管顯示溫度;2.測(cè)試溫度的圍為5599,溫度誤差為1;3.能進(jìn)行仿真第三章 硬件

10、電路設(shè)計(jì)3.1單片機(jī)模塊(MCS-51系列)圖3-1 MCS-51單片機(jī)結(jié)構(gòu)框圖3.1.1 AT89C51單片機(jī)的性能與特性AT89S52具有以下標(biāo)準(zhǔn)功能:4k字節(jié)Flash,256字節(jié)RAM,32 位I/O 口線,看門狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片晶振與時(shí)鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。與MCS-51單片機(jī)

11、產(chǎn)品兼容8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器10000次擦寫周期 全靜態(tài)操作:0Hz33Hz 三級(jí)加密程序存儲(chǔ)器 32個(gè)可編程I/O口線 三個(gè)16位定時(shí)器/計(jì)數(shù)器 全雙工UART串行通道 低功耗空閑和掉電模式 掉電后中斷可喚醒 看門狗定時(shí)器 雙數(shù)據(jù)指針掉電標(biāo)識(shí)符。3.1.2顯示電路 由6位共陰極LED數(shù)碼管、位驅(qū)動(dòng)電路、端輸入電路組成,采用動(dòng)態(tài)掃描的方式顯示。基本的半導(dǎo)體數(shù)碼管是由八個(gè)條狀發(fā)光二極管芯片按圖2-3排列而成的。可實(shí)現(xiàn)09的顯示。其具體結(jié)構(gòu)有“反射罩式”、“條形八段式”與“單片集成式多位數(shù)字式”等。用6位共陽(yáng)極LED數(shù)碼管實(shí)現(xiàn)溫度顯示。能準(zhǔn)確達(dá)到以上要求。圖3-1數(shù)碼管3.2 溫度

12、采集部分硬件3.2.1 溫度傳感器DS18B20DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)9-12位的數(shù)字值讀數(shù)方式。 TO92封裝的DS18B20的引腳排列見下圖,其引腳功能描述見表3-2。底視圖) 圖3-2 DS18B20引腳圖DS18B20的性能特點(diǎn)如下:獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;多個(gè)DS18B20可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能;無(wú)須外部器件;可通過(guò)數(shù)據(jù)線供電,電壓圍為3.05.5;零待機(jī)功耗;溫度以或位數(shù)字;用戶可定義報(bào)警設(shè)置

13、;報(bào)警搜索命令識(shí)別并標(biāo)志超過(guò)程序限定溫度(溫度報(bào)警條件)的器件;負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作; DS18B20采用3腳PR35封裝或腳SOIC封裝,其部結(jié)構(gòu)框圖如圖3-4所示。圖3-3 DS18B20部結(jié)構(gòu)64位ROM的結(jié)構(gòu)開始8位是產(chǎn)品類型的編號(hào),接著是每個(gè)器件的惟一的序號(hào),共有48位,最后8位是前面56位的CRC檢驗(yàn)碼,這也是多個(gè)DS18B20可以采用一線進(jìn)行通信的原因。溫度報(bào)警觸發(fā)器和,可通過(guò)軟件寫入戶報(bào)警上下限。DS18B20溫度傳感器的部存儲(chǔ)器還包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的EERAM。高速暫存RAM的結(jié)構(gòu)為8字節(jié)的存儲(chǔ)器,結(jié)構(gòu)

14、如圖3-4所示。頭2個(gè)字節(jié)包含測(cè)得的溫度信息,第3和第4字節(jié)和的拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第5個(gè)字節(jié),為配置寄存器,它的容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工作時(shí)寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如圖3-5所示。低5位一直為1,TM是工作模式位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式,DS18B20出廠時(shí)該位被設(shè)置為0,用戶要去改動(dòng),R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),來(lái)設(shè)置分辨率。 圖3-4 DS18B20字節(jié)定義DS18B20溫度轉(zhuǎn)換的時(shí)間比較長(zhǎng),而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間越長(zhǎng)。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考

15、慮。高速暫存RAM的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來(lái)檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第1、2字節(jié)。單片機(jī)可以通過(guò)單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時(shí)低位在先,高位在后,數(shù)據(jù)格式以0.0625LSB形式表示。當(dāng)符號(hào)位S=0時(shí),表示測(cè)得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號(hào)位S=1時(shí),表示測(cè)得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制數(shù)值。表2是一部分溫度值對(duì)應(yīng)的二進(jìn)制溫度數(shù)據(jù)。表3-5一部分溫度對(duì)應(yīng)

16、值表溫度/C二進(jìn)制表示十六進(jìn)制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H00000 0000 0000 10000000H0.51111 1111 1111 0000FFF8H10.1251111 1111 0101 1110FF5EH25.06251111 1110 0110 1111FE6FH551111 1100 1001 0000FC9

17、0H另外,由于DS18B20單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)對(duì)DS18B20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。圖3-6 DS18B20與單片機(jī)的接口電路3.3 DS18B20的測(cè)溫原理器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器2的脈沖輸入。器件中還有一個(gè)計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開時(shí),DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù)進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門的開啟時(shí)

18、間由高溫度系數(shù)振蕩器來(lái)決定,每次測(cè)量前,首先將55所對(duì)應(yīng)的一個(gè)基數(shù)分別置入減法計(jì)數(shù)器1、溫度寄存器中,計(jì)數(shù)器1和溫度寄存器被預(yù)置在55所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,減法計(jì)數(shù)器1的預(yù)置將重新被裝入,減法計(jì)數(shù)器1重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器計(jì)數(shù)到0時(shí),停止溫度寄存器的累加,此時(shí)溫度寄存器中的數(shù)值就是所測(cè)溫度值。其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)器門仍未關(guān)閉就重復(fù)上述過(guò)程,直到溫度寄存器值大致被測(cè)溫度值另外,由于DS18B20單線通信功能是分時(shí)完成的,

19、它有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)對(duì)DS18B20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。DS18B20溫度傳感器與單片機(jī)的接口為1接地,2接P1.0口,3接4.7K上拉電阻。另外,由于DS18B20單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)DS18B20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初始化DS1820(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)操作命令處理數(shù)據(jù)。3.4 報(bào)警上,下限調(diào)整電路實(shí)現(xiàn)本報(bào)警系統(tǒng)中有三個(gè)獨(dú)立式按鍵可以分別調(diào)整溫度計(jì)的上下限報(bào)警設(shè)置,電路中蜂鳴器可以在被測(cè)溫度不在上下

20、限圍時(shí),發(fā)出報(bào)警鳴叫聲音,同時(shí)紅色LED閃爍,實(shí)現(xiàn)報(bào)警功能。復(fù)位的實(shí)現(xiàn)是通過(guò)單片機(jī)的復(fù)位電路實(shí)現(xiàn)上電復(fù)位加手動(dòng)復(fù)位,使用比較方便,在程序跑飛時(shí),可以手動(dòng)復(fù)位,這樣就不用在重起單片機(jī)電源,就可以實(shí)現(xiàn)復(fù)位。第四章報(bào)警上下限調(diào)整電路實(shí)現(xiàn)4.1主程序流程圖圖4-1 主程序流程圖4.2讀出溫度子程序流程圖讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時(shí)需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫。其程序流程圖如圖4-2所示圖4-2 讀溫度流程圖 4.3讀出溫度交換流程圖溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用12位分辨率時(shí)轉(zhuǎn)換時(shí)間約為750ms,在本程序設(shè)計(jì)中采用1s顯示程序延時(shí)法

21、等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖如上圖,圖4-3所示圖4-3 溫度轉(zhuǎn)換流程圖 4.4計(jì)算溫度子程序流程圖計(jì)算溫度子程序?qū)AM中讀取值進(jìn)行BCD碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖4-4所示。圖4-4 計(jì)算溫度流程圖4.5 顯示數(shù)據(jù)刷新子程序顯示數(shù)據(jù)刷新子程序主要是對(duì)顯示緩沖器中的顯示數(shù)據(jù)進(jìn)行刷新操作,當(dāng)最高顯示位為0時(shí)將符號(hào)顯示位移入下一位。程序流程圖如圖4-5。圖4-5 顯示數(shù)據(jù)刷新流程圖結(jié)論本設(shè)計(jì)是利用數(shù)字溫度傳感器DS18B20作為溫度傳感器件,采用價(jià)格低廉性能穩(wěn)定的MCS-51系列的單片機(jī)作為主控芯片,用四位一體共陰極的數(shù)碼管作為顯示器件,蜂鳴器與LED作為

22、報(bào)警電路器件構(gòu)成了整個(gè)系統(tǒng)整體。本設(shè)計(jì)的優(yōu)點(diǎn)是價(jià)格低廉,性能穩(wěn)定,如果把單片機(jī)換成貼片的封裝器件利于大規(guī)模的工業(yè)商業(yè)生產(chǎn)該智能溫度控制器只是DS18B20在溫度控制領(lǐng)域的一個(gè)簡(jiǎn)單實(shí)例,還有許多需要完善的地方,例如可以將測(cè)得的溫度通過(guò)單片機(jī)與通訊模塊相連接,以手機(jī)短消息的方式發(fā)送給用戶,使用戶能夠隨時(shí)對(duì)溫度進(jìn)行監(jiān)控。此外,還能廣泛地應(yīng)用于其他一些工業(yè)生產(chǎn)領(lǐng)域,如建筑,倉(cāng)儲(chǔ)等行業(yè)。本溫度控制系統(tǒng)可以應(yīng)用于多種場(chǎng)合,像的溫度、育嬰房的溫度、水溫的控制。用戶可靈活選擇本設(shè)計(jì)的用途,有很強(qiáng)的實(shí)用價(jià)值。由于時(shí)間太倉(cāng)促,經(jīng)驗(yàn)不足,理論方面也相應(yīng)的存在不足,加上條件有限,仍存在著一些設(shè)計(jì)方面的問(wèn)題,個(gè)人技能也

23、有待提高,理論知識(shí)還要鞏固加強(qiáng)。參考文獻(xiàn)1晶,電路設(shè)計(jì)與制版Protel99高級(jí)應(yīng)用,人民郵電 2004.2廣弟.單片機(jī)基礎(chǔ)M.航空航天大學(xué),1994.3閻石.數(shù)字電子技術(shù)基礎(chǔ)(第三版).高等教育,1989.4王恩榮.MCS-51單片機(jī)應(yīng)用技術(shù).化學(xué)工業(yè),2001.5樓然苗.單片機(jī)課程設(shè)計(jì)指導(dǎo).航空航天大學(xué),2007.6于京.51系列單片機(jī)C程序設(shè)計(jì)與應(yīng)用方案.中國(guó)電力7 沙占友.單片機(jī)外圍電路設(shè)計(jì).電子工業(yè)8 戴佳.51單片機(jī)C語(yǔ)言設(shè)計(jì)實(shí)例精講.電子工業(yè)9 周堅(jiān).單片機(jī)C語(yǔ)言輕松入門.航空航天大學(xué)附錄附錄1 整機(jī)電路圖附錄2 源程序/*DS18B20數(shù)字溫度計(jì)C程序*/*MCU: AT89C

24、51 /*MCU-crystal: 12 /*Version: 01 /*Last Updata: 2009-11-24 /*Author: xxx /*Description: /89s51通過(guò)P3.4讀寫DS18B20的數(shù)據(jù) /溫度傳感器DS18B20采用器件默認(rèn)的12位轉(zhuǎn)化 /最大轉(zhuǎn)化時(shí)間750微秒,顯示溫度-55到+99度,顯示精度/為正負(fù)1度,顯示采用6位LED共陽(yáng)顯示測(cè)溫值 /P0口為段碼輸出,P2.0P2.5為位選 /*/#include #include /_nop_();延時(shí)函數(shù)用#define Disdata P0 /段碼輸出口#define discan P2 /掃描口#

25、define uchar unsigned char#define uint unsigned intsbit DQ=P34; /溫度輸入口sbit DIN=P07; /LED小數(shù)點(diǎn)控制sbit hold=P10;uint h; uint temp;unsigned char presence,flash=0;uchar code ditab16=0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09;/溫度小數(shù)部分用查表法/uchar code dis_714=0xc0,0xf9,0xa4

26、,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf,0x9c,0xc6;/共陽(yáng)LED段碼表 0 1 2 3 4 5 6 7 8 9 不亮 - o C uchar code scan_con6=0xc1,0xc2,0xc4,0xc8,0xd0,0xe0; /列掃描控制字uint data temp_data2=0x00,0x00; /讀出溫度暫放uint data display7=0x00,0x00,0x00,0x00,0x00,0x00,0x00; /顯示單元數(shù)據(jù),共6個(gè)數(shù)據(jù)和一個(gè)運(yùn)算暫用/*延時(shí)函數(shù)*/void delay(uint t) for (

27、;t0;t-); /* 顯示掃描函數(shù)1,在溫度檢測(cè)開始的時(shí)候顯示HELLO! */scan1() discan=scan_con0; /位選 Disdata=0xf9; /數(shù)據(jù)顯示 DIN=0;delay(300); /小數(shù)點(diǎn)顯示 discan=scan_con1; /位選 Disdata=0xc0; /數(shù)據(jù)顯示 delay(300); discan=scan_con2; /位選 Disdata=0xc7; /數(shù)據(jù)顯示 delay(300); discan=scan_con3; /位選 Disdata=0xc7; /數(shù)據(jù)顯示 delay(300); discan=scan_con4; /位選

28、Disdata=0x86; /數(shù)據(jù)顯示 delay(300); discan=scan_con5; /位選 Disdata=0xc089; /數(shù)據(jù)顯示 delay(300);/*顯示掃描函數(shù)*/scan() char k; for(k=0;k0;i-) DQ=1; _nop_(); _nop_(); /從高拉倒低 DQ=0; _nop_(); _nop_(); _nop_(); _nop_(); /5 us DQ=val&0x01; /最低位移出 delay(6); /66 us val=val/2; /右移1位 DQ=1; delay(1);/*DS18B20讀1字節(jié)函數(shù)*/uchar read_byte(void) /從總線上取1個(gè)字節(jié)uchar i;uchar value=0;for(i=8;i0;i-) DQ=1;_nop_();_nop_(); value=1; DQ=0;_nop_();_nop_();_nop_();_nop_(); /4 us DQ=1;_nop_();_nop_();_nop_();_nop_(); /4 us if(DQ)value|=0x80; delay(6); /66 usDQ=1;return(value);/*讀出溫度函數(shù)*/read_temp()ow_reset(); /總線復(fù)位 write_by

溫馨提示

  • 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)論