數(shù)字溫計(jì)大學(xué)論文設(shè)計(jì)_第1頁(yè)
數(shù)字溫計(jì)大學(xué)論文設(shè)計(jì)_第2頁(yè)
數(shù)字溫計(jì)大學(xué)論文設(shè)計(jì)_第3頁(yè)
數(shù)字溫計(jì)大學(xué)論文設(shè)計(jì)_第4頁(yè)
數(shù)字溫計(jì)大學(xué)論文設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、本科畢業(yè)設(shè)計(jì)(論文)學(xué) 院 (四號(hào)黑體) 專 業(yè) (四號(hào)黑體) 學(xué)生姓名 (四號(hào)黑體) 班級(jí)學(xué)號(hào) (四號(hào)黑體) 指導(dǎo)教師 (四號(hào)黑體) 二零壹零年六月摘 要隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活、工作、科研各個(gè)領(lǐng)域,已經(jīng)成為一種比較成熟的技術(shù),本文將介紹一種基于單片機(jī)控制的數(shù)字溫度計(jì),本溫度計(jì)屬于多功能溫度計(jì),可以設(shè)置上下報(bào)警溫度,當(dāng)溫度不在設(shè)置范圍內(nèi)時(shí),可以報(bào)警。隨著人們生活水平的不斷提高,單片機(jī)控制無疑是人們追求的目標(biāo)之一,它所給人帶來的方便也是不可否定的,其中數(shù)字溫度計(jì)就是一個(gè)典型的例子,但人們對(duì)它的要求越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從數(shù)單

2、片機(jī)技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。單片機(jī)在日用電子產(chǎn)品中的應(yīng)用越來越廣泛,溫度則是人們?nèi)粘I钪谐3P枰獪y(cè)量和控制的一個(gè)量??茖W(xué)技術(shù)的發(fā)展和檢測(cè)技術(shù)的發(fā)展是密切相關(guān)的。現(xiàn)代化的檢測(cè)手段能達(dá)到的精度、靈敏度及測(cè)量范圍等,在很大程度上決定了科學(xué)技術(shù)的發(fā)展水平。本文作者采用AT89C2051單片機(jī)和溫度傳感器DS18B20從硬件和軟件兩方面介紹了一款簡(jiǎn)易數(shù)字溫度計(jì)的設(shè)計(jì)過程,并對(duì)硬件原理圖和程序流程圖作了簡(jiǎn)潔的描述。數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對(duì)測(cè)溫比較準(zhǔn)確的場(chǎng)所。關(guān)鍵詞:?jiǎn)纹瑱C(jī) 溫度傳感器 數(shù)字溫度計(jì)ABST

3、RACTWith the progress and development, single-chip technology has spread to our lives, work, research in various fields has become a relatively mature technology, this article will introduce thesingle-chip microcomputer-based control of a digital thermometer, the thermometer are multi-purpose thermo

4、meter, you can set upper and lower temperature alarm, when the temperature range is not set, it could be reported.With the continuous improvement of peoples living standard, single-chip control is undoubtedly one of the objectives pursued, it gives people the convenience can not be negative, in whic

5、h digital thermometer is a typical example, but it is what is required of it more and more people to work, scientific research, life and more convenient to provide better facilities will need to start from the number of single-chip technology, all toward the digital control, intelligent control of d

6、irection.Single-chip electronic products in the daily application of more and more widely, the temperature is often the need for daily life in a measurement and control volume. Development of science and technology development and testing are closely related. Modern methods to achieve the accuracy,

7、sensitivity and measurement range, to a large extent determine the level of development of science and technology. The author of this article using AT89C2051 MCU and temperature sensor DS18B20 from both hardware and software, introduced a simple digital thermometer of the design process, and schemat

8、ic diagram of hardware and procedures were concise description of flow chart. Digital thermometer with a traditional thermometer, compared with a reading of convenience, a wide range of temperature measurement, temperature measurement accuracy, the output of the temperature digital display, mainly u

9、sed for more accurate temperature measurement sites. Key words: single-chip temperature sensor digital thermometer目 錄摘 要IABSTRACTII1 緒 論- 1 -11 功能要求與設(shè)計(jì)方案- 1 -1.1.1 功能要求- 1 - 數(shù)字溫度計(jì)設(shè)計(jì)方案- 1 -12 數(shù)字溫度計(jì)的應(yīng)用領(lǐng)域與所需器件- 1 -1.2.1 應(yīng)用領(lǐng)域- 1 -1.2.2 設(shè)計(jì)中所需要的器件- 2 -2 數(shù)字溫度計(jì)的結(jié)構(gòu)原理器件介紹- 3 -2.1系統(tǒng)功能原理及硬件組成- 3 - 系統(tǒng)功能原理- 3 -2.

