基于單片機(jī)的多路溫度采集系統(tǒng)畢業(yè)設(shè)計(jì)_第1頁
基于單片機(jī)的多路溫度采集系統(tǒng)畢業(yè)設(shè)計(jì)_第2頁
基于單片機(jī)的多路溫度采集系統(tǒng)畢業(yè)設(shè)計(jì)_第3頁
基于單片機(jī)的多路溫度采集系統(tǒng)畢業(yè)設(shè)計(jì)_第4頁
基于單片機(jī)的多路溫度采集系統(tǒng)畢業(yè)設(shè)計(jì)_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 PAGE45 / NUMPAGES52 學(xué)生畢業(yè)設(shè)計(jì)(論文)題 目基于單片機(jī)的多路溫度采集系統(tǒng)設(shè)計(jì)作 者院 (系)能源工程學(xué)院專 業(yè)測(cè)控技術(shù)與儀器指導(dǎo)教師答辯日期榆 林 學(xué) 院畢業(yè)設(shè)計(jì)(論文)誠信責(zé)任書本人重聲明:所呈交的畢業(yè)設(shè)計(jì)(論文),是本人在導(dǎo)師的指導(dǎo)下獨(dú)立進(jìn)行研究所取得的成果。畢業(yè)設(shè)計(jì)(論文)中凡引用他人已經(jīng)發(fā)表或未發(fā)表的成果、數(shù)據(jù)、觀點(diǎn)等,均已明確注明出處。盡我所知,除文中已經(jīng)注明引用的容外,本論文不包含任何其他個(gè)人或集體已經(jīng)公開發(fā)表或撰寫過的研究成果。對(duì)本文的研究做出重要貢獻(xiàn)的個(gè)人和集體,均已在文中以明確方式標(biāo)明。本人畢業(yè)設(shè)計(jì)(論文)與資料若有不實(shí),愿意承擔(dān)一切相關(guān)的法律責(zé)任。論

2、文作者簽名:年 月 日摘 要 單片機(jī)是一種集CPU、RAM、ROM、I/O接口和中斷系統(tǒng)等部分于一體的器件,只需要外加電源和晶振就可實(shí)現(xiàn)對(duì)數(shù)字信息的處理和控制。單片機(jī)由于其微小的體積和極低的成本,而廣泛的應(yīng)用于家用電器、工業(yè)控制等領(lǐng)域中。多路溫度采集系統(tǒng)是利用溫度傳感器DS18B20檢測(cè)溫度,并由單片機(jī)處理顯示。 本設(shè)計(jì)利用AT89S52單片機(jī)為處理器,結(jié)合溫度采集電路、鍵盤電路、顯示電路、報(bào)警電路等實(shí)現(xiàn)對(duì)多路溫度的實(shí)時(shí)檢測(cè)與顯示。通過設(shè)計(jì)實(shí)物并調(diào)試,對(duì)系統(tǒng)存在的問題進(jìn)行了分析和總結(jié),并提出了改進(jìn)措施。實(shí)驗(yàn)證明:該信號(hào)采集系統(tǒng)性能穩(wěn)定,采集精度高,具有極高的性價(jià)比。關(guān)鍵詞:單片機(jī);DS18B2

3、0;溫度采集Design of Multi-channel Temperature Acquisition System Based on AT89S52 MCU ABSTRACTSingle-chip is a device which consists of a set of CPU, RAM, ROM, I/O interface, interrupt system and other parts. You only need external power supply and clock then the digital information processing and contr

4、ol can be achieved on.Because of the small scale, low price and high efficiency of MCU, it is widely used in home appliances and industrial control. Multi-channel temperature acquisition systemis used temperature thermometer DS18B20 to detect the temperature, process and display by the single-chip.T

5、his design uses AT89S52 as microprocessor to realize design goal this design including temperature gathering circuit, keyboard circuit,display circuit,alarm circuit etc. to achieve the temperature detection and the display.To introduce the problems during the debugging are analyzed and summarized, s

6、ome measure about the system improvement are proposed.The result of experiments indicated that signal sampling system has good performance, high precision, and has a very high pertormance-to-price ration.Key words: MCU;DS18B20;temperature acquisition目 錄 TOC o 1-3 h z u HYPERLINK l _Toc327355355摘要 PA

7、GEREF _Toc327355355 h IHYPERLINK l _Toc327355356ABSTRACT PAGEREF _Toc327355356 h IIHYPERLINK l _Toc3273553571 緒論 PAGEREF _Toc327355357 h 1HYPERLINK l _Toc3273553581.1選題背景 PAGEREF _Toc327355358 h 1HYPERLINK l _Toc3273553591.2本設(shè)計(jì)國外狀況 PAGEREF _Toc327355359 h 1HYPERLINK l _Toc3273553601.3本設(shè)計(jì)的任務(wù)和主要容 PAGE

8、REF _Toc327355360 h 2HYPERLINK l _Toc3273553612 系統(tǒng)總體設(shè)計(jì) PAGEREF _Toc327355361 h 3HYPERLINK l _Toc3273553622.1系統(tǒng)概述 PAGEREF _Toc327355362 h 3HYPERLINK l _Toc3273553632.2系統(tǒng)工作原理分析 PAGEREF _Toc327355363 h 3HYPERLINK l _Toc3273553643 系統(tǒng)的硬件設(shè)計(jì) PAGEREF _Toc327355364 h 4HYPERLINK l _Toc3273553653.1 溫度采集系統(tǒng)的開發(fā)過程

9、 PAGEREF _Toc327355365 h 4HYPERLINK l _Toc3273553663.2 單片機(jī)的最小系統(tǒng)設(shè)計(jì) PAGEREF _Toc327355366 h 4HYPERLINK l _Toc3273553673.2.1 單片機(jī)的選型 PAGEREF _Toc327355367 h 4HYPERLINK l _Toc3273553683.2.2 AT89S52的性能與應(yīng)用 PAGEREF _Toc327355368 h 5HYPERLINK l _Toc3273553693.2.3 時(shí)鐘電路設(shè)計(jì) PAGEREF _Toc327355369 h 7HYPERLINK l _

10、Toc3273553703.2.4 復(fù)位電路設(shè)計(jì) PAGEREF _Toc327355370 h 7HYPERLINK l _Toc3273553713.3溫度采集接口電路設(shè)計(jì) PAGEREF _Toc327355371 h 8HYPERLINK l _Toc3273553723.3.1 DS18B20簡介 PAGEREF _Toc327355372 h 8HYPERLINK l _Toc3273553743.3.2 DS18B20與單片機(jī)的接口設(shè)計(jì) PAGEREF _Toc327355374 h 12HYPERLINK l _Toc3273553753.4顯示器與鍵盤電路的設(shè)計(jì) PAGERE

11、F _Toc327355375 h 13HYPERLINK l _Toc3273553763.4.1 顯示電路設(shè)計(jì) PAGEREF _Toc327355376 h 13HYPERLINK l _Toc3273553773.4.2 鍵盤電路設(shè)計(jì) PAGEREF _Toc327355377 h 14HYPERLINK l _Toc3273553783.5 報(bào)警電路設(shè)計(jì) PAGEREF _Toc327355378 h 15HYPERLINK l _Toc3273553794 多路溫度采集系統(tǒng)的軟件設(shè)計(jì) PAGEREF _Toc327355379 h 16HYPERLINK l _Toc3273553

