課程設(shè)計(jì)---溫度控制系統(tǒng)設(shè)計(jì)_第1頁
已閱讀1頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  溫度測(cè)量系統(tǒng)設(shè)計(jì)</b></p><p><b>  摘要</b></p><p>  目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。單片機(jī)的功能齊全且智能,成本低廉, 系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,使用方便,因而通過單片機(jī)控制與調(diào)整溫度有很大實(shí)用價(jià)值。本設(shè)計(jì)是基于80C51單片機(jī)和DS18B20溫度傳感

2、器實(shí)現(xiàn)溫度的測(cè)量系統(tǒng), 單片機(jī)在本系統(tǒng)中作為溫度輸入控制器件,DS18B20被用作溫度數(shù)據(jù)的采集,LED實(shí)現(xiàn)溫度顯示功能。本系統(tǒng)線路簡(jiǎn)單,控制功能強(qiáng),測(cè)量值精確。</p><p>  關(guān)鍵詞80C51單片機(jī);DS18B20溫度傳感器;LED顯示</p><p><b>  第1章 緒論1</b></p><p><b>  1.1課

3、題背景1</b></p><p>  1.2 開發(fā)意義1</p><p>  1.3 課題完成的功能1</p><p>  第2章 方案論證及選擇2</p><p><b>  2.1功能設(shè)計(jì)2</b></p><p>  2.2系統(tǒng)設(shè)計(jì)原則、方案論證2</p>

4、<p>  2.2.1 設(shè)計(jì)原則2</p><p>  2.2.2 方案論證2</p><p>  2.3 單片機(jī)介紹3</p><p>  2.3.1 80C51單片機(jī)6</p><p>  2.3.2 復(fù)位電路8</p><p>  2.3.3 晶振電路...................

5、.........................9</p><p>  2.4 溫度傳感器9</p><p>  2.4.1溫度傳感器特性...................................... 9</p><p>  2.4.2 DS18B20的連接.......................................10</

6、p><p>  2.4.3 DS18B20的注意事項(xiàng)...................................13</p><p>  2.5 數(shù)碼顯示管..............................................13</p><p>  第3章 軟件設(shè)計(jì)14</p><p>  3.1軟件介紹...

7、.............................................14</p><p>  3.2流程設(shè)計(jì)................................................14</p><p>  第4章 系統(tǒng)軟硬件調(diào)試16</p><p><b>  第5章 結(jié)論16</b></

8、p><p><b>  參考文獻(xiàn)17</b></p><p><b>  致 謝17</b></p><p><b>  附錄18</b></p><p>  1.溫度采集系統(tǒng)匯編語言程序18</p><p>  2.溫度采集系統(tǒng)硬件電路及仿真結(jié)果.

9、..............................22</p><p><b>  第1章 緒論</b></p><p><b>  1.1課題背景</b></p><p>  隨著微型計(jì)算機(jī)技術(shù)的飛速發(fā)展和普及,數(shù)據(jù)采集系統(tǒng)也迅速地得到應(yīng)用。在生產(chǎn)過程中,應(yīng)用這一系統(tǒng)可對(duì)生產(chǎn)現(xiàn)場(chǎng)的工藝參數(shù)進(jìn)行采集、監(jiān)視和記錄,

10、以便提高產(chǎn)品質(zhì)量、降低成本提供信息和手段。在科學(xué)研究中,應(yīng)用數(shù)據(jù)采集系統(tǒng)可獲得大量的動(dòng)態(tài)信息,是研究瞬態(tài)物理過程的有力工具,也是獲取科學(xué)奧秘的重要手段之一,它將提高人們對(duì)各種瞬態(tài)現(xiàn)象進(jìn)行研究的能力。隨著電子技術(shù)和計(jì)算機(jī)技術(shù)的迅速發(fā)展,特別是單片微機(jī)的發(fā)展,使傳統(tǒng)的測(cè)量?jī)x器在原理,功能,精度及自動(dòng)化水平等方面發(fā)生了巨大的變化,使很多的傳統(tǒng)電子儀器被相應(yīng)的全新的儀器類型和測(cè)試系統(tǒng)體系所代替。在科學(xué)技術(shù)高速發(fā)展的今天,如何用簡(jiǎn)單便宜,性能良好

11、的元器件制造出對(duì)人類生活有用的產(chǎn)品,已經(jīng)成為人們研究的主要趨勢(shì)。因此,溫度測(cè)試儀作為測(cè)量?jī)x器中不能缺少的一種儀器,如何用簡(jiǎn)單便宜,性能良好,外圍電路簡(jiǎn)單的元器件制造出性能良好的溫度采集器便成為了溫度采集器的發(fā)展方向。本設(shè)計(jì)是基于AT89C51單片機(jī)和DS18B20溫度傳感器實(shí)現(xiàn)溫度的測(cè)量系統(tǒng),可以說與人們的日常生活是息息相關(guān)的,具有很大的現(xiàn)實(shí)意義。</p><p><b>  1.2 開發(fā)意義</

12、b></p><p>  數(shù)據(jù)采集是獲取信息的基本手段,信息采集技術(shù)作為信息技術(shù)的一個(gè)重要分支,與傳感器,信號(hào)測(cè)量與處理,微型計(jì)算機(jī)等技術(shù)為基礎(chǔ)而形成的一門綜合應(yīng)用技術(shù),它研究數(shù)據(jù)的采集,存儲(chǔ),處理及控制等作業(yè),具有很強(qiáng)的是用性。今天,數(shù)據(jù)采集技術(shù)已經(jīng)在雷達(dá),通訊,水聲,遙感,地質(zhì)勘探,震動(dòng)工程,無損監(jiān)測(cè),語音處理,智能儀器,工業(yè)自動(dòng)控制以及生物醫(yī)學(xué)工程等眾多領(lǐng)域的到廣泛的應(yīng)用并且收到了良好的效果。 <

13、;/p><p>  1.3 課題完成的功能</p><p>  本設(shè)計(jì)是一種基于80C51單片機(jī)的數(shù)據(jù)采集系統(tǒng)的最小系統(tǒng)軟件設(shè)計(jì),溫度傳感器DS18B20完成將溫度信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)的功能,由80C51單片機(jī)控制從而實(shí)現(xiàn)對(duì)數(shù)據(jù)的采集。最終通過LED數(shù)碼顯示實(shí)時(shí)溫度。</p><p>  第2章 方案論證及選擇</p><p><b> 