10、1.2 系統(tǒng)硬件組成框圖- 3 -2.1.3 原理圖,如附錄A所示。- 4 -2.2 單片機(jī) AT89C2051功能介紹和應(yīng)用- 4 -2.2.1 單片機(jī) AT89C2051簡(jiǎn)介- 4 -2.2.2 主要功能特性- 4 -2.2.3 單片機(jī) AT89C2051引腳功能說明- 5 -2.3 溫度傳感器 DS18B20功能介紹- 6 -DS18B20的內(nèi)部結(jié)構(gòu):- 6 -2.3.2 DS18B20主要特性與新性能- 8 -2.3.3 DS18B20溫度傳感器的存儲(chǔ)器與控制方法- 8 -2.4 74HC244三態(tài)八緩沖器/驅(qū)動(dòng)器的簡(jiǎn)介- 10 -3 數(shù)字溫度計(jì)的程序流程圖及程序設(shè)計(jì)- 12 -3.1

11、 程序設(shè)計(jì)的一般步驟- 12 -3.2 程序流程圖- 12 -3.2.1 DS18B20溫度計(jì)主程序流程圖:- 12 - 讀出溫度子程序流程圖:- 13 -3.3 程序設(shè)計(jì)見附錄B所示- 16 -總 結(jié)- 17 -參考文獻(xiàn)- 18 -附錄A 系統(tǒng)原理圖- 19 -附錄B 系統(tǒng)程序- 20 -致 謝- 28 -1 緒 論隨著單片機(jī)技術(shù)的不斷發(fā)展,單片機(jī)在日用電子產(chǎn)品中的應(yīng)用越來越廣泛,廣泛應(yīng)用于冰箱、空調(diào)器、糧倉(cāng)等日常生活中溫度的測(cè)量和控制。傳統(tǒng)的溫度計(jì)有反應(yīng)速度慢、讀數(shù)麻煩、測(cè)量精度不高、誤差大等缺點(diǎn),本課程利用集成溫度傳感器DS18B20設(shè)計(jì)并制作了一款基于AT89C51的4位數(shù)碼管顯示的數(shù)

12、字溫度計(jì),其電路簡(jiǎn)單,軟硬件結(jié)構(gòu)模塊化,易于實(shí)現(xiàn)。目前溫度計(jì)的發(fā)展很快,從原始的玻璃管溫度計(jì)發(fā)展到了現(xiàn)在的熱電阻溫度計(jì)、熱電偶溫度計(jì)、數(shù)字溫度計(jì)、電子溫度計(jì)等等。目前的溫度計(jì)中傳感器是它的重要組成部分,它的精度靈敏度基本決定了溫度計(jì)的精度、測(cè)量范圍、控制范圍和用途等。傳感器應(yīng)用極其廣泛,目前已經(jīng)研制出多種新型傳感器。通過“數(shù)字溫度計(jì)的設(shè)計(jì)”的設(shè)計(jì)過程,結(jié)合所學(xué)的課程,掌握目前自動(dòng)化 儀表的一般設(shè)計(jì)要求、工程設(shè)計(jì)方法、開發(fā)及設(shè)計(jì)工具的使用方法,通過這一設(shè)計(jì)實(shí)踐過程,鍛煉學(xué)生的動(dòng)手能力和分析、解決問題的能力;積累經(jīng)驗(yàn),培養(yǎng)按部就班、一絲不茍的工作和對(duì)所學(xué)知識(shí)的綜合應(yīng)用能力。11 功能要求與設(shè)計(jì)方案

13、 功能要求數(shù)字式溫度計(jì)要求測(cè)溫范圍在-50到110度,精度誤差在0.1度以內(nèi),4位LED數(shù)碼管直讀顯示。 數(shù)字溫度計(jì)設(shè)計(jì)方案在單片機(jī)電路設(shè)計(jì)中,大多都是使用傳感器,這是非常容易想到的,所以可以采用一個(gè)溫度傳感器DS18B20,本數(shù)字溫度計(jì)設(shè)計(jì)采用美國(guó)DALLAS半導(dǎo)體公司繼DS18B20之后推出的一種改進(jìn)型智能溫度傳感器DS18B20作為檢測(cè)組件,溫度范圍為-55125,最大分辨率在0.0625。DS18B20可以直接讀出溫度被測(cè)溫度值,而且采用三線制與單片機(jī)相連,減少了外部的硬件電路,具有低成本和易使用的特點(diǎn),此傳感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,就可以滿足設(shè)計(jì)要求。12 數(shù)字溫