12、804.1 主程序流程設(shè)計(jì) PAGEREF _Toc327355380 h 16HYPERLINK l _Toc3273553814.2 程序設(shè)計(jì)與巡檢子程序設(shè)計(jì) PAGEREF _Toc327355381 h 17HYPERLINK l _Toc3273553824.3巡檢鍵盤與數(shù)碼管多通道顯示 PAGEREF _Toc327355382 h 19HYPERLINK l _Toc3273553834.4 溫度報(bào)警程序設(shè)計(jì) PAGEREF _Toc327355383 h 22HYPERLINK l _Toc3273553845 系統(tǒng)仿真 PAGEREF _Toc327355384 h 23HY

13、PERLINK l _Toc3273553856 總結(jié) PAGEREF _Toc327355385 h 26HYPERLINK l _Toc327355386參考文獻(xiàn) PAGEREF _Toc327355386 h 27HYPERLINK l _Toc327355387致 PAGEREF _Toc327355387 h 28HYPERLINK l _Toc327355388附錄A 多路溫度檢測(cè)系統(tǒng)示意圖 PAGEREF _Toc327355388 h 29HYPERLINK l _Toc327355389附錄B DS18B20溫度測(cè)量程序 PAGEREF _Toc327355389 h 301

14、 緒論本設(shè)計(jì)主要設(shè)計(jì)一種多路溫度采集檢測(cè)系統(tǒng),采用目前低價(jià)位但技術(shù)十分成熟的AT89S52單片機(jī)作為核,選用DS18B20作為溫度傳感器,送到顯示器循環(huán)顯示所測(cè)的四路溫度數(shù)值,并根據(jù)現(xiàn)場(chǎng)工業(yè)需要,設(shè)置了一定圍的報(bào)警值,報(bào)警優(yōu)先顯示,利用按鍵消除報(bào)警??捎冒存I查看某一路的溫度值,查看時(shí)數(shù)據(jù)采集不中斷。軟件算法上采用了直接擬合的方法(通過電壓-溫度關(guān)系來計(jì)算溫度值),符合課題要求。本課題構(gòu)成的多路溫度系統(tǒng)具有結(jié)構(gòu)簡單、價(jià)格低廉、測(cè)量精度高、量程寬的特點(diǎn),在很多場(chǎng)合具有一定的適用性。1.1選題背景溫度是工業(yè)對(duì)象中主要的被控參數(shù)之一,在各個(gè)種類的企業(yè)中應(yīng)用廣泛的各種加熱設(shè)備、反應(yīng)爐設(shè)備等都需要嚴(yán)格的控

15、制溫度。隨著時(shí)代的進(jìn)步,科技的發(fā)展,各行各業(yè)對(duì)于溫度采集系統(tǒng)的要求也在不斷提高以達(dá)到設(shè)備環(huán)境、生產(chǎn)流程的安全要求,也越來越成為溫度采集系統(tǒng)的幾個(gè)重要指標(biāo)。隨著集成電路技術(shù)的越來越快、越來越大規(guī)模化的發(fā)展,由于單片機(jī)具有體積小、功能強(qiáng)、性價(jià)比高等優(yōu)點(diǎn),基于單片機(jī)開發(fā)出來的一系列采集、控制系統(tǒng)也逐漸受到廣泛關(guān)注。采取單片機(jī)作為核心,可完成對(duì)溫度的采集要求。所以基于單片機(jī)的多路溫度采集系統(tǒng)被廣泛應(yīng)用于很多工業(yè)過程控制中,使產(chǎn)品既提高了產(chǎn)品的功能和質(zhì)量,又降低了成本,簡化了設(shè)計(jì)。采用單片機(jī)設(shè)計(jì)的多路溫度采集系統(tǒng),可進(jìn)行溫度檢測(cè)、采集與顯示,對(duì)于提高生產(chǎn)效率,節(jié)約能源、資源都有非常重要的作用。1.2 本

16、設(shè)計(jì)國外狀況二十世紀(jì)七十年代單片機(jī)的出現(xiàn)是近代計(jì)算機(jī)技術(shù)發(fā)展史上的一個(gè)重要里程碑,單片機(jī)的誕生標(biāo)志著計(jì)算機(jī)正式形成了通用計(jì)算機(jī)系統(tǒng)和嵌入式計(jì)算機(jī)系統(tǒng)兩大分支。在不斷的完善通用操作系統(tǒng)的過程中,單片機(jī)在數(shù)據(jù)處理,模擬仿真,人工智能等得到了廣泛的應(yīng)用。單片機(jī)目前以8位機(jī)為主流,不斷增強(qiáng)控制能力,降低成本,減小體積,改善開發(fā)環(huán)境,以空前的速度迅速而廣泛地取代經(jīng)典電子系統(tǒng)。溫度是表征物體冷熱程度的物理量,是國際單位制中7個(gè)基本物理量之一,它與人類生活、工農(nóng)業(yè)生產(chǎn)和科學(xué)研究有著密切關(guān)系。隨著科學(xué)技術(shù)的不斷提高,溫度測(cè)量采集技術(shù)也在不斷的發(fā)展著。溫度采集是過程控制中的重要課題,各行業(yè)對(duì)高性能的溫度采集系統(tǒng)

17、的需求也在日益增加。在溫度采集方面各國均取得了許多可喜的成果,其中前聯(lián)的壓石英頻率溫度計(jì)分辨能力可達(dá)0.0001攝氏度,而且在-40230攝氏度圍溫度與頻率的線性特性;我國生產(chǎn)的石英溫度傳感器分辨率達(dá)到0.0001攝氏度,誤差在0.05攝氏度以。國的溫度控制儀發(fā)展經(jīng)歷了三個(gè)階段:第一階段為動(dòng)圈式控溫儀,顯示精度差,升溫速度和加熱時(shí)間設(shè)定都不能自動(dòng)控制;第二階段為數(shù)字式控溫儀,精度有所提高,但控制精度低,反應(yīng)不靈敏;第三階段為智能型控溫儀,帶有特有的程序,控制精度高,減少了誤差。雖然溫度的采集方法有很多種,但在很多情況下,對(duì)于一些特殊條件的溫度測(cè)量來講,想要的到精確的結(jié)果并不容易,需要熟練掌握各

18、種測(cè)量方法的原理與特點(diǎn),同時(shí)結(jié)合設(shè)計(jì)要求才能完成。與此同時(shí),還需探究新的采集方法,改進(jìn)以前的技術(shù),以滿足不同條件下的溫度采集需要。1.3本設(shè)計(jì)的任務(wù)和主要容如何基于AT89S52對(duì)4路溫度進(jìn)行采集的具體要求,有以下幾點(diǎn):(1)選用哪種傳感器將溫度信號(hào)轉(zhuǎn)化為電信號(hào);(2)單片機(jī)外圍硬件的電路設(shè)計(jì);(3)部程序的編寫。在溫度采集系統(tǒng)中我們經(jīng)常用到集成型溫度傳感器,集成型傳感器可以達(dá)到較高的精度,在集成型溫度傳感器的使用過程中,由于采用的單總線傳輸方式進(jìn)行對(duì)遠(yuǎn)距離的多點(diǎn)溫度進(jìn)行檢測(cè),故在程序的控制上較復(fù)雜。新型溫度傳感器DS18B20具有體積小、精度高、使用電壓寬采用一線總線等優(yōu)點(diǎn),在實(shí)際應(yīng)用中取得