14、 2.1功能設(shè)計(jì)</b></p><p>  本系統(tǒng)主要由80C51單片機(jī),DS18B20溫度傳感器,LED顯示器等部分組成,從而實(shí)現(xiàn)對(duì)信號(hào)的采集、處理、顯示,工作的功能。原理框圖如下圖(圖2-1)所示。</p><p>  圖2.1數(shù)據(jù)采集電路原理框圖</p><p>  2.2系統(tǒng)設(shè)計(jì)原則、方案論證</p><p>  2.2

15、.1 系統(tǒng)設(shè)計(jì)原則</p><p>  順應(yīng)數(shù)據(jù)采集系統(tǒng)的發(fā)展,本著拓寬系統(tǒng)功能,使用更少的元器件,降低系統(tǒng)功耗及使系統(tǒng)更加可靠為目標(biāo)設(shè)計(jì)一款使用器件最少的數(shù)據(jù)采集系統(tǒng)。依照上述原則,接下來討論方案論證。</p><p>  2.2.2 方案論證</p><p>  方案一、采用模擬分立元件,如電容、電感或晶體管等非線形元件,實(shí)現(xiàn)多點(diǎn)溫度的測(cè)量及顯示,該方案設(shè)計(jì)電路

16、簡(jiǎn)單易懂,操作簡(jiǎn)單,且價(jià)格便宜,但采用分立元件分散性大,不便于集成數(shù)字化,而且測(cè)量誤差大。采用模擬的溫度傳感器實(shí)現(xiàn)溫度的測(cè)量。</p><p>  方案二、本方案采用80C51單片機(jī)為核心,通過溫度傳感器AD590采集溫度信號(hào),經(jīng)信號(hào)放大器放大后,送到A/D轉(zhuǎn)換芯片,最終經(jīng)單片機(jī)檢測(cè)處理溫度信號(hào)。 </p><p><b>  圖1方案二的框圖</b></p&

17、gt;<p>  方案三、本方案由80C51單片機(jī)為核心,溫度傳感器采用的是DS18B20數(shù)字溫度傳感器實(shí)現(xiàn)溫度的測(cè)量并且由LED顯示溫度值。</p><p><b>  圖2方案三的框圖</b></p><p>  方案的比較:DS18B20將溫度信號(hào)直接轉(zhuǎn)換為數(shù)字信號(hào),實(shí)現(xiàn)了與單片機(jī)的直接接口,從而省去了信號(hào)調(diào)理電路。該儀器電路簡(jiǎn)單、功能可靠、測(cè)量效

18、率高,很好地彌補(bǔ)了傳統(tǒng)溫度測(cè)量方法的不足。相對(duì)與方案1,在功能、性能、可操作性等方面都有較大的提升。相對(duì)與方案2,硬件電路簡(jiǎn)單,易于操作,具有更高的性價(jià)比,更大的市場(chǎng)。所以采用方案3完成本設(shè)計(jì)。</p><p><b>  2.3單片機(jī)介紹</b></p><p>  單片機(jī)是指一個(gè)集成在一塊芯片上的完整計(jì)算機(jī)系統(tǒng)。盡管他的大部分功能集成在一塊小芯片上,但是它具有一個(gè)

19、完整計(jì)算機(jī)所需要的大部分部件:CPU、內(nèi)存、內(nèi)部和外部總線系統(tǒng),目前大部分還會(huì)具有外存。同時(shí)集成諸如通訊接口、定時(shí)器,實(shí)時(shí)時(shí)鐘等外圍設(shè)備。而現(xiàn)在最強(qiáng)大的單片機(jī)系統(tǒng)甚至可以將聲音、圖像、網(wǎng)絡(luò)、復(fù)雜的輸入輸出系統(tǒng)集成在一塊芯片上。</p><p>  單片機(jī)也被稱為微控制器(Microcontroler),是因?yàn)樗钤绫挥迷诠I(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有CPU的專用處理器發(fā)展而來。最早的設(shè)計(jì)理念是通過將大量外圍設(shè)備

20、和CPU集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn)復(fù)雜的而對(duì)提及要求嚴(yán)格的控制設(shè)備當(dāng)中。INTEL的Z80是最早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專用處理器的發(fā)展便分道揚(yáng)鑣。</p><p>  早期的單片機(jī)都是8位或4位的。其中最成功的是INTEL的8031,因?yàn)楹?jiǎn)單可靠而性能不錯(cuò)獲得了很大的好評(píng)。此后在8031上發(fā)展出了MCS51系列單片機(jī)系統(tǒng)。基于這一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。

21、隨著工業(yè)控制領(lǐng)域要求的提高,開始出現(xiàn)了16位單片機(jī),但因?yàn)樾詢r(jià)比不理想并未得到很廣泛的應(yīng)用。90年代后隨著消費(fèi)電子產(chǎn)品大發(fā)展,單片機(jī)技術(shù)得到了巨大的提高。隨著INTEL i960系列特別是后來的ARM系列的廣泛應(yīng)用,32位單片機(jī)迅速取代16位單片機(jī)的高端地位,并且進(jìn)入主流市場(chǎng)。而傳統(tǒng)的8位單片機(jī)的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,高端的32位單片機(jī)主頻已經(jīng)超過300MHz,性能直追90年代中期的專用處理器,而

22、普通的型號(hào)出廠價(jià)格跌落至1美元,最高端的型號(hào)也只有10美元。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開發(fā)和使用,大量專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。而在作為掌上電腦和手機(jī)核心處理的高端單片機(jī)甚至可以直接使用專用的Windows和Linux操作系統(tǒng)。</p><p>  單片機(jī)比專用處理器更適合應(yīng)用于嵌入式系統(tǒng),因此它得到了最多的應(yīng)用。事實(shí)上單片機(jī)是世界上數(shù)量最多的計(jì)算機(jī)。現(xiàn)代人類生活中所用的幾乎每件

23、電子和機(jī)械產(chǎn)品中都會(huì)集成有單片機(jī)。手機(jī)、電話、計(jì)算器、家用電器、電子玩具、掌上電腦以及鼠標(biāo)等電腦配件中都配有1-2部單片機(jī)。而個(gè)人電腦中也會(huì)有為數(shù)不少的單片機(jī)在工作。汽車上一般配備40多部單片機(jī),復(fù)雜的工業(yè)控制系統(tǒng)上甚至可能有數(shù)百臺(tái)單片機(jī)在同時(shí)工作!單片機(jī)的數(shù)量不僅遠(yuǎn)超過PC機(jī)和其他計(jì)算的綜合,甚至比人類的數(shù)量還要多。</p><p>  單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系