14、度計(jì)的應(yīng)用領(lǐng)域與所需器件 應(yīng)用領(lǐng)域隨著人們生活水平的不斷提高,單片機(jī)控制無疑是人們追求的目標(biāo)之一,它所給人帶來的方便也是不可否定的,其中數(shù)字溫度計(jì)就是一個(gè)典型的例子,但人們對(duì)它的要求越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設(shè)施就需要從數(shù)單片機(jī)技術(shù)入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。 本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對(duì)測(cè)溫比較準(zhǔn)確的場(chǎng)所,或科研實(shí)驗(yàn)室使用,該設(shè)計(jì)控制器使用單片機(jī)AT89S2051,測(cè)溫傳感器使用DS18B20,用4位共陽(yáng)極LED數(shù)碼管以串口傳送數(shù)據(jù),實(shí)現(xiàn)溫度顯示。 設(shè)計(jì)中所需

15、要的器件1、 單片機(jī):AT89C2051 一塊;2、 溫度傳感器:DS18B20 一塊;3、 驅(qū)動(dòng)器:74HC244 一塊;4、 4位共陽(yáng)極數(shù)碼管 一塊;5、 30PF電容 2個(gè)、10uF 1個(gè);6、 9012三極管 四個(gè);7、 510歐電阻 八個(gè)、1K歐 四個(gè)、4.7K歐和6.8K歐各 一個(gè)、10K歐 二個(gè);8、 12MHZ晶振 一個(gè);9、 5V電源 一個(gè);10、 電路板 一塊。2 數(shù)字溫度計(jì)的結(jié)構(gòu)原理器件介紹本章主要是了解設(shè)計(jì)中的系統(tǒng)功能原理及硬件組成。熟悉單片機(jī)89C2051、傳感器DS18B20等器件的引腳功能和工作狀態(tài),以及對(duì)硬件圖的掌握。2.1系統(tǒng)功能原理及硬件組成 系統(tǒng)功能原理該

16、數(shù)字溫度計(jì)利用DS18B20集成溫度傳感器及其接口電路完成溫度的測(cè)量并對(duì)該信號(hào)轉(zhuǎn)換,然后送到單片機(jī)AT89C51中進(jìn)行處理變換,最后將溫度值顯示在D4、D3、D2、D1共位七段碼LED顯示器上。 系統(tǒng)硬件組成框圖系統(tǒng)以AT89C51單片機(jī)為控制核心,加上DS18B20測(cè)溫電路、74HC244驅(qū)動(dòng)、4位溫度數(shù)據(jù)顯示電路以及外圍電源、時(shí)鐘電路等組成。系統(tǒng)組成框圖如圖2.1所示。AT89C2051單片機(jī)DS18B20溫度傳感器74HC244驅(qū)動(dòng)電路顯示電路單片機(jī)復(fù)位時(shí)鐘振蕩圖2.1 系統(tǒng)組成框圖在硬件上,DS18B20與單片機(jī)的連接有兩種方法,一種是Vcc接外部電源,GND接地,I/O與單片機(jī)的I/

17、O線相連;另一種是用寄生電源供電,此時(shí)UDD、GND接地,I/O接單片機(jī)I/O。無論是內(nèi)部寄生電源還是外部供電,I/O口線要接5K左右的上拉電阻。 原理圖,如附錄A所示。2.2 單片機(jī) AT89C2051功能介紹和應(yīng)用 單片機(jī) AT89C2051簡(jiǎn)介Atmel公司的生產(chǎn)的AT89C2051是一個(gè)低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含2k bytes的可反復(fù)擦寫的只讀Flash程序存儲(chǔ)器和128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,功能強(qiáng)大AT89C2051

18、單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場(chǎng)合。 AT89C2051是一個(gè)功能強(qiáng)大的單片機(jī),但它只有20個(gè)引腳,15個(gè)雙向輸入/輸出(I/O)端口,其中P1是一個(gè)完整的8位雙向I/O口,兩個(gè)外中斷口,兩個(gè)16位可編程定時(shí)計(jì)數(shù)器,兩個(gè)全雙向串行通信口,一個(gè)模擬比較放大器。同時(shí)AT89C2051的時(shí)鐘頻率可以為零,即具備可用軟件設(shè)置的睡眠省電功能,系統(tǒng)的喚醒方式有RAM、定時(shí)/計(jì)數(shù)器、串行口和外中斷口,系統(tǒng)喚醒后即進(jìn)入繼續(xù)工作狀態(tài)。省電模式中,片內(nèi)RAM將被凍結(jié),時(shí)鐘停止振蕩,所有功能停止工作,直至系統(tǒng)被硬件復(fù)位方可繼續(xù)運(yùn)行。芯片示圖2.2如下:圖2.2 AT89C2051芯片示圖 主要功能特性(1)兼容