19、了良好的測(cè)溫效果。用四只DS18B20同時(shí)采集4路溫度。AT89S52單片機(jī)P3.7接口接單線總線。單片機(jī)有一個(gè)全雙工的串行通訊口,單片機(jī)與電腦之間能更好地進(jìn)行串口通訊。2 系統(tǒng)總體設(shè)計(jì)2.1系統(tǒng)概述根據(jù)設(shè)計(jì)要求的性能指標(biāo),本系統(tǒng)不僅要滿足一定精度的溫度采集的基本功能,而且由于測(cè)量的路數(shù)為4路,還存在多路信號(hào)的循環(huán)顯示問題,還要考慮溫度超限報(bào)警輸出的功能,同時(shí)系統(tǒng)還具有顯示當(dāng)前各路的測(cè)量溫度值的功能和鍵盤選擇顯示路數(shù)的功能。2.2 系統(tǒng)工作原理分析在測(cè)溫系統(tǒng)中我們常常用到集成型溫度傳感器,集成型溫度傳感器可以達(dá)到較高的精度,在集成型溫度傳感器的使用過程中,由于采用的單總線傳輸方式進(jìn)行對(duì)遠(yuǎn)距離的

20、多點(diǎn)溫度進(jìn)行檢測(cè),所以在程序的控制上比較復(fù)雜。在溫度測(cè)量系統(tǒng)中,采用抗干擾能力強(qiáng)的新型數(shù)字溫度傳感器是解決這些問題的最有效方案,新型數(shù)字溫度傳感器DS18B20具有體積更小、精度更高、適用電壓更寬、采用一線總線、可組網(wǎng)等優(yōu)點(diǎn),在實(shí)際應(yīng)用中取得了良好的測(cè)溫效果。根據(jù)本課題的設(shè)計(jì)目標(biāo)以與硬件的特點(diǎn),本系統(tǒng)的總體設(shè)計(jì)框圖如圖2-1所示AT89S52報(bào)警時(shí)鐘電路鍵盤電路4位LED顯示DS18B20 1DS18B20 2DS18B20 3DS18B20 4 圖2-1總體設(shè)計(jì)框圖3 系統(tǒng)的硬件設(shè)計(jì)一個(gè)溫度采集系統(tǒng),包括被采集信息的采集、轉(zhuǎn)換、顯示等環(huán)節(jié),在本多路溫度采集系統(tǒng)設(shè)計(jì)中,包括CPU的選型以與包括

21、顯示電路、存儲(chǔ)器、報(bào)警電路、電源電路等設(shè)計(jì)。3.1 溫度采集系統(tǒng)的開發(fā)過程本設(shè)計(jì)中以DS18B20為傳感器、AT89S52單片機(jī)為控制核心組成的多點(diǎn)溫度測(cè)試系統(tǒng)。用4只DS18B20同時(shí)測(cè)控4路溫度(視實(shí)際需要還可擴(kuò)展通道數(shù))。由于每片DS18B20含有唯一的硅串行數(shù),所以在一條總線上可掛接多個(gè)DS18B20芯片。從DS18B20讀出的信息或?qū)懭隓S18B20的信息,僅需要一根口線(單線接口)。讀寫與溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的DS18B20供電,而無需額外電源。DS18B20提供9位溫度讀數(shù),構(gòu)成多點(diǎn)溫度檢測(cè)系統(tǒng)而無需任何外圍硬件。處理時(shí),將DS18B20信號(hào)線與單片

22、機(jī)一位口線相連,單片機(jī)可掛接多片DS18B20,從而實(shí)現(xiàn)多點(diǎn)溫度檢測(cè)系統(tǒng)。由于DS18B20只有三個(gè)引腳,其中兩根是電源線VDD和GND,另外一根用作總線DQ(Data In/Out),由于其輸出和輸入均是數(shù)字信號(hào)且與TTL電平兼容,因此其可以與微處理器直接進(jìn)行接口,從而省去了一般傳感器所必需的中間轉(zhuǎn)換環(huán)節(jié)。3.2 單片機(jī)的最小系統(tǒng)設(shè)計(jì)3.2.1 單片機(jī)的選型目前,生產(chǎn)單片機(jī)的廠商有很多,尤其是近年來微電子技術(shù)、計(jì)算機(jī)技術(shù)的飛速發(fā)展,比較著名的有Intel、Philips、Microchip、Motorola、Zilog、Atmel等半導(dǎo)體企業(yè)。在上述著名的半導(dǎo)體企業(yè)產(chǎn)品中,尤其在工業(yè)測(cè)控場(chǎng)合

23、,運(yùn)用較多的為Intel公司的MCS-51系列,Microchip公司的PIC系列,如果作單路溫度測(cè)量,恐怕要選擇該系列的CPU,但由于本系統(tǒng)涉與的是多路,各路報(bào)警的輸出信號(hào)需要單獨(dú)輸出,而且考慮信號(hào)調(diào)理電路的切換等還需要不少的控制線,因此該系列的少引腳特點(diǎn)就不適合本設(shè)計(jì)的需要,因此,本設(shè)計(jì)還是選用了ATMEL最新的8位單片機(jī)AT89S52作為本系統(tǒng)的CPU。下面簡單地介紹一下AT89S52。3.2.2 AT89S52的性能與應(yīng)用功能特性描述:AT89S52 是一種低功耗、高性能 CMOS8 位微控制器,具有8K 在系統(tǒng)可編程 Flash 存儲(chǔ)器。使用 Atmel 公司高密度易失性存儲(chǔ)器技術(shù)制

24、造,與工業(yè) 80S52 產(chǎn)品指令和引腳完全兼容。片上 Flash 允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的 8 位 CPU 和在系統(tǒng)可編程 Flash,使得 AT89S52 為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、有效的解決案,其引腳如圖3-1所示。AT89S52 具有以下標(biāo)準(zhǔn)功能:8k 字節(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模式下,C

25、PU停止工作,允許 RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM 容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或圖3-1是AT89S52的引腳配置,40個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口與P3口復(fù)用。其對(duì)應(yīng)的引腳功能:Pin40:正電源腳,正常工作或?qū)ζ珽PROM抄寫程序時(shí),接+5V電源。Pin19:時(shí)鐘XTAL1腳,片振蕩電路的輸入端。Pin18:時(shí)鐘XTAL2腳,片振蕩電路的輸出端。AT89S52的時(shí)鐘有兩種方式,一種是片時(shí)鐘振蕩方式,但需在18和19腳外接石英晶體(2-12MHz)和振蕩電容,振蕩電

26、容的值一般取10PF-30PF;另外一種是外部時(shí)鐘方式,即將XTAL1接地,外部時(shí)鐘信號(hào)從XTAL2腳輸入。本設(shè)計(jì)采用片時(shí)鐘電路,外接晶振和電容組成振蕩器。圖3-1 AT89S52引腳輸入輸出(I/O)引腳:Pin39-Pin32為。P0.0-P0.7輸入輸出腳,Pin1-Pin8為P1.0-P1.7輸入輸出腳,Pin21-Pin28為P2.0-P2.7輸硬件復(fù)位為止入輸出腳,Pin10-Pin17為P3.0-P3.7輸入輸出腳。在對(duì)單片機(jī)設(shè)計(jì)中,P0作為數(shù)碼管的段選選通端口何數(shù)字鍵盤接口。Pin9:RESET/ 復(fù)位信號(hào)復(fù)用腳,當(dāng)AT89S52通電,時(shí)鐘電路開始工作,在RESET引腳上出現(xiàn)2