24、統(tǒng)集成到一個(gè)芯片上。概括的講:一塊芯片就成了一臺(tái)計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的最佳選擇。</p><p>  單片機(jī)內(nèi)部也用和電腦功能類似的模塊,比如CPU,內(nèi)存,并行總線,還有和硬盤作用相同的存儲(chǔ)器件,不同的是它的這些部件性能都相對(duì)我們的家用電腦弱很多,不過價(jià)錢也是低的,一般不超過10元即可......用它來做一些控制電器一類

25、不是很復(fù)雜的工作足矣了。我們現(xiàn)在用的全自動(dòng)滾筒洗衣機(jī)、排煙罩、VCD等等的家電里面都可以看到它的身影!它主要是作為控制部分的核心部件。</p><p>  它是一種在線式實(shí)時(shí)控制計(jì)算機(jī),在線式就是現(xiàn)場(chǎng)控制,需要的是有較強(qiáng)的抗干擾能力,較低的成本,這也是和離線式計(jì)算機(jī)的(比如家用PC)的主要區(qū)別。 </p><p>  單片機(jī)是靠程序的,并且可以修改。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊

26、的獨(dú)特的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。一個(gè)不是很復(fù)雜的功能要是用美國(guó)50年代開發(fā)的74系列,或者60年代的CD4000系列這些純硬件來搞定的話,電路一定是一塊大PCB板!但是如果要是用美國(guó)70年代成功投放市場(chǎng)的系列單片機(jī),結(jié)果就會(huì)有天壤之別!只因?yàn)閱纹瑱C(jī)的通過你編寫的程序可以實(shí)現(xiàn)高智能,高效率,以及高可靠性! </p><p>  由于單片機(jī)對(duì)成本是敏感的,所以目前

27、占統(tǒng)治地位的軟件還是最低級(jí)匯編語言,它是除了二進(jìn)制機(jī)器碼以上最低級(jí)的語言了,既然這么低級(jí)為什么還要用呢?很多高級(jí)的語言已經(jīng)達(dá)到了可視化編程的水平為什么不用呢?原因很簡(jiǎn)單,就是單片機(jī)沒有家用計(jì)算機(jī)那樣的CPU,也沒有像硬盤那樣的海量存儲(chǔ)設(shè)備。一個(gè)可視化高級(jí)語言編寫的小程序里面即使只有一個(gè)按鈕,也會(huì)達(dá)到幾十K的尺寸!對(duì)于家用PC的硬盤來講沒什么,可是對(duì)于單片機(jī)來講是不能接受的。 單片機(jī)在硬件資源方面的利用率必須很高才行,所以匯編雖然原始卻還

28、是在大量使用。一樣的道理,如果把巨型計(jì)算機(jī)上的操作系統(tǒng)和應(yīng)用軟件拿到家用PC上來運(yùn)行,家用PC的也是承受不了的。</p><p>  可以說,二十世紀(jì)跨越了三個(gè)“電”的時(shí)代,即電氣時(shí)代、電子時(shí)代和現(xiàn)已進(jìn)入的電腦時(shí)代。不過,這種電腦,通常是指?jìng)€(gè)人計(jì)算機(jī),簡(jiǎn)稱PC機(jī)。它由主機(jī)、鍵盤、顯示器等組成。還有一類計(jì)算機(jī),大多數(shù)人卻不怎么熟悉。這種計(jì)算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)(亦稱微控制器)。</p>&

29、lt;p>  2.3.1 80C51單片機(jī)</p><p>  80C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和

30、輸出管腳相兼容。</p><p> ?。?)主要性能參數(shù):</p><p>  ·與MCS-51產(chǎn)品指令系統(tǒng)完全兼容 ·4k字節(jié)可重擦寫Flash閃速存儲(chǔ)器</p><p>  圖 80C51管腳圖</p><p>  ·全靜態(tài)操作:0Hz-24MHz ·三級(jí)加密程序存儲(chǔ)器 </

31、p><p>  ·128×8字節(jié)內(nèi)部RAM ·32個(gè)可編程I/O口線</p><p>  ·2個(gè)16位定時(shí)/計(jì)數(shù)器 ·6個(gè)中斷源</p><p>  ·可編程串行UART通道 ·低功耗空閑和掉電模式</p><p><b

32、> ?。?)管腳說明:</b></p><p>  Vcc:供電電壓。  Vss:接地。</p><p>  P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)

33、行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”

34、時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容</p><p>  P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門

35、電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口,如下所示:端口管腳 備選功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(記時(shí)器0外部輸入)P3.5 T1(記時(shí)器1外部輸入)

36、P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)

37、外部輸出的脈沖或用于定時(shí)目的。然而要注意的是</p><p>  XTAL2:來自反向振蕩器的輸出。</p><p><b>  (3)振蕩器特性:</b></p><p>  XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。有余輸入至

38、內(nèi)部時(shí)鐘信號(hào)要通過一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。</p><p><b>  (4)芯片擦除:</b></p><p>  整個(gè)PEROM陣列和三個(gè)鎖定位的電擦除可通過正確的控制信號(hào)組合,并保持ALE管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作

39、必須被執(zhí)行。</p><p><b>  2.3.2復(fù)位電路</b></p><p>  復(fù)位電路的用途:?jiǎn)纹瑱C(jī)復(fù)位電路就好比電腦的重啟部分,當(dāng)電腦在使用中出現(xiàn)死機(jī),按下重啟按鈕電腦內(nèi)部的程序從頭開始執(zhí)行。單片機(jī)也一樣,當(dāng)單片機(jī)系統(tǒng)在運(yùn)行中,受到環(huán)境干擾出現(xiàn)程序跑飛的時(shí)候,按下復(fù)位按鈕內(nèi)部的程序自動(dòng)從頭開始執(zhí)行。</p><p>  復(fù)位電路的