19、MCS51指令系統(tǒng) (2)2k可反復(fù)擦寫(1000次)Flash ROM(3)15個(gè)雙向I/O口(4)6個(gè)中斷源(5)兩個(gè)16位可編程定時(shí)/計(jì)數(shù)器(6)2.7-6V的寬工作電壓范圍(7)時(shí)鐘頻率0-24MHz(8)128x8bit內(nèi)部RAM(9)兩個(gè)外部中斷源(10)兩個(gè)串行中斷(11)可直接驅(qū)動(dòng)LED(12)兩級(jí)加密位(13)低功耗睡眠功能(14)內(nèi)置一個(gè)模擬比較放大器(15)可編程UARL通道(16)軟件設(shè)置睡眠和喚醒功能 單片機(jī) AT89C2051引腳功能說明(1)Vcc:電源(2)GND:接地(3)P1口:P1口是一組8位雙向I/O口提供內(nèi)部上拉電阻,P1.0和P1.1內(nèi)部無上拉電阻,

20、主要是考慮它們分別是內(nèi)部精密比較器的同相輸入端(AIN1),如果需要應(yīng)在外部接上拉電阻。P1口輸出緩沖器可吸收20mA電流并可直接驅(qū)動(dòng)LED.當(dāng)P1口引腳寫入“1”時(shí)可作輸入端,當(dāng)引腳用做輸入并被外部拉低時(shí),它們將因內(nèi)部的上拉電阻而輸出電流(In)。P1口還在Flash閃速編程及程序校驗(yàn)時(shí)接收代碼數(shù)據(jù)。(4)P3口:P3口的是帶有內(nèi)部上拉電阻的7個(gè)雙向I/O口。P3.6沒有引出,它作為一個(gè)普通I/O口但不可訪問,但可作為固定輸入片內(nèi)比較器的輸出信號(hào),P3口緩沖器可吸收20mA電流。當(dāng)P3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端,作輸入端時(shí),被外部拉低的P3口將用上拉電阻輸出電流(I

21、n)。P3口還用于實(shí)現(xiàn)AT89C2051特殊的功能,接收一些用于Flash閃速存儲(chǔ)編程及程序校驗(yàn)的控制信號(hào)。如下表2.1所示:表2.1 P3口特殊的功能引腳口 功能特性P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2/INTO(外中斷0)P3.3/INT1(外中斷1)P3.4T0(定時(shí)計(jì)數(shù)器0輸入)P3.5T1(定時(shí)計(jì)數(shù)器1輸入) (5)RST:復(fù)位輸入。RST引腳一旦變成兩個(gè)機(jī)器周期以上電平,所有的I/O都將復(fù)位到“1”(高電平)狀態(tài),振蕩器正在工作時(shí),持續(xù)兩個(gè)機(jī)器周期以上的電平便可完全復(fù)位,每個(gè)機(jī)器周期為12個(gè)振蕩時(shí)鐘周期。(6) XTAL1:振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)

22、生器的輸入端。(7) XTAL2:振蕩器反相放大器的輸出端。2.3 溫度傳感器 DS18B20功能介紹現(xiàn)代化的檢測(cè)手段能達(dá)到的精度、靈敏度及測(cè)量范圍等,在很大程度上決定了科學(xué)技術(shù)的發(fā)展水平。同時(shí),科學(xué)技術(shù)的發(fā)展達(dá)到的水平越高,又為檢測(cè)技術(shù)、傳感器技術(shù)提供了新的前提手段。目前溫度計(jì)的發(fā)展很快,從原始的玻璃管溫度計(jì)發(fā)展到了現(xiàn)在的熱電阻溫度計(jì)、熱電偶溫度計(jì)、數(shù)字溫度計(jì)、電子溫度計(jì)等等。目前的溫度計(jì)中傳感器是它的重要組成部分,它的精度靈敏度基本決定了溫度計(jì)的精度、測(cè)量范圍、控制范圍和用途等。傳感器應(yīng)用極其廣泛,目前已經(jīng)研制出多種新型傳感器2.3.1DS18B20的內(nèi)部結(jié)構(gòu):DS18B20溫度傳感器是美

23、國(guó)DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過簡(jiǎn)單的編程實(shí)現(xiàn)912位的數(shù)字值讀數(shù)方式,如內(nèi)部結(jié)構(gòu)圖2.3:圖2.3 內(nèi)部結(jié)構(gòu)圖DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。DS18B20的管腳排列如圖2.4下:圖2.4 DS18B20的管腳排列圖DQ為數(shù)字信號(hào)輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時(shí)接地)。 DS18B20主要特性與新性能1、 主要特性(1) 一線通訊接口;(2) 電源范圍:3.0V