27、個(gè)時(shí)鐘周期以上的高平,系統(tǒng)即初始復(fù)位。初始化后,程序計(jì)數(shù)器PC指向0000H, P0-P3輸出口全部為高電平,堆棧指針寫入07H,其它專用寄存器被清“0”。RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址開始執(zhí)行程序。 值得注意的是,P0、P1、P2、P3口作為普通I/O口使用時(shí)都是準(zhǔn)雙向口結(jié)構(gòu),其輸入操作和輸出操作本質(zhì)不同,輸入操作是讀引腳狀態(tài),輸出是對(duì)鎖存器的寫入操作。當(dāng)部總線給口鎖存器置0或1時(shí),鎖存器中的0、1狀態(tài)立即反映到引腳上。但在輸入操作時(shí),如果鎖存器狀態(tài)為0引腳被鉗位0狀態(tài),導(dǎo)致無法讀出引腳的高電平輸入。因此,準(zhǔn)雙向口作為輸入口時(shí),應(yīng)先使鎖存器置1(稱之為置輸入方式)。

28、然后,再讀引腳,例如:要將P1口的狀態(tài)讀入到累加器A中,應(yīng)執(zhí)行以下兩條指令: MOV P1,#0FFH ;P1口置入方式。MOV A, P1 ;讀P1口引腳狀態(tài)到A。此外,I/O口的端口自動(dòng)識(shí)別功能,保證了無論是P1口(低8位地址)P2口(高8位地址)的總線復(fù)用,還是P3口的功能復(fù)用,部資源自動(dòng)選擇不需要用指令進(jìn)行狀態(tài)選擇。隨著計(jì)算機(jī)技術(shù)的發(fā)展,單片機(jī)的功能越來越強(qiáng)大,壽命長、速度快、低功耗、低噪聲、可靠性高的特點(diǎn)與16位、32位單片機(jī)的出現(xiàn),在工業(yè)領(lǐng)域仍具有很大的發(fā)展?jié)摿Α?.2.3 時(shí)鐘電路設(shè)計(jì)本設(shè)計(jì)采用部時(shí)鐘方式來為系統(tǒng)提供時(shí)鐘信號(hào)。時(shí)鐘電路通常由晶震控制芯片、電容和晶體震蕩器組成。時(shí)鐘

29、電路是用來產(chǎn)生AT89C51單片機(jī)工作時(shí)所需要的時(shí)鐘信號(hào)。一般時(shí)鐘設(shè)計(jì)有兩種形式:部時(shí)鐘和外部時(shí)鐘。AT89C51單片機(jī)部有一個(gè)高增益反響放大器,它用來構(gòu)成振蕩器。此放大器有兩個(gè)引腳,一個(gè)是的輸入引腳XTAL1,另一個(gè)是輸出引腳XTAL2,這兩個(gè)引腳跨接晶體振蕩器和用于微調(diào)的電容,目的是用來構(gòu)成一個(gè)自激勵(lì)振蕩器。如圖3-2時(shí)鐘電路,晶體振蕩器的頻率圍一般在1.2MHz和12MHz之間,單片機(jī)的運(yùn)行速度會(huì)受到晶振頻率的影響,因此晶振頻率的選擇很重要。晶振的起振頻率有兩個(gè),一個(gè)是11.0592MHZ,另一個(gè)是12MHZ,本設(shè)計(jì)的AT89S52單片機(jī)采用的是12MHz。通常電路中的電容C1和C2的值

30、都取為30PF。電路對(duì)外接電容的值盡管沒有明確的要求,然而電容的晶體振蕩器頻率會(huì)受到電容大小的影響,以與振蕩器的穩(wěn)定性和起振的快速性都會(huì)受到影響。為了減少寄生電容,晶振和電容應(yīng)該與單片機(jī)芯片安裝時(shí)盡可能的靠近,以確保振蕩器穩(wěn)定,可靠地工作。本設(shè)計(jì)使用NPO電容,原因是它的溫度穩(wěn)定性比較好。時(shí)鐘電路如圖3-2所示。圖3-2 時(shí)鐘電路3.2.4 復(fù)位電路設(shè)計(jì)為了使系統(tǒng)能夠從正確的初始狀態(tài)開始工作,就必須在啟動(dòng)單片機(jī)的時(shí)候?qū)纹瑱C(jī)復(fù)位。對(duì)電源+5V而言,電容C3和電阻R3構(gòu)成了微分電路。對(duì)于上電復(fù)位,上電以后,復(fù)位電路通過電容使RST持續(xù)一段時(shí)間的高電平,如果RST能夠持續(xù)充足時(shí)間的高電平,系統(tǒng)就有

31、足夠的時(shí)間復(fù)位,那么就實(shí)現(xiàn)了系統(tǒng)復(fù)位的可靠性。但是,電容的充電時(shí)間決定了RST端持續(xù)高電平的時(shí)間。隨著電容充電的完成,RST端變成低電平。如圖3-3所示。對(duì)于手動(dòng)按鈕復(fù)位,它是通過手動(dòng)操作按鍵來給RST一個(gè)高電平,這種復(fù)位方式可以滿足設(shè)計(jì)的要求,原因是,手動(dòng)按鍵的時(shí)候總是有一個(gè)過程,在這個(gè)時(shí)間段,系統(tǒng)能夠有足夠的時(shí)間復(fù)位。圖3-3中:C7=10uf,R21=4.7k圖3-3 復(fù)位電路3.3溫度采集接口電路設(shè)計(jì)本設(shè)計(jì)中以DS18B20為傳感器、AT89S52單片機(jī)為控制核心組成的多點(diǎn)溫度測(cè)試系統(tǒng)。用4只DS18B20同時(shí)測(cè)控4路溫度(視實(shí)際需要還可擴(kuò)展通道數(shù))。由于每片DS18B20含有唯一的硅

32、串行數(shù),所以在一條總線上可掛接多個(gè)DS18B20芯片。從DS18B20讀出的信息或?qū)懭隓S18B20的信息,僅需要一根口線(單線接口)。讀寫與溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的DS18B20供電,而無需額外電源。DS18B20提供9位溫度讀數(shù),構(gòu)成多點(diǎn)溫度檢測(cè)系統(tǒng)而無需任何外圍硬件。處理時(shí),將DS18B20信號(hào)線與單片機(jī)一位口線相連,單片機(jī)可掛接多片DS18B20,從而實(shí)現(xiàn)多點(diǎn)溫度檢測(cè)系統(tǒng)。由于DS18B20只有三個(gè)引腳,其中兩根是電源線VDD和GND,另外一根用作總線DQ(Data In/Out),由于其輸出和輸入均是數(shù)字信號(hào)且與TTL電平兼容,因此其可以與微處理器直接進(jìn)行

33、接口,從而省去了一般傳感器所必需的中間轉(zhuǎn)換環(huán)節(jié)。3.3.1 DS18B20簡介DS18B20是美國Dallas半導(dǎo)體公司推出的第一片支持一線總線接口的溫度傳感器。它具有微型化、低功耗、高性能、抗干擾能力強(qiáng)、易配微處理器等優(yōu)點(diǎn),可直接將溫度轉(zhuǎn)化成串行數(shù)字信號(hào)供微機(jī)處理。DS18B20 特點(diǎn)如下:硬件接口簡單,性能穩(wěn)定,單線接口,僅需一根口線與MCU連接無需外圍元件;由總線提供電源;測(cè)溫圍為-5575;精度為0.5;9位溫度讀數(shù);A/D變換時(shí)間為200ms;用戶自設(shè)定溫度報(bào)警上下限,其值是非易失性的;報(bào)警搜索命令可識(shí)別那片DS18B20超溫度限。(1)DS18B20的引腳介紹TO92封裝的DS18