40、工作原理:51單片機(jī)要復(fù)位只需要在第9引腳接個(gè)高電平持續(xù)2us就可以實(shí)現(xiàn)在單片機(jī)系統(tǒng)中,系統(tǒng)上電啟動(dòng)的時(shí)候復(fù)位一次,當(dāng)按鍵按下的時(shí)候系統(tǒng)再次復(fù)位,如果釋放后再按下,系統(tǒng)還會(huì)復(fù)位。所以可以通過按鍵的斷開和閉合在運(yùn)行的系統(tǒng)中控制其復(fù)位。</p><p><b>  2.3.3晶振電路</b></p><p>  晶體振蕩器,簡(jiǎn)稱晶振。在電氣上它可以等效成一個(gè)電容和一個(gè)電阻

41、并聯(lián)再串聯(lián)一個(gè)電容的二端網(wǎng)絡(luò),電工學(xué)上這個(gè)網(wǎng)絡(luò)有兩個(gè)諧振點(diǎn),以頻率的高低分其中較低的頻率是串聯(lián)諧振,較高的頻率是并聯(lián)諧振。由于晶體自身的特性致使這兩個(gè)頻率的距離相當(dāng)?shù)慕咏?,在這個(gè)極窄的頻率范圍內(nèi),晶振等效為一個(gè)電感,所以只要晶振的兩端并聯(lián)上合適的電容它就會(huì)組成并聯(lián)諧振電路。這個(gè)并聯(lián)諧振電路加到一個(gè)負(fù)反饋電路中就可以構(gòu)成正弦波振蕩電路,由于晶振等效為電感的頻率范圍很窄,所以即使其他元件的參數(shù)變化很大,這個(gè)振蕩器的頻率也不會(huì)有很大的變化。晶

42、振有一個(gè)重要的參數(shù),那就是負(fù)載電容值,選擇與負(fù)載電容值相等的并聯(lián)電容,就可以得到晶振標(biāo)稱的諧振頻率。一般的晶振的負(fù)載電容為15p或12.5p。</p><p>  晶體振蕩器也分為無源晶振和有源晶振兩種類型。無源晶振與有源晶振(諧振)的英文名稱不同,無源晶振為crystal(晶體),而有源晶振則叫做oscillator(振蕩器)。無源晶振需要借助于時(shí)鐘電路才能產(chǎn)生振蕩信號(hào),自身無法振蕩起來,所以“無源晶振”這個(gè)說

43、法并不準(zhǔn)確;有源晶振是一個(gè)完整的諧振振蕩器。諧振振蕩器包括石英(或其晶體材料)晶體諧振器,陶瓷諧振器,LC諧振器等。</p><p><b>  2.4溫度傳感器</b></p><p>  在本次的設(shè)計(jì)中使用的是的DS18B20數(shù)字式溫度傳感器。DS18B20型單線智能溫度傳感器,屬于新一代適配微處理器的智能溫度傳感器。全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集

44、成電路內(nèi)。與傳統(tǒng)的熱敏電阻相比,它能夠直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過簡(jiǎn)單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式。其可以分別93.75ms和750ms內(nèi)完成9位和12位的數(shù)字量,最大分辨率為0.0625℃ , 而且從DS18B20讀出或?qū)懭隓S18B20的信息僅需要一根口線(單線接口)讀寫。</p><p>  2.4.1溫度傳感器特性</p><p>  單線數(shù)字化智能集成溫度的傳

45、感器,其特點(diǎn)是:</p><p>  DSI8B20可將被測(cè)溫度直接轉(zhuǎn)換成計(jì)算機(jī)能識(shí)別的數(shù)字信號(hào)輸出,溫度值不需要經(jīng)電橋電路先獲取電壓模擬量,再經(jīng)信號(hào)放大和A/D轉(zhuǎn)換成數(shù)字信號(hào),解決了傳統(tǒng)溫度傳感器存在的因參數(shù)不一致性,在更換傳感器時(shí)會(huì)因放大器零漂而必須對(duì)電路進(jìn)行重新調(diào)試的問題,使用方便.</p><p>  DS18B20能提供9到12位溫度讀數(shù),精度高,且其信息傳輸只需1根信號(hào)線,與計(jì)

46、算機(jī)接口十分簡(jiǎn)便,讀寫及溫度變換的功率來自于數(shù)據(jù)線而不需額外的電源.</p><p>  每一個(gè)DS18B20都有一個(gè)惟一的序列號(hào),這就允許多個(gè)DS18B20連接到同一總線上.尤其適合于多點(diǎn)溫度檢測(cè)系統(tǒng).</p><p> ?、?負(fù)壓特性:當(dāng)電源極性接反時(shí),DS18B20雖然不能正常工作,但不會(huì)因發(fā)熱而燒毀 正是由于具有以上特點(diǎn),DS18B20在解決各種誤差、可靠性和實(shí)現(xiàn)系統(tǒng)優(yōu)化等方面與傳

47、統(tǒng)各種溫度傳感器相比,有無可比擬的優(yōu)越性,因而廣泛應(yīng)用于過程控制、環(huán)境控制、建筑物、機(jī)器設(shè)備中的溫度檢測(cè)。</p><p>  2.4.2 DS18B20的連接方法</p><p>  DS18B20測(cè)溫系統(tǒng)具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少等優(yōu)點(diǎn)。DSl8B20與單片機(jī)的硬件連接有兩種方法:一是Vcc接外部電源,GND接地,I/0與單片機(jī)的I/0線相連;二是用寄生電源供電

48、,此時(shí),~UDD和GND接地,I/0接單片機(jī)I/0。無論是哪種供電方式,I/0口線都要接4.7K上拉電阻。</p><p>  獨(dú)特的寄生電源方式有三個(gè)好處:</p><p>  (1)進(jìn)行遠(yuǎn)距離測(cè)溫時(shí),無需本地電源</p><p>  (2)可以在沒有常規(guī)電源的條件下讀取ROM</p><p> ?。?)電路更加簡(jiǎn)潔,僅用一根I/O口實(shí)現(xiàn)測(cè)

49、溫</p><p>  要想使DS18B20進(jìn)行精確的溫度轉(zhuǎn)換,I/O線必須保證在溫度轉(zhuǎn)換期間提供足夠的能量,由于每個(gè)DS18B20在溫度轉(zhuǎn)換期間工作電流達(dá)到1mA,當(dāng)幾個(gè)溫度傳感器掛在同一根I/O線上進(jìn)行多點(diǎn)測(cè)溫時(shí),只靠4.7K上拉電阻就無法提供足夠的 能量,會(huì)造成無法轉(zhuǎn)換溫度或溫度誤差極大。</p><p>  因此,圖1電路只適應(yīng)于單一溫度傳感器測(cè)溫情況下使用,不適宜采用電池供電系統(tǒng)