24、5.5V;(3) 測(cè)溫范圍:10+125;(4) 精度:10+85內(nèi)為+0.5;(5) 可編程分辨率:912位;(6) 12位數(shù)據(jù)時(shí)轉(zhuǎn)換時(shí)間750ms(最大值)(7) 負(fù)壓特性:電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作。 DS18B20溫度傳感器的存儲(chǔ)器與控制方法1、 DS18B20溫度傳感器的存儲(chǔ)器DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的E2RAM,后者存放高溫度和低溫度觸發(fā)器TH、TL和結(jié)構(gòu)寄存器。暫存存儲(chǔ)器包含了8個(gè)連續(xù)字節(jié),前兩個(gè)字節(jié)是測(cè)得的溫度信息,第一個(gè)字節(jié)的內(nèi)容是溫度的低八位,第二個(gè)字節(jié)是溫度的高八位。第三個(gè)和第四個(gè)字節(jié)是

25、TH、TL的易失性拷貝,第五個(gè)字節(jié)是結(jié)構(gòu)寄存器的易失性拷貝,這三個(gè)字節(jié)的內(nèi)容在每一次上電復(fù)位時(shí)被刷新。第六、七、八個(gè)字節(jié)用于內(nèi)部計(jì)算。第九個(gè)字節(jié)是冗余檢驗(yàn)字節(jié)。 分辨率設(shè)置表2.2:表2.2 DS18B20分辨率設(shè)置R1R0分辨率溫度最大轉(zhuǎn)換時(shí)間009位93.75ms 0110位187.5ms 1011位375ms 1112位750ms 根據(jù)DS18B20的通訊協(xié)議,主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個(gè)步驟:(1)初始化(2)執(zhí)行某個(gè)ROM指令(3)執(zhí)行RAM內(nèi)存指令(4)數(shù)據(jù)傳輸2、 DS18B20溫度傳感器的控制方法 在硬件上,DS18B20與單片機(jī)的連接有兩種方法,一種是Vcc

26、接外部電源,GND接地,I/O與單片機(jī)的I/O線相連;另一種是用寄生電源供電,此時(shí)UDD、GND接地,I/O接單片機(jī)I/O。無論是內(nèi)部寄生電源還是外部供電,I/O口線要接5K左右的上拉電阻。 DS18B20有六條控制命令,如表2.3所示:表2.3 DS18B20六條控制命令指 令 約定代碼 操 作 說 明 溫度轉(zhuǎn)換 44H 啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換 讀暫存器 BEH 讀暫存器9個(gè)字節(jié)內(nèi)容 寫暫存器 4EH 將數(shù)據(jù)寫入暫存器的TH、TL字節(jié) 復(fù)制暫存器 48H 把暫存器的TH、TL字節(jié)寫到E2RAM中 重新調(diào)E2RAM B8H 把E2RAM中的TH、TL字節(jié)寫到暫存器TH、TL字節(jié) 讀電源

27、供電方式 B4H 啟動(dòng)DS18B20發(fā)送電源供電方式的信號(hào)給主CPU CPU對(duì)DS18B20的訪問流程是:先對(duì)DS18B20初始化,再進(jìn)行ROM操作命令,最后才能對(duì)存儲(chǔ)器操作,數(shù)據(jù)操作。DS18B20每一步操作都要遵循嚴(yán)格的工作時(shí)序和通信協(xié)議。如主機(jī)控制DS18B20完成溫度轉(zhuǎn)換這一過程,根據(jù)DS18B20的通訊協(xié)議,須經(jīng)三個(gè)步驟:每一次讀寫之前都要對(duì)DS18B20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對(duì)DS18B20進(jìn)行預(yù)定的操作。2.4 74HC244三態(tài)八緩沖器/驅(qū)動(dòng)器的簡(jiǎn)介1、簡(jiǎn)要說明:244為三態(tài)輸出的八組緩沖器和總線驅(qū)動(dòng)器,其管腳圖及功能表2.4如下示