34、B20的引腳排列見圖3.1,其引腳功能描述見表3-1。表3-1 DS18B20詳細(xì)引腳功能描述序號(hào)名稱引腳功能描述1GND地信號(hào)2DQ數(shù)據(jù)輸入/輸出引腳。開漏單總線接口引腳。當(dāng)被用著在寄生電源下,也可以向器件提供電源。3VDD可選擇的VDD引腳。當(dāng)工作于寄生電源時(shí),此引腳必須接地。圖3-3 DS18B20的管腳排列(2)DS18B20的產(chǎn)品特點(diǎn)1) 只要求一個(gè)端口即可實(shí)現(xiàn)通信。2) 在DS18B20中的每個(gè)器件上都有獨(dú)一無二的序列號(hào)。3) 實(shí)際應(yīng)用中不需要外部任何元器件即可實(shí)現(xiàn)測(cè)溫。 4) 測(cè)量溫度圍在55到125之間。 5) 數(shù)字溫度計(jì)的分辨率用戶可以從9位到12位選擇。6) 部有溫度上、下

35、限告警設(shè)置。 7)支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在一根三線上,實(shí)現(xiàn)多點(diǎn)測(cè)溫8) 負(fù)壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作。 DS18B20的工作原理是:DS18B20采用3腳PR-35封裝,其中 GND為地;I/O為數(shù)據(jù)輸入/輸出端(即單線總線),該腳為漏極開路輸出,常態(tài)下呈高電平;VDD是外部+5V電源端,不用時(shí)應(yīng)接地;DQ為空腳。圖3-4所示為DS18B20的部框圖,它主要包括寄生電源、溫度傳感器、64位激光ROM單線接口、存放中間數(shù)據(jù)的高速暫存器(含RAM),用于存儲(chǔ)用戶設(shè)定的溫度上下限值的TH和TL觸發(fā)器存儲(chǔ)與控制邏輯、8位循環(huán)冗余校驗(yàn)碼(CRC)

36、發(fā)生器等七部分。電源檢測(cè)存儲(chǔ)器控制邏輯溫度傳感器高溫度觸發(fā)低溫度觸發(fā)64位ROM和單線借口存儲(chǔ)器8位CRC觸發(fā)器圖3-4 DS18B20部結(jié)構(gòu)圖DS18B20的一線工作協(xié)議流程是:初始化ROM操作指令存儲(chǔ)器操作指令數(shù)據(jù)傳輸。其工作時(shí)序包括復(fù)位時(shí)序、寫時(shí)序和讀時(shí)序,如圖3-4,3-5,3-6所示。由于DS18B20采用的是1Wire總線協(xié)議方式,即在一根數(shù)據(jù)線實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,而對(duì)AT89S52單片機(jī)來說,硬件上并不支持單總線協(xié)議,因此,我們必須采用軟件的方法來模擬單總線的協(xié)議時(shí)序來完成對(duì)DS18B20芯片的訪問。 由于DS18B20是在一根I/O線上讀寫數(shù)據(jù),因此,對(duì)讀寫的數(shù)據(jù)位有著嚴(yán)格的時(shí)

37、序要求。DS18B20有嚴(yán)格的通信協(xié)議來保證各位數(shù)據(jù)傳輸?shù)恼_性和完整性。該協(xié)議定義了幾種信號(hào)的時(shí)序:初始化時(shí)序、讀時(shí)序、寫時(shí)序。所有時(shí)序都是將主機(jī)作為主設(shè)備,單總線器件作為從設(shè)備。而每一次命令和數(shù)據(jù)的傳輸都是從主機(jī)主動(dòng)啟動(dòng)寫時(shí)序開始,如果要求單總線器件回送數(shù)據(jù),在進(jìn)行寫命令后,主機(jī)需啟動(dòng)讀時(shí)序完成數(shù)據(jù)接收。數(shù)據(jù)和命令的傳輸都是低位在先。DS18B20的復(fù)位時(shí)序圖3-5 DS18B20的復(fù)位時(shí)序DS18B20的讀時(shí)序?qū)τ贒S18B20的讀時(shí)序分為讀0時(shí)序和讀1時(shí)序兩個(gè)過程。對(duì)于DS18B20的讀時(shí)序是從主機(jī)把單總線拉低之后,在15s之就得釋放單總線,以讓DS18B20把數(shù)據(jù)傳輸?shù)絾慰偩€上。DS

38、18B20在完成一個(gè)讀時(shí)序過程,至少需要60s才能完成。圖3-6 DS18B20的讀時(shí)序DS18B20的寫時(shí)序?qū)τ贒S18B20的寫時(shí)序仍然分為寫0時(shí)序和寫1時(shí)序兩個(gè)過程。圖3-7 DS18B20的寫時(shí)序?qū)τ贒S18B20寫0時(shí)序和寫1時(shí)序的要求不同,當(dāng)要寫0時(shí)序時(shí),單總線要被拉低至少60s,保證DS18B20能夠在15s到45s之間能夠正確地采樣I/O總線上的“0”電平,當(dāng)要寫1時(shí)序時(shí),單總線被拉低之后,在15s之就得釋放單總線。LSB設(shè)置清除斜率累加器比較預(yù)置低溫度系數(shù)振蕩器高溫度系數(shù)振蕩器計(jì)數(shù)器計(jì)數(shù)器=0=0溫度寄存器預(yù)置停止加1圖3-8 DS18B20測(cè)溫原理框圖DS18B20的溫度測(cè)

39、量原理如下:DS18B20測(cè)量溫度時(shí)使用特有的溫度測(cè)量技術(shù),其測(cè)量電路框圖如圖3-8所示。部計(jì)數(shù)器對(duì)一個(gè)受溫度影響的振蕩器的脈沖計(jì)數(shù),低溫時(shí)振蕩器的脈沖可以通過門電路,而當(dāng)?shù)竭_(dá)某一設(shè)置高溫時(shí),振蕩器的脈沖無法通過門電路。計(jì)數(shù)器設(shè)置為-55時(shí)的值,如果計(jì)數(shù)器到達(dá)0之前,門電路未關(guān)閉,則溫度寄存器的值將增加,這表示當(dāng)前溫度高于-55。同時(shí),計(jì)數(shù)器復(fù)位在當(dāng)前溫度值上,電路對(duì)振蕩器的溫度系數(shù)進(jìn)行補(bǔ)償,計(jì)數(shù)器重新開始計(jì)數(shù)直到回零。如果門電路仍然未關(guān)閉,則重復(fù)以過程。溫度表示值為9bit,高位為符號(hào)位。另外,由于DS18B20單線通信功能是分時(shí)完成的,他有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)序很重要。系統(tǒng)對(duì)DS18

40、B20的各種操作必須按協(xié)議進(jìn)行。操作協(xié)議為:初始化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。3.3.2DS18B20與單片機(jī)的接口設(shè)計(jì)溫度采集是工業(yè)生產(chǎn)經(jīng)常遇到的問題。本設(shè)計(jì)中以DS18B20為傳感器AT89S52單片機(jī)為控制核心組成的多點(diǎn)溫度測(cè)試系統(tǒng)。用4只DS18B20同時(shí)測(cè)控4路溫度(視實(shí)際需要還可擴(kuò)展通道數(shù))。本系統(tǒng)采用四位共陽極數(shù)碼管動(dòng)態(tài)顯示溫度,系統(tǒng)設(shè)有上下限報(bào)警電路。該控制系統(tǒng)的功能如下: (1)溫度控制得設(shè)定圍為0100,最小分辨率為0.5。 (2)實(shí)時(shí)顯示當(dāng)前溫度,可以單通道也可以循環(huán)顯示。 (3)命令按鍵5個(gè):通道0通道3按鍵,巡檢鍵,。3.4