50、中。并且工作電源VCC必須保證在5V,當(dāng)電源電壓下降時(shí),寄生電源能夠汲取的能量也降低,會(huì)使溫度誤差變大。</p><p><b>  圖1</b></p><p>  DS18B20寄生電源強(qiáng)上拉供電方式電路圖 改進(jìn)的寄生電源供電方式如下面圖2所示,為了使DS18B20在動(dòng)態(tài)轉(zhuǎn)換周期中獲得足夠的電流供應(yīng),當(dāng)進(jìn)行溫度轉(zhuǎn)換或拷貝到 E2存儲(chǔ)器操作時(shí),用MOSFET把I/O

51、線直接拉到VCC就可提供足夠的電流,在發(fā)出任何涉及到拷貝到E2存儲(chǔ)器或啟動(dòng)溫度轉(zhuǎn)換的指令后,必須在最 多10μS內(nèi)把I/O線轉(zhuǎn)換到強(qiáng)上拉狀態(tài)。在強(qiáng)上拉方式下可以解決電流供應(yīng)不走的問題,因此也適合于多點(diǎn)測(cè)溫應(yīng)用,缺點(diǎn)就是要多占用一根I/O口線進(jìn)行強(qiáng)上拉切換。</p><p><b>  圖2</b></p><p>  注意:在圖1和圖2寄生電源供電方式中,DS18B2

52、0的VDD引腳必須接地</p><p>  DS18B20的外部電源供電方式 在外部電源供電方式下,DS18B20工作電源由VDD引腳接入,此時(shí)I/O線不需要強(qiáng)上拉,不存在電源電流不足的問題,可以保證 轉(zhuǎn)換精度,同時(shí)在總線上理論可以掛接任意多個(gè)DS18B20傳感器,組成多點(diǎn)測(cè)溫系統(tǒng)。注意:在外部供電的方式下,DS18B20的GND引腳不能懸空 ,否則不能轉(zhuǎn)換溫度,讀取的溫度總是85℃。</p>&l

53、t;p>  外部供電方式單點(diǎn)測(cè)溫電路</p><p><b>  圖3</b></p><p>  外部供電方式的多點(diǎn)測(cè)溫電路圖</p><p><b>  圖4</b></p><p>  外部電源供電方式是DS18B20最佳的工作方式,工作穩(wěn)定可靠,抗干擾能力強(qiáng),而且電路也比 較簡(jiǎn)單,可以

54、開發(fā)出穩(wěn)定可靠的多點(diǎn)溫度 監(jiān)控系統(tǒng)。站長(zhǎng)推薦大家在開發(fā)中使用外部電源供電方式,畢竟比寄生電源方式只多接一根VCC引線。在外接電源方式下, 可以充分發(fā)揮DS18B20寬電源電壓范圍的優(yōu)點(diǎn),即使電源電壓VCC降到3V時(shí),依然能夠保證溫度量精度。</p><p>  2.4.3 DS18B20使用中注意事項(xiàng)</p><p>  DS18B20雖然具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少

55、等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中 也應(yīng)注意以下幾方面的問題:</p><p>  1、較小的硬件開銷需要相對(duì)復(fù)雜的軟件進(jìn)行補(bǔ)償,由于DS18B20與微處理器間采用串行數(shù)據(jù)傳送,因此 ,在對(duì)DS18B20進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測(cè)溫結(jié)果。在使用PL/M、C等高級(jí)語言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對(duì) DS18B20操作部分最好采用匯編語言實(shí)現(xiàn)。</p><p>  2、連接DS18B

56、20的總線電纜是有長(zhǎng)度限制的。試驗(yàn)中,當(dāng)采用普通信號(hào)電纜傳輸長(zhǎng)度超過50m時(shí),讀取的 測(cè)溫?cái)?shù)據(jù)將發(fā)生錯(cuò)誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時(shí),正常通訊距離可達(dá)150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時(shí),正常通訊距離進(jìn)一步加長(zhǎng)。這種情況主要是由總線分布電容使信號(hào)波形產(chǎn)生畸變?cè)斐傻?。因此,在用DS18B20進(jìn)行長(zhǎng)距離測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要充分考 慮總線分布電容和阻抗匹配問題。</p><p>  3、在DS18B

57、20測(cè)溫程序設(shè)計(jì)中,向DS18B20發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待DS18B20的返回信號(hào),一旦某個(gè)DS18B20接觸不好或斷線,當(dāng)程序讀該DS18B20時(shí),將沒有返回信號(hào),程序進(jìn)入死循環(huán)。這一點(diǎn)在進(jìn)行DS18B20硬件連接和軟件設(shè)計(jì)時(shí)也要給予一定的重視。測(cè)溫電纜線建議采用屏蔽4芯雙絞線,其中一對(duì)線接地線與信號(hào)線,另一組接VCC和地線,屏蔽層在源端單點(diǎn)接地。</p><p><b>  2.5數(shù)碼顯示

58、管</b></p><p>  數(shù)碼管由7個(gè)發(fā)光二極管組成,行成一個(gè)日字形,它門可以共陰極,也可以共陽極.通過解碼電路得到的數(shù)碼接通相應(yīng)的發(fā)光二極而形成相應(yīng)的字。</p><p>  說到七段數(shù)碼管,它在家電及工業(yè)控制中有著很廣泛的應(yīng)用,例如用來顯示溫度、數(shù)量、重量、日期、時(shí)間等等,具有顯示醒目、直觀的優(yōu)點(diǎn),七段數(shù)碼管是由7個(gè)獨(dú)立的二極管采用共陰或共陽的方法連接而成。通常將這7

59、個(gè)獨(dú)立的二極管做成a、b、c、d、e、f、g這7個(gè)筆劃,如1圖所示:</p><p><b>  圖1 數(shù)碼管</b></p><p>  該設(shè)計(jì)的顯示電路是采用7段LED數(shù)碼管顯示溫度。主要的工作原理:7段數(shù)碼管又分共陰和共陽兩種顯示方式。如果把7段數(shù)碼管的每一段都等效成發(fā)光二極管的正負(fù)兩個(gè)極,那共陰就是把a(bǔ)bcdefg這7個(gè)發(fā)光二極管的負(fù)極連接在一起并接地;共陽是