28、: 表2.4 74HC244管腳圖引出端符號(hào):1A11A4,2A12A4:輸入端;/1G, /2G:三態(tài)允許端(低電平有效);1Y11Y4,2Y12Y4:輸出端。2、邏輯圖,如圖2.5圖2.5 雙列直插封裝3、極限值:電源電壓:7V;輸入電壓:5.5V;輸出高阻態(tài)時(shí)高電平電壓:5.5V;工作環(huán)境溫度:-55125;存儲(chǔ)溫度:-651503 數(shù)字溫度計(jì)的程序流程圖及程序設(shè)計(jì)3.1 程序設(shè)計(jì)的一般步驟程序設(shè)計(jì)就是指計(jì)算機(jī)完成某一具體工作任務(wù)時(shí),必須按順序執(zhí)行一條條指令。一般的程序設(shè)計(jì)過程大致可分3個(gè)步驟:1 確定計(jì)算方法,定出運(yùn)算步驟和順序,把運(yùn)算過程畫成框圖。2 確定數(shù)據(jù),包括工作單元的數(shù)量,分

29、配存放單元。3 按所使用計(jì)算機(jī)的指令系統(tǒng),把確定的運(yùn)算順序?qū)懗蓞R編語(yǔ)言程序。系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計(jì)算溫度子程序,顯示數(shù)據(jù)刷新子程序等。3.2 程序流程圖 DS18B20溫度計(jì)主程序流程圖:主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理DS18B20的測(cè)量溫度值,溫度測(cè)量每1s進(jìn)行一次,其程序流程圖如圖3.1所示。初始化調(diào)用顯示子程序1S到?初次上電?讀出溫度值溫度計(jì)算處理顯示數(shù)據(jù)刷新發(fā)溫度轉(zhuǎn)換開始命令NYNY圖3.1 主程序流程圖 讀出溫度子程序流程圖:讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時(shí)需要進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)

30、的改寫。其程序流程圖如圖3.2所示。Y發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)讀取溫度命令讀取操作,CRC校驗(yàn)9字節(jié)完?CRC校驗(yàn)正?確?移入溫度暫存器結(jié)束NNY圖3.2 讀出溫度子程序流程圖1、 溫度轉(zhuǎn)換命令子程序流程圖:溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用12位分辯率時(shí)轉(zhuǎn)換時(shí)間約為750ms,在本程序設(shè)計(jì)中采用1s顯示程序延時(shí)法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖如圖3.3所示。發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)溫度轉(zhuǎn)換開始命令 結(jié)束圖3.3 溫度轉(zhuǎn)換命令子程序流程圖2、 計(jì)算溫度子程序流程圖:計(jì)算溫度子程序?qū)AM中讀取值進(jìn)行BCD碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正

31、負(fù)的判定,其流程圖如圖3.4所示 開始溫度零下?溫度值取補(bǔ)碼置“”標(biāo)志計(jì)算小數(shù)位溫度BCD值 計(jì)算整數(shù)位溫度BCD值 結(jié)束置“+”標(biāo)志NY圖3.4 計(jì)算溫度子程序流程圖3、顯示數(shù)據(jù)刷新子程序流程圖:顯示數(shù)據(jù)刷新子程序主要是對(duì)顯示緩沖區(qū)中的顯示數(shù)據(jù)進(jìn)行刷新操作,當(dāng)最高顯示位為0時(shí)將符號(hào)顯示位移入下一位。程序流程圖如圖3.5所示。溫度數(shù)據(jù)移入顯示寄存器十位數(shù)0?百位數(shù)0?十位數(shù)顯示符號(hào)百位數(shù)不顯示百位數(shù)顯示數(shù)據(jù)(不顯示符號(hào)) 結(jié)束NNYY圖3.5 顯示數(shù)據(jù)刷新子程序流程圖3.3 程序設(shè)計(jì)見附錄B所示總 結(jié)經(jīng)過將近四個(gè)月的單片機(jī)課程設(shè)計(jì),終于完成數(shù)字溫度計(jì)的設(shè)計(jì),雖然沒有完全達(dá)到設(shè)計(jì)要求,但從心底里

32、說,還是高興的,因?yàn)檫@次設(shè)計(jì)真的讓我長(zhǎng)進(jìn)了很多。在本次設(shè)計(jì)的過程中,我發(fā)現(xiàn)很多的問題,單片機(jī)課程設(shè)計(jì)重點(diǎn)就在于軟件算法的設(shè)計(jì),程序只有在經(jīng)常的寫與讀的過程中才能提高,有好多的東西,只有我們?nèi)ピ囍隽?,才能真正的掌握,只學(xué)習(xí)理論有些東西是很難理解的,更談不上掌握。從這次的課程設(shè)計(jì)中,使我意識(shí)到在以后的工作中,要理論聯(lián)系實(shí)際,把所學(xué)的理論知識(shí)用到實(shí)際當(dāng)中。在這四周里我之所以能順利的完成本次畢業(yè)論文的設(shè)計(jì),是與很多人的幫助和支持分不開的。 本課程的設(shè)計(jì)是在張仁武老師的悉心指導(dǎo)下完成的。在此我非常感謝張仁武老師在畢業(yè)設(shè)計(jì)過程中給予我的指導(dǎo)與幫助。感謝工程技術(shù)學(xué)院全體老師的教導(dǎo)和培養(yǎng),在此向各位老師致以