41、顯示器與鍵盤電路的設(shè)計(jì) 基于DS18B20的多點(diǎn)溫度采集,共模擬了4點(diǎn)溫度,具有各點(diǎn)溫度采集功能,通過按鍵設(shè)置也可以監(jiān)控某一通道的溫度,還設(shè)置報(bào)警溫度,具有越限報(bào)警功能。SW1SW4通道0通道3報(bào)警, XUNJIAN為巡檢鍵,關(guān)閉進(jìn)入巡檢模式。 在本系統(tǒng)中,由于該溫度計(jì)還要進(jìn)行信息的實(shí)時(shí)顯示,所以設(shè)計(jì)了LED顯示電路。LED顯示器采用8段發(fā)光二極管。共陽極LED顯示器的發(fā)光二極管的陽極連接在一起,通常此公共陽極接正電壓。該電路由晶體管(NPN)、顯示器(共陽極LED)和電阻構(gòu)成。3.4.1 顯示電路設(shè)計(jì)本設(shè)計(jì)使用了四塊共陽極結(jié)構(gòu)的LED,對(duì)數(shù)碼管的驅(qū)動(dòng)有兩種選擇,一種是顯示驅(qū)動(dòng)器MAX7221

42、,一種選擇是三極管驅(qū)動(dòng)。MAX7221的特點(diǎn)是顯示多樣、需要單片機(jī)輸入輸出口少(只需要3根)、編程靈敏、簡單且實(shí)用等,但是它是共陰極的驅(qū)動(dòng)器。因此,選擇直接由三極管驅(qū)動(dòng)。LED數(shù)碼管顯示器有靜態(tài)顯示和動(dòng)態(tài)顯示兩種方式。靜態(tài)顯示就是當(dāng)顯示器顯示某個(gè)字符時(shí)侯,和它相應(yīng)的段(即就是發(fā)光二極管)恒定的導(dǎo)通或者截止,直到顯示要另一個(gè)字符為止。比起動(dòng)態(tài)顯示器,靜態(tài)顯示器的亮度較高,編程也很容易,管理也較簡單,但就是占用輸入輸出線資源較多,而且沒有位選信號(hào),線路復(fù)雜,成本也高。動(dòng)態(tài)顯示就是單片機(jī)定時(shí)的對(duì)LED進(jìn)行掃描,然后使其逐個(gè)的顯示出結(jié)果。當(dāng)數(shù)碼管顯示的時(shí)候,由于人眼的視覺暫留效果,仍然感覺到所有的數(shù)碼

43、管都同時(shí)在顯示,此方法用到的是硬件掃描,成本低,但是占用的CPU資源多,亮度也不如靜態(tài)顯示。根據(jù)以上所述,本設(shè)計(jì)選用的顯示方示為動(dòng)態(tài)顯示。如圖3-9為顯示電路。圖3-9 顯示電路3.4.2 鍵盤電路設(shè)計(jì)基于DS18B20的多點(diǎn)溫度采集,共模擬了4點(diǎn)溫度,具有各點(diǎn)溫度采集功能,通過按鍵設(shè)置也可以監(jiān)控某一通道的溫度,還設(shè)置報(bào)警溫度,具有越限報(bào)警功能。鍵盤電路如圖3-10所示。圖3-10 鍵盤電路3.5 報(bào)警電路設(shè)計(jì)在單片機(jī)采集溫度發(fā)生低于或超出所設(shè)定的溫度時(shí),單片機(jī)系統(tǒng)能相應(yīng)發(fā)出提醒。本次設(shè)計(jì)采用蜂鳴器。蜂鳴器可用AT89S52的I/O口線通過設(shè)置PNP的飽和截止驅(qū)動(dòng)蜂鳴器發(fā)聲,當(dāng)I/O口線發(fā)出具

44、有一定的低電平信號(hào),即可使蜂鳴器報(bào)警。報(bào)警電路如圖3-11所示。 圖3-11 報(bào)警電路4 多路溫度采集系統(tǒng)的軟件設(shè)計(jì)4.1 主程序流程設(shè)計(jì)開始初始化掃描鍵盤是否有鍵按下?采集溫度是否為單通道顯示?顯示溫度值并且過溫度報(bào)警循環(huán)顯示并且過溫度報(bào)警結(jié)束YNYN圖4-1 主程序框圖(1) 采用模塊程序設(shè)計(jì)。(2) 采用自頂向下的程序設(shè)計(jì)。 (3) 外部設(shè)備和外部事件盡量采用中斷方式與CPU聯(lián)絡(luò),這樣既便于系統(tǒng)模塊化, 也可提高程序效率。 (4) 近幾年推出的單片機(jī)開發(fā)系統(tǒng), 有些是支持高級(jí)語言的,如C51與PL/M96的編程和在線跟蹤調(diào)試。 (5) 系統(tǒng)的軟件設(shè)計(jì)應(yīng)充分考慮到軟件抗干擾措施。4.2 程

45、序設(shè)計(jì)與巡檢子程序設(shè)計(jì)程序處理是整個(gè)系統(tǒng)的關(guān)鍵,即簡潔的硬件結(jié)構(gòu)是靠復(fù)雜的軟件來支持的。多個(gè)器件掛在一條總線上為了識(shí)別不同的器件,在程序設(shè)計(jì)過程中一般有四個(gè)步驟:初始化命令;傳送ROM命令;傳送RAM命令;數(shù)據(jù)交換命令。由于已經(jīng)在上面獲取了多個(gè)DS18B20的ROM代碼并在AT89S52單片機(jī)部的E2PROM中建立了測(cè)量位置點(diǎn)和傳感器64位ROM代碼之間的關(guān)系表,因此對(duì)多個(gè)溫度的巡回測(cè)量流程圖如圖4-2所示。開始復(fù)位DS18B20發(fā)出搜索ROM的命令返回讀在線DS18B20序列號(hào)所有在線DS18B20是否訪問完?是否存在一個(gè)DS18B20?初始化DS18B20啟動(dòng)所有在線的DS18B20作溫度

46、A/D轉(zhuǎn)換跳過ROM命令;轉(zhuǎn)換命令延時(shí)104s初始化DS18B20執(zhí)行期間匹配命令發(fā)一個(gè)DS18B20序列號(hào)發(fā)讀暫存RAM命令讀匹配的DS18B20溫度YNYN圖4-2巡檢顯示子程序流程圖(1) 發(fā)跳過ROM命令CCH。(2) 發(fā)啟動(dòng)所有在線的DS18B20進(jìn)行溫度轉(zhuǎn)換命令44H。(3) 延遲104s。(4) 發(fā)匹配ROM命令55H。(5) 按照E2PROM中建立的關(guān)系表的順序取出64位ROM代碼發(fā)送到單總線。(6) 發(fā)讀溫度值命令BEH,讀取溫度值。(7) 進(jìn)行CRC校驗(yàn)和數(shù)據(jù)處理后送LED顯示器顯示。(8) 重復(fù)第4步到第7步,直到所有的DS18B20測(cè)量處理完。需要注意的是,無論是單點(diǎn)還

47、是多點(diǎn)溫度檢測(cè),在系統(tǒng)安裝與工作之前,應(yīng)將主機(jī)逐個(gè)與DS18B20掛接,讀出其序列號(hào)。其工作過程為:主機(jī)發(fā)出一個(gè)脈沖,待0電平大于104s后,復(fù)位DS18B20,在DS18B20所發(fā)響應(yīng)脈沖由主機(jī)接收后,主機(jī)再發(fā)讀ROM命令代碼33H,然后發(fā)一個(gè)脈沖(104s),并接著讀取DS18B20序列號(hào)的一位。用同樣方法讀取序列號(hào)的56位。另外,由于DS1820單線通信功能是分時(shí)完成的,遵循嚴(yán)格的時(shí)隙概念,因此,系統(tǒng)對(duì)DS18B20和各種操作必須按協(xié)議進(jìn)行,即初始化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)。在正常測(cè)溫情況下,DS18B20的測(cè)溫分辨力為0.5。采用下述方法可獲