60、把所有的二極管的正極連接在一起。如果7段數(shù)碼管是共陽顯示電路,那就需要選用驅(qū)動(dòng)電路。共陽就是把a(bǔ)bcdefg的7個(gè)發(fā)光二極管的正極連接在一起并接到5V電源上,其余的7個(gè)負(fù)極接到單片機(jī)相應(yīng)的IO口。無論共陰共陽7段顯示電路,都需要加限流電阻,否則通電后就把7段譯碼管燒壞了!限流電阻的選取是:5V電源電壓減去發(fā)光二極管的工作電壓除上10ma到15ma得數(shù)即為限流電阻的值。發(fā)光二極管的工作電壓一般在1.8V--2.2V,為計(jì)算方便,通常選2V

61、即可!發(fā)光二極管的工作電流選取在10-20ma,電流選小了,7段數(shù)碼管不太亮,選大了工作時(shí)間長(zhǎng)了發(fā)光管易燒壞!對(duì)于大功率7段數(shù)碼管可</p><p>  根據(jù)實(shí)際情況來選取限流電阻及電阻的瓦數(shù)!如圖2所示:</p><p>  圖2 LED顯示電路</p><p><b>  第3章 軟件設(shè)計(jì)</b></p><p>&

62、lt;b>  3.1 軟件</b></p><p>  主要編寫單片機(jī)初始化程序,DS18B20初始化程序,DS18B20ROM操作命令、存儲(chǔ)器操作命令,DS18B20序列號(hào)的獲取,單片機(jī)的溫度讀取和轉(zhuǎn)換。</p><p>  該設(shè)計(jì)中主要利用了DS18B20芯片進(jìn)行測(cè)溫,該芯片是單總線器件,顧名思義單總線只有一根數(shù)據(jù)線,因此在通信時(shí)時(shí)序就顯得十分重要,我們?cè)诰幊虝r(shí)也要十

63、分注意這一點(diǎn)。在程序中測(cè)溫時(shí)首先要對(duì)DS18B20進(jìn)行初始化,初始化過程由單片機(jī)發(fā)出的復(fù)位脈沖和芯片響應(yīng)的應(yīng)答脈沖組成,應(yīng)答脈沖使主機(jī)知道,總線上有從機(jī)設(shè)備,且準(zhǔn)備就緒。由于總線上只掛接了一片測(cè)溫芯片,因此可直接跳過ROM匹配發(fā)出測(cè)溫命令。該設(shè)計(jì)可實(shí)時(shí)顯示溫度值,便于連續(xù)觀測(cè)。系統(tǒng)源程序見附錄。</p><p><b>  3.2 流程設(shè)計(jì)</b></p><p>&

64、lt;b> ?。?)主流程圖設(shè)計(jì)</b></p><p>  (2)顯示子程序流程圖</p><p><b>  第4章 軟硬件調(diào)試</b></p><p>  整個(gè)系統(tǒng)完成后最主要的部分就是對(duì)其做全面的測(cè)試,查看硬件電路是否連接無誤有無虛接短路,用萬能表對(duì)各路器件進(jìn)行仔細(xì)的測(cè)試以確保線路連接完好。軟件部分則通過將程序燒寫到單

65、片機(jī)上然后進(jìn)行調(diào)試</p><p><b>  第5章 結(jié)論</b></p><p>  本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,其輸出溫度采用數(shù)字顯示,主要用于對(duì)測(cè)溫比較準(zhǔn)確的場(chǎng)所,或科研實(shí)驗(yàn)室使用。它具有結(jié)構(gòu)簡(jiǎn)單,不需外接元件,采用一根I/ O 數(shù)據(jù)線既可供電又可傳輸數(shù)據(jù),可廣泛用于食品庫、冷庫、糧庫等需要控制溫度的地方。目

66、前,該產(chǎn)品已在溫控系統(tǒng)中得到廣泛的應(yīng)用。</p><p>  在本次設(shè)計(jì)中使用的是數(shù)字溫度傳感器DS18B20。通過調(diào)試成型系統(tǒng)發(fā)現(xiàn)了DS18B20除了上述優(yōu)點(diǎn)外,還有一些缺點(diǎn),如:簡(jiǎn)單的硬件連接的代價(jià)是復(fù)雜的軟件時(shí)序,DS18B20在測(cè)量溫度的時(shí)候,靈敏度不夠高,溫度快速變化時(shí)無法迅速顯示出其變化。通過一系列的實(shí)驗(yàn)發(fā)現(xiàn):由DS18B20構(gòu)建的測(cè)溫小系統(tǒng)適用于環(huán)境溫度監(jiān)控,對(duì)溫度小變化較敏感;不適合應(yīng)用于要求實(shí)時(shí)

67、性強(qiáng)、溫度跨度大的測(cè)溫方式。</p><p>  在顯示電路中采用的數(shù)碼管的顯示方式,雖然操作簡(jiǎn)單但是在代碼書寫時(shí)要注意在字型碼這塊要區(qū)分好是共陽極還是共陰極的數(shù)碼管。在按鍵的處理時(shí)使用的是軟件消抖,要注意延長(zhǎng)時(shí)間的把握。這次畢業(yè)設(shè)計(jì)中我們學(xué)到了很多東西,由一開始的茫然到不停的查資料,再到程序的編寫,這其中用到了許多所學(xué)的東西,設(shè)計(jì)中我們學(xué)到了許多也明白了許多,也體會(huì)到了自己的許多不足之處,在一開始設(shè)計(jì)電路圖的時(shí)

68、候我們?cè)嚵撕枚喾N方法,經(jīng)過多次的查閱資料我才選擇了現(xiàn)在用的版本,程序編寫時(shí)我們也是改了許多遍才運(yùn)行成功,不過經(jīng)過我們的努力我們的設(shè)計(jì)終于完成了。從這次設(shè)計(jì)中,我真正的意識(shí)到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識(shí)用到實(shí)際當(dāng)中,學(xué)習(xí)單機(jī)片機(jī)更是如此,程序只有在經(jīng)常的寫與讀的過程中才能提高,這就是我在這次課程設(shè)計(jì)中的最大收獲。</p><p><b>  參考文獻(xiàn)</b></