33、最誠(chéng)摯的謝意。同時(shí)也感謝同學(xué)給予我的幫助和支持。由于時(shí)間和知識(shí)水平所限,論文中必然會(huì)有一些疏漏和不妥之處,懇請(qǐng)各位老師和同學(xué)批評(píng)指正。學(xué)生: 李大朋參考文獻(xiàn)1 張洪潤(rùn)、張亞凡單片機(jī)原理及應(yīng)用北京:清華大學(xué)出版社2 張百新溫度計(jì)的誕生和發(fā)展濮陽(yáng)教育學(xué)院學(xué)報(bào)3 何立民單片機(jī)應(yīng)用技術(shù)選編M北京:北京航空航天大學(xué)出版社,2004.4 楊剛、周群電子系統(tǒng)設(shè)計(jì)與實(shí)踐M北京:電子工業(yè)出版社,2004.5 白澤生用MCS-51單片機(jī)實(shí)現(xiàn)溫度的檢測(cè)J現(xiàn)代電子技術(shù),2005年第10期 1-3頁(yè).6 張開生、郭國(guó)法MCS-51單片機(jī)溫度控制系統(tǒng)的設(shè)計(jì)J微計(jì)算機(jī)信息,2005第21期 68-69頁(yè).7 張鵬、雄磊、姚

34、東萍分辨率可編程的一線總線數(shù)字溫度計(jì)DS18B20及其應(yīng)用北京:交通大學(xué)現(xiàn)代通信研究所8 王幸之、王雷、翟成等單片機(jī)應(yīng)用系統(tǒng)抗干擾技術(shù)北京:航空航天大學(xué)出版社9 康華光電子技術(shù)基礎(chǔ)高等教育出版社10 萬福君、潘松峰等單片機(jī)微機(jī)原理系統(tǒng)設(shè)計(jì)與應(yīng)用中國(guó)科學(xué)技術(shù)大學(xué)出版社16 附錄A 系統(tǒng)原理圖附錄B 系統(tǒng)程序數(shù)字溫度計(jì)程序清單S1OK EQU 5FHTEMPUTER EQU 39H TEMPH EQU 5EH TEMPLEQU 5DH MS50 EQU 5CHSIGN EQU 5BH S1 BIT P1.0 S2 BIT P1.1 S3 BIT P1.2 S4 BIT P1.3 ORG 0000H

35、 LJMP MAIN ;無條件轉(zhuǎn)移 ORG 000BH LJMP TOIT ORG 0030HMAIN: MOV SP, #60H ;主程序 棧頂?shù)刂?0H MOV TMOD, #01H ;定時(shí)器T0工作在方式1 MOV TH0, #3CH ;定時(shí)時(shí)間 MOV TL0, #0B0H SETB ET0 ;啟動(dòng)T0記數(shù) SETB TR0 SETB EA ;允許中斷 MOV TEMPH, #30 MOV TEMPL, #9 MOV TEMPUTER, #15 ; 溫度最始值 MOV S1OK, #00H MOV SIGN, #00H MOV 38H, #0BH MOV 36H, #0BH MOV 3

36、7H, #0CH ACALL DISP ;顯示溫度子程序 ACALL T1S ;開機(jī)延時(shí)主程序START: ACALL T12MS JB S1, NET1 ; 位條件轉(zhuǎn)移 JNB S1, $ ;位條件轉(zhuǎn)移等待 INC SIGN MOV A, SIGN CJNE A, #1, TIAO ;比較之后轉(zhuǎn)移 ACALL TIAOTLTIAO: CJNE A, #2, NET1 ; 比較之后轉(zhuǎn)移 MOV SIGN, #0 ACALL TIAOTH NET1: MOV A, S1OK CJNE A, #1, START ; 比較之后轉(zhuǎn)移 MOV A, TEMPUTER SUBB A, TEMPH ;帶借位

37、相減 JNB ACC.7, ALEM ; 位條件轉(zhuǎn)移 MOV A, TEMPUTER SUBB A, TEMPL ;帶借位相減 JB ACC.7, ALEM ; 位條件轉(zhuǎn)移 SETB P2.1 ; P2.1置1 ACALL WENDU ;調(diào)用 ACALL DISP ;調(diào)用 MOV S1OK, #00H AJMP START ; 無條件轉(zhuǎn)移 ALEM: MOV 36H, #0CH MOV 37H, #0CH MOV 38H, #0CH CLR P2.1 ;清0 ACALL DISP ;調(diào)用 ACALL T1S LCALL WENDU ;調(diào)用子程序 LCALL DISP ;調(diào)用 MOV S1OK,