48、得高分辨率的溫度測(cè)量結(jié)果:首先用DS18B20提供的讀暫存器指令(BEH)讀出以0.5為分辨率的溫度測(cè)量結(jié)果,然后切去測(cè)量結(jié)果中的最低有效位(LSB),得到所測(cè)實(shí)際溫度的整數(shù)部分,然后再用BEH指令取計(jì)數(shù)器1的計(jì)數(shù)剩余值和每度計(jì)數(shù)值??紤]到DS18B20測(cè)量溫度的整數(shù)部分以0.25和0.75為進(jìn)位界限的關(guān)系。4.3巡檢鍵盤與數(shù)碼管多通道顯示選用高亮度發(fā)光LED器件。溫度數(shù)據(jù)按動(dòng)態(tài)方式顯示,將采集到的數(shù)值通過標(biāo)度轉(zhuǎn)換由四位數(shù)碼管顯示。其段選段接P0,位選信號(hào)由P2.2、P2.3、P2.4和P2.5設(shè)置。存放位置:6AH6DH為0通道設(shè)定值存放單元(依次為小數(shù)位,個(gè)位,十位,百位數(shù));6EH6FH

49、,76H77H為1通道設(shè)定值存放單元(依次為小數(shù)位,個(gè)位,十位,百位數(shù));78H7BH為2通道設(shè)定值存放單元(依次為小數(shù)位,個(gè)位,十位,百位數(shù));7CH7FH為3通道設(shè)定值存放單元(依次為小數(shù)位,個(gè)位,十位,百位數(shù));51H54H顯示值存放單元(調(diào)溫度閃爍時(shí)再送回顯示單元)。各顯示按鍵功能如表4-1所示。表4-1 顯示按鍵按 鍵 功 能 XUNJIAN鍵 用于控制循環(huán)顯示各通道溫度數(shù)據(jù) SW1用于實(shí)時(shí)顯示“0”通道的溫度數(shù)據(jù) SW2用于實(shí)時(shí)顯示“1”通道的溫度數(shù)據(jù) SW3用于實(shí)時(shí)顯示“2”通道的溫度數(shù)據(jù) SW4用于實(shí)時(shí)顯示“3”通道的溫度數(shù)據(jù) 系統(tǒng)經(jīng)過初始化,進(jìn)入多通道顯示,然后掃描鍵盤,判斷

50、是否有按鍵按下,然后進(jìn)行按鍵所控制的通道的溫度采集。所采集的溫度與設(shè)定的溫度相比較,越限可以報(bào)警。多通道數(shù)據(jù)顯示流程圖如圖4-3所示。開始單通道顯示方式 掃描鍵盤 是SW1嗎? 是否有鍵按下? 是SW2嗎? 是SW3嗎?顯示1通道數(shù)據(jù) 過溫度報(bào)警與溫度顯示顯示2通道數(shù)據(jù) 過溫度報(bào)警與溫度顯示顯示3通道數(shù)據(jù) 過溫度報(bào)警與溫度顯示顯示4通道數(shù)據(jù) 過溫度報(bào)警與溫度顯示是XUNJIAN模式嗎?返回 YNY 是SW4嗎?YYYNNNNNY圖4-3 多通道數(shù)據(jù)顯示4.4 溫度報(bào)警程序設(shè)計(jì)由于DS18B20需要初始化才能使用,因此,首先必須對(duì)系統(tǒng)進(jìn)行初始化并且要關(guān)閉所有中斷,DS18B20把轉(zhuǎn)換到的溫度讀出

51、,然后放到累加器A中,把之前設(shè)置的溫度報(bào)警的上限值轉(zhuǎn)換成DS18B20的輸出值,這樣然后再與報(bào)警上限的溫度值進(jìn)行比較,如果檢測(cè)的結(jié)果是溫度沒有超限,那么系統(tǒng)繼續(xù)進(jìn)行檢測(cè)。溫度報(bào)警的程序流程如圖4-4所示。報(bào)警程序入口DS18B20初始化DS18B20轉(zhuǎn)換值溫度是否過高?自動(dòng)報(bào)警溫度降低,是否有按鍵接觸?報(bào)警結(jié)束是否是否報(bào)警程序入口圖4-4 報(bào)警程序流程圖5 系統(tǒng)仿真本部分采用將DS18B20 的I/ 0 數(shù)據(jù)線與AT89S52 單片機(jī)P3. 4、P3. 5、P3. 6 、P3. 7口線相連,用4 只DS18B20 同時(shí)測(cè)量4 路溫度(視實(shí)際需要還可擴(kuò)展通道數(shù)) 實(shí)現(xiàn)多點(diǎn)溫度檢測(cè)。DS18B20

52、 只有3 個(gè)引腳,其中兩根是電源線VDD 和GND (本設(shè)計(jì)中采用外部電源供電方式) ,另外1 根用作總線DQ ,其輸出和輸入均是數(shù)字信號(hào)且與TTL 電平兼容,因此可以與微處理器直接進(jìn)行接口。主CPU 經(jīng)過單線接口訪問DS18B20 的工作流程為:對(duì)DS18B20 進(jìn)行初始化ROM 操作命令存儲(chǔ)器操作命令數(shù)據(jù)處理。主CPU 對(duì)ROM 操作完畢后即發(fā)出控制操作命令,使DS18B20 完成溫度測(cè)量并將測(cè)量結(jié)果存入高速暫存器中,然后讀出此結(jié)果。(1)鍵盤與顯示部分本設(shè)計(jì)采用獨(dú)立式鍵盤和四位顯示。鍵盤用來設(shè)置上限與下限的溫度報(bào)警,字符液晶用來顯示通道號(hào)、該通道的溫度和所設(shè)置的上下限溫度。使用液晶顯示更

53、加形象,而且抗干擾能力強(qiáng),便于以后擴(kuò)展。當(dāng)運(yùn)行PRO TEUS 軟件時(shí),從液晶屏可以清楚的看到所采集到的溫度值、通道號(hào)和上下限報(bào)警。(2)軟件電路設(shè)計(jì)單片機(jī)編程在開機(jī)之初,主程序先對(duì)系統(tǒng)進(jìn)行初始化,然后采集4 路溫度信號(hào),并在液晶屏上循環(huán)顯示。(3)軟硬聯(lián)合調(diào)試整個(gè)軟件通過匯編語言編程,先在Keil C51 集成開發(fā)環(huán)境下將編好的程序進(jìn)行編譯、調(diào)試,調(diào)試通過后會(huì)生成DS18B20。HEX 文件。運(yùn)行PROTEUS 模擬仿真軟件,打開已繪制好的仿真電路原理圖,選中單片機(jī)AT89S52,左鍵點(diǎn)擊AT89S52,出現(xiàn)對(duì)應(yīng)的對(duì)話框,在Program File 中找到編譯好的“DS18B20. HEX”