69、p><p>  [1] 錢曉接.16/32位微機(jī)原理、匯編語言及接口技術(shù)教程.機(jī)械工程出版社,2011</p><p>  [2] 李建中.單片機(jī)原理及應(yīng)用(第二版).西安電子科技大學(xué)出版社,2008.4</p><p>  [3]康華光.數(shù)字電子技術(shù).第五版.北京:高等教育出版社,2002</p><p>  致謝 <

70、;/p><p>  這次設(shè)計(jì)使我掌握了很多實(shí)踐知識(shí),在老師和同學(xué)的幫助下對(duì)單片機(jī)有了進(jìn)一步的了解。無論是在課題的選題還是定稿、研究的方法、技術(shù)路線以及本文的撰寫都得到了葛老師的嚴(yán)格要求和精心指導(dǎo),在這次設(shè)計(jì)賴?yán)蠋焽?yán)謹(jǐn)?shù)膶W(xué)術(shù)作風(fēng)、治學(xué)態(tài)度、求實(shí)的工作作風(fēng)和孜孜不倦的探索創(chuàng)新精神,以及平易近人的師長(zhǎng)風(fēng)范給我創(chuàng)造了良好的學(xué)習(xí)設(shè)計(jì)環(huán)境,及給了我這個(gè)學(xué)習(xí)提高的機(jī)會(huì)和在生活上給我的無微不至的關(guān)懷。這些都是我不斷前進(jìn)的動(dòng)力,必將對(duì)

71、我今后的學(xué)習(xí)和生活受益匪淺,我將終生學(xué)習(xí)和銘記。在此,謹(jǐn)向趙老師的培育之恩表示最深的謝意!</p><p>  感謝其他多位老師對(duì)我學(xué)習(xí)和設(shè)計(jì)所給予的支持和幫助。感謝在我論文完成過程中同學(xué)們給我提供的支持、幫助和建議。在這里也衷心地感謝他們!</p><p>  只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,進(jìn)而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。整

72、個(gè)設(shè)計(jì)過程可以說不是很順利,因?yàn)橛泻芏嘀R(shí)已經(jīng)淡忘,還有很多新的東西沒有掌握,所以這次設(shè)計(jì)在不斷的復(fù)習(xí)、學(xué)習(xí)中度過,使我受益匪淺,也使我對(duì)單片機(jī)的運(yùn)用有了進(jìn)一步的了解和掌握,也為今后的學(xué)習(xí)生活和工作打下良好的基礎(chǔ)。在此,我衷心的感謝幫助我的老師和同學(xué)!</p><p><b>  附錄</b></p><p>  附錄一 溫度采集系統(tǒng)匯編語言程序</p>

73、<p><b>  ORG 1030H</b></p><p>  DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H</p><p>  DB 40H,79H,24H,30H,19H,12H,02H,78H,00H,10H</p><p>  DB 0BFH,0FFH</p>

74、;<p>  ;|----------------------------------------------------------------------------------------------| </p><p>  ;| 獲取單個(gè)ds1820 轉(zhuǎn)化的溫度值的應(yīng)用程序,P1.6 接ds1820 | </p><p>  ;|-------

75、---------------------------------------------------------------------------------------| </p><p>  ORG 0000H </p><p>  MOV A,#0FFH</p><p>  MOV P3,A ;數(shù)碼管位選無效</p><p

76、>  AJMP MAIN </p><p>  ORG 0020H </p><p><b>  MAIN: </b></p><p>  MOV SP,#60H</p><p>  CHAXUN:LCALL XLHDQ ;序列號(hào)讀號(hào)</p><p>  LCALL GET_TEM

77、P ;完成一次溫度讀取,存單片機(jī)中</p><p>  MOV A,#0FFH</p><p><b>  MOV P3,A</b></p><p>  MOV A,#80H ;判斷高位的符號(hào)</p><p><b>  ANL A,R6</b></p><p> 

78、 JZ POS ;正負(fù)號(hào)分開跳轉(zhuǎn)</p><p><b>  MOV A,R7</b></p><p><b>  CPL A </b></p><p>  INC A ;補(bǔ)碼轉(zhuǎn)換為原碼</p><p>  CLR C ;最低位移至C中,

79、并完成除2操作</p><p><b>  RRC A </b></p><p>  MOV B,#0AH</p><p>  DIV AB ; 將整數(shù)位個(gè)位和十位分開,分別存在B和A中</p><p>  MOV 50H,A ;保護(hù)A中內(nèi)容</p><p>

80、;  MOV A,#0FFH</p><p><b>  MOV P3,A</b></p><p>  MOV DPTR,#1044H </p><p><b>  SJMP LL1</b></p><p>  POS:CLR C </p><p><b> 

81、 RRC A </b></p><p>  MOV B,#0AH</p><p><b>  DIV AB</b></p><p>  MOV 50H,A ;保護(hù)A中內(nèi)容</p><p>  MOV A,#0FFH</p><p><b>  MOV P3,

82、A</b></p><p>  MOV DPTR,#1045H </p><p><b>  LL1:CLR A</b></p><p>  MOVC A,@A+DPTR ;讀取程序存儲(chǔ)器常數(shù)表,完成七段數(shù)碼管的譯碼操作</p><p><b>  MOV P2,A</b><

83、/p><p>  MOV A,#0FEH ;位選有效,對(duì)應(yīng)位被點(diǎn)亮</p><p><b>  MOV P3,A</b></p><p>  LCALL DELAY ;延時(shí)</p><p>  MOV A,#0FFH</p><p><b>  MOV P3,A</

84、b></p><p>  MOV A,50H </p><p>  MOV DPTR,#1030H</p><p>  MOVC A,@A+DPTR</p><p><b>  MOV P2,A</b></p><p>  MOV A,#0FDH</p><p>

85、;<b>  MOV P3,A</b></p><p>  LCALL DELAY</p><p>  MOV A,#0FFH</p><p><b>  MOV P3,A</b></p><p><b>  MOV A,B</b></p><p>  

86、MOV DPTR,#103AH</p><p>  MOVC A,@A+DPTR</p><p>  MOV A,#0FBH</p><p><b>  MOV P3,A</b></p><p>  LCALL DELAY</p><p>  MOV A,#0FFH</p><

87、p><b>  MOV P3,A</b></p><p><b>  JC LL2</b></p><p>  MOV DPTR,#1030H</p><p><b>  LL3:CLR A</b></p><p>  MOVC A,@A+DPTR </p>