38、 #00H SJMP START ;無條件轉(zhuǎn)移TIAOTL:MOV 50H, TEMPUTER MOV 37H, TEMPL ACALL BIN_BCD ;調(diào)用 ACALL DISP ACALL T12MS ACALL T12M ACALL T12MSACALL T12MSMOV 36H, #0AH MOV 37H, #0AH MOV 38H, #0AH ACALL DISP ;調(diào)用 ACALL T12MS ACALL T12MS ACALL T12MS ACALL T12MS JB S2, ADD1 ; 位條件轉(zhuǎn)移 ACALL T12MS JB S2, ADD1 ; 位條件轉(zhuǎn)移 JNB S2

39、, $ ; 位條件轉(zhuǎn)移等待 INC TEMPL ; 加1 MOV A, TEMPL CJNE A, #100, ADD1 ; 比較之后轉(zhuǎn)移 MOV TEMPL, #0 ADD1: JB S3, ADD2 ; 位條件轉(zhuǎn)移 ACALL T12MS ;調(diào)用 JB S3, ADD2 ; 位條件轉(zhuǎn)移 JNB S3, $ ; 位條件轉(zhuǎn)移等待 DEC TEMPL MOV A, TEMPL CJNE A, #00 , ADD2 ; 比較之后轉(zhuǎn)移 MOV TEMPL,#100 ADD2: JB S4, TIAOTL ACALL T12MS ;調(diào)用 JB S4, TIAOTL ; 位條件轉(zhuǎn)移 JNB S4, $

40、; 位條件轉(zhuǎn)移等待 MOV TEMPUTER, 50H LJMP START ;無條件轉(zhuǎn)移秒定時(shí)中段TOIT: PUSH PSW ;入棧指令 PUSH ACC MOV TH0, #3CH MOV TL0, #0B0H INC MS50 ; 加1 MOV A, MS50 CJNE A, #14H, RETURN ; 比較之后轉(zhuǎn)移 MOV S1OK, #1 MOV MS50, #00H RETURN:POP ACC POP PSW ;出棧指令 RETI ;中斷服務(wù)返回 溫度總子程序溫度: ACALL INIT_1820 ;保護(hù)斷點(diǎn)地址 ACALL RE_CONFIG ;調(diào)用 ACALL GET_T

41、EMPER ACALL TEMPER_COV RET ;子程序返回; DS18B20初始化程序 INIT_1820: SETB P2.0 ; P2.0置1 NOP ;空操作指令 CLR P2.0 ;清0 MOV R0,#06BH MOV R1,#03HTSR1: DJNZ R0,TSR1 ; 延時(shí) MOV R0,#6BH DJNZ R1,TSR1 SETB P2.0 ; P2.0置1 NOP ;空操作指令 NOP NOP MOV R0,#25HTSR2: JNB P2.0,TSR3 ; 位條件轉(zhuǎn)移 DJNZ R0,TSR2 ; 循環(huán)轉(zhuǎn)移 LJMP TSR4 ; 延時(shí)TSR3: SETB 20H

42、.1 ; 置標(biāo)志位,表示DS1820存在 LJMP TSR5TSR4: CLR 20H.1 ; 清標(biāo)志位,表示DS1820不存在 LJMP TSR7 ;無條件轉(zhuǎn)移TSR5: MOV R0,#06BH MOV R1,#03HTSR6:DJNZ R0,TSR6 ; 延時(shí) MOV R0,#6BH DJNZ R1,TSR6TSR7:SETB P2.0 ; P2.0置1 RET ;子程序返回 重新寫DS18B20暫存存儲(chǔ)器設(shè)定值RE_CONFIG:JB 20H.1,RE_CONFIG1 ; 若DS18B20存在,轉(zhuǎn)RE_CONFIG1 RET ;子程序返回RE_CONFIG1: MOV A,#0CCH ; 發(fā)SKIP ROM命令 LCALL WRITE_1820 MOV A,#4EH ; 發(fā)寫暫存存儲(chǔ)器命令 LCALL WRITE_1820 ;調(diào)用子程序 LCALL WRITE_1820 MOV A,#1FH ; 選擇9位溫度分辨率 LCALL WRITE_1820 RET ; 子程序返回讀出轉(zhuǎn)換后的溫度值GET_TEMPER: SETB P2.0 ; 定時(shí)入口 LCALL INIT_1820 ;調(diào)用子程序 JB 20H.1,TSS2 ; 位條件轉(zhuǎn)移 RE

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論