54、文件,然后點(diǎn)擊“O K”就可以進(jìn)行仿真了。點(diǎn)擊模擬調(diào)試按鈕的運(yùn)行按鈕,進(jìn)入調(diào)試狀態(tài),此時(shí)可以看到液晶屏循環(huán)顯示所采集到的溫度值、通道號(hào)和上下限報(bào)警,同時(shí)在虛擬終端上也可以看到上位機(jī)接收到的數(shù)據(jù)。利用Proteus 進(jìn)行單片機(jī)系統(tǒng)的仿真設(shè)計(jì)可以極簡化單片機(jī)程序在目標(biāo)硬件上的調(diào)試工作,大幅度節(jié)省制作電路板的時(shí)間,對(duì)于提高產(chǎn)品的開發(fā)效率、降低開發(fā)成本等有重要作用。圖5-1 系統(tǒng)實(shí)物圖圖5-2 DS18B20在實(shí)物中的連接圖5-3 實(shí)物仿真6 總 結(jié)使用DS18B20數(shù)字化溫度傳感器;實(shí)現(xiàn)多路測(cè)溫;簡化了硬件系統(tǒng),減少了使用模擬傳感器要進(jìn)行放大A/D轉(zhuǎn)換等工作。由于它的級(jí)聯(lián)功能,可以在單總線上掛靠多個(gè)

55、器件,而不必占用多個(gè)I/O口,因此使系統(tǒng)更簡捷。如果長距離測(cè)溫,還可以使用它的寄生電源功能,省去一根電源線。進(jìn)行設(shè)計(jì)和測(cè)試后,用模擬值檢測(cè)按鍵功能,接著實(shí)現(xiàn)了DS18B20對(duì)多路溫度信號(hào)通道的采集,同時(shí)也完成了四路通道的循環(huán)采集和單通道采集,再根據(jù)采集到的實(shí)際信號(hào)進(jìn)行運(yùn)算處理轉(zhuǎn)換成溫度值送入顯示器顯示。在本次設(shè)計(jì)過程中,對(duì)于如何實(shí)現(xiàn)軟件和硬件的結(jié)合有著很大的考驗(yàn),所要考慮很多因素的影響。如按鍵去抖動(dòng),高低電平的變化等。在畢業(yè)設(shè)計(jì)中,為了少走彎路和節(jié)省時(shí)間,應(yīng)充分考慮并滿足抗干擾的要求,避免在設(shè)計(jì)完成后再去進(jìn)行抗干擾的補(bǔ)救措施。綜上所述,用簡單的硬件以與編程方法自動(dòng)建立關(guān)系表,在單總線多點(diǎn)溫度測(cè)

56、量系統(tǒng)中實(shí)現(xiàn)了數(shù)字溫度傳感器的自動(dòng)識(shí)別,大大有利于系統(tǒng)的調(diào)試、維護(hù),減少維護(hù)工作量,并解決了過去維護(hù)工作必須由專業(yè)人員來完成,而不是由運(yùn)行人員來完成的不便。本設(shè)計(jì)創(chuàng)新點(diǎn)在于將單片機(jī)技術(shù)和一線總線技術(shù)相結(jié)合,改進(jìn)現(xiàn)有的用放大和集成電路采集系統(tǒng)。同時(shí)充分利用有限端口,在保證溫度采集可靠性的基礎(chǔ)上簡化電路、降低成本。參考文獻(xiàn)1 蔡可健.多路無線測(cè)溫系統(tǒng)設(shè)計(jì)J.傳感器技術(shù),2005,(12):52.2 賈振國.DS18B20與高精度溫度測(cè)量的實(shí)現(xiàn)J.電子技術(shù)應(yīng)用,2000,(1):58-593 周月霞,傳友. DS18B20 硬件連接與軟件編程J.傳感器世界,2001,(12):35-42.4 周建春

57、,錢敏等.基于單片機(jī)和PC串口通信的測(cè)溫系統(tǒng)J.通信技術(shù),2011,4(5):78-82.5 毅剛.單片機(jī)原理與應(yīng)用M.:高等教育,2001:397-407.6 恢先,黃輝先.單片機(jī)原理與應(yīng)用M.:復(fù)旦大學(xué), 2002:36-52.7 徐淑華,程退安,萬生.單片機(jī)微型機(jī)原理與應(yīng)用M.:工業(yè)大學(xué),1994:85-107.8 周云波.由DS18B20單線數(shù)字溫度計(jì)構(gòu)成的單線多點(diǎn)溫度測(cè)量系統(tǒng)J.電子技術(shù)應(yīng)用,2006,5(15):42.9 麗君.AT89C51單片機(jī)控制的多路溫度檢測(cè)系統(tǒng)J.自動(dòng)化與儀表,2000,(15): 66-68.10 娟,郝弗非.多路溫度檢測(cè)自動(dòng)控制系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)J.理工大

58、學(xué)報(bào),2007,(23):51-53.11 何立明,單片機(jī)應(yīng)用系統(tǒng)抗干擾技術(shù)M.:航空航天大學(xué),2000:99-110.12 涂時(shí)亮等編.單片微機(jī)軟件設(shè)計(jì)技術(shù)M.:科學(xué)技術(shù)文獻(xiàn)分社,2003:72-80.13 邦田. 電子電路實(shí)用抗干擾技術(shù)M.:人民郵電,1994:34-52.14 董慧敏,朱智民. 多點(diǎn)溫度檢測(cè)系統(tǒng)電路設(shè)計(jì)J.職業(yè)技術(shù)學(xué)院學(xué)報(bào),2007,(6):167-168.致 我的畢業(yè)設(shè)計(jì),是在鵬老師的理論與實(shí)踐技術(shù)相結(jié)合地指導(dǎo)下,進(jìn)行大膽的理論與實(shí)踐相結(jié)合,動(dòng)手能力得到了較嚴(yán)格地訓(xùn)練,使我學(xué)到了怎樣去查找翻閱有關(guān)理論資料和技術(shù)手冊(cè),把書本上知識(shí)總結(jié)起來去應(yīng)用于實(shí)踐,學(xué)到了研究、開發(fā),設(shè)

59、計(jì)單片微型計(jì)算機(jī)對(duì)工業(yè)過程控制的一套完整的方法,受益很大。在論文上給我很多的幫助和指導(dǎo)。硬件軟件都要涉與。本畢業(yè)設(shè)計(jì)鍛煉了我的動(dòng)手能力,進(jìn)一步強(qiáng)化了專業(yè)知識(shí),提高了將所學(xué)知識(shí)應(yīng)用于實(shí)踐的能力。在即將走出校門,踏上工作崗位之際,是大有收益的。由于本人水平有限,而且經(jīng)驗(yàn)不足。論文中的錯(cuò)誤與紕漏之處在所難免,懇請(qǐng)各位老師指正。!在此感大學(xué)四年對(duì)我辛勤教導(dǎo)的老師們以與同窗四年的同學(xué),你們對(duì)我四年的關(guān)心和照顧。附錄A 多路溫度檢測(cè)系統(tǒng)示意圖附錄B DS18B20溫度測(cè)量程序TEMPHEAD DATA 36H ;讀取的溫度值存放的單元 TEMPL DATA 26H ;存放讀取溫度的低字節(jié) TEMPH DA

60、TA 27H ;存放讀取溫度的高字節(jié) TEMPHC DATA 28H ;存放BCD碼調(diào)整后溫度的高字節(jié) TEMPLC DATA 29H ;存放BCD碼調(diào)整后溫度的低字節(jié) DISPLY DATA 70H ;70H74H顯示單元(依次存放為小數(shù)位,個(gè)位,十位,百位,通道號(hào)數(shù)) DISPLY1 DATA 71H DISPLY2 DATA 72H DISPLY3 DATA 73H TONG DATA 74H STONG0_X DATA 6AH ;6AH6DH為0通道設(shè)定值存放單元(依次為小數(shù)位,個(gè)位,十位,百位數(shù)) STONG0_G DATA 6BH STONG0_S DATA 6CH STONG0_

溫馨提示

  • 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. 人人文庫網(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)論