88、;<p><b>  MOV P2,A</b></p><p>  MOV A,#0F7H</p><p><b>  MOV P3,A</b></p><p>  LJMP CHAXUN ;再循環(huán)讀取溫度并顯示</p><p>  LL2:MOV DPTR,#1035H</p

89、><p><b>  SJMP LL3</b></p><p><b>  SJMP $</b></p><p>  XLHDQ: </p><p>  CLR EA ;使用ds1820 一定要禁止任何中斷產(chǎn)生 </p><p>  L

90、CALL INT ; 初始化ds1820 </p><p>  MOV A, #33H</p><p>  LCALL WRITE ;送入讀ds1820 的ROM命令 </p><p>  LCALL READ ; 開始讀出當(dāng)前ds1820 序列號(hào) </p><p>  MOV 40H,A </p&

91、gt;<p>  LCALL READ </p><p>  MOV 41H,A </p><p>  LCALL READ </p><p>  MOV 42H,A </p><p>  LCALL READ </p><p>  MOV 43H,A </p><p>  LCA

92、LL READ </p><p>  MOV 44H,A </p><p>  LCALL READ </p><p>  MOV 45H,A </p><p>  LCALL READ </p><p>  MOV 46H,A </p><p>  LCALL READ </p>

93、<p>  MOV 47H,A </p><p><b>  SETB EA</b></p><p><b>  RET</b></p><p>  GET_TEMP: </p><p>  CLR PSW.4 </p><p>  SETB PSW.3

94、 ; 設(shè)置工作寄存器當(dāng)前所在的區(qū)域 </p><p>  CLR EA ; 使用ds1820 一定要禁止任何中斷產(chǎn)生 </p><p>  LCALL INT ; 調(diào)用初使化子程序 </p><p>  MOV A,#0CCH </p><p>  LCALL WRITE ;送入跳過ROM命令

95、 </p><p>  MOV A, #44H </p><p>  LCALL WRITE ;送入溫度轉(zhuǎn)換命令 </p><p>  LCALL INT ; 溫度轉(zhuǎn)換完全, 再次初使化ds1820 </p><p>  MOV A,#0CCH </p><p>  LCALL WRITE

96、 ;送入跳過ROM命令 </p><p>  MOV A,#0BEH </p><p>  LCALL WRITE ;送入讀溫度暫存器命令 </p><p>  LCALL READ </p><p>  MOV R7,A ;讀出溫度值低字節(jié)存入R7 </p><p>  LC

97、ALL READ </p><p>  MOV R6,A ;讀出謾度值高字節(jié)存入R6 </p><p><b>  SETB EA </b></p><p><b>  RET </b></p><p>  INT: ;初始化ds1820 子程序

98、</p><p><b>  CLR EA </b></p><p>  L0:CLR P1.6 ;ds1820總線為低復(fù)位電平 </p><p>  MOV R2,#200 </p><p>  L1:CLR P1.6 </p><p>  DJNZ R2,L1

99、 ; 總線復(fù)位電平保持400us </p><p>  SETB P1.6 ;釋放ds1820 總線 </p><p>  MOV R2,#30 </p><p>  L4:DJNZ R2,L4 ;釋放ds1820 總線保持60us </p><p>  CLR C ; 清存在信號(hào) </p>

100、;<p>  ORL C,P1.6 </p><p>  JC L0 ;存在嗎? 不存在則重新來 </p><p>  MOV R6,#80 </p><p>  L5:ORL C,P1.6 </p><p><b>  JC L3 </b></p><p>  

101、DJNZ R6,L5 </p><p><b>  SJMP L0 </b></p><p>  L3:MOV R2,#240 </p><p>  L2:DJNZ R2,L2 </p><p><b>  RET </b></p><p>  WRITE:

102、 ;向ds1820 寫操作命令子程序 </p><p><b>  CLR EA </b></p><p>  MOV R3,#8 ; 寫入ds1820 的bit數(shù), 一個(gè)字節(jié)8 個(gè)bit </p><p>  WR1:SETB P1.6 </p><p>  MOV R4,#8 &

103、lt;/p><p>  RRC A ; 把一個(gè)字節(jié)data(A)分成8 個(gè)bit環(huán)移給 C </p><p>  CLR P1.6 ;開始寫入ds1820 總線要處于復(fù)位(低)狀態(tài) </p><p>  WR2:DJNZ R4,WR2 ;ds1820 總線復(fù)位保持16us </p><p>  MOV P

104、1.6,C ; 寫入一個(gè)bit </p><p>  MOV R4,#20 </p><p>  WR3:DJNZ R4,WR3 ;等待40us </p><p>  DJNZ R3,WR1 ;寫入下一個(gè)bit </p><p>  SETB P1.6 ;重新釋放ds1820 總線 </p>

105、<p><b>  RET </b></p><p><b>  READ: </b></p><p><b>  CLR EA </b></p><p>  MOV R6,#8 ; 連續(xù)讀8 個(gè)bit </p><p>  RE1:CLR P1.6

106、 ;讀前總線保持為低 </p><p>  MOV R4,#4 </p><p><b>  NOP </b></p><p>  SETB P1.6 ;開始讀總線釋放 </p><p>  RE2:DJNZ R4,RE2 ; 持續(xù)8us </p><p>  MOV

107、 C,P1.6 ; 從ds1820 總線讀得一個(gè)bit </p><p>  RRC A ; 把讀得的位值環(huán)移給 A </p><p>  MOV R5,#30 </p><p>  RE3:DJNZ R5,RE3 ; 持續(xù)60us </p><p>  DJNZ R6,RE1 ; 讀下一個(gè)bit

108、 </p><p>  SETB P1.6 ;重新釋放ds1820 總線 </p><p><b>  RET </b></p><p>  DELAY: ;延時(shí)約1ms</p><p>  MOV R2,#0AH</p><p>  DL2:MOV

109、 R3,#18H</p><p><b>  DL1:NOP</b></p><p><b>  NOP</b></p><p>  DJNZ R3,DL1</p><p>  DJNZ R2,DL2</p><p><b>  RET</b></

110、p><p><b>  END</b></p><p>  附錄二 溫度采集系統(tǒng)硬件電路及仿真結(jié)果</p><p><b>  硬件電路連接</b></p><p><b>  PCB板截圖</b></p><p><b>  仿真截圖</b

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論