1928_基于單片機(jī)的溫度檢測(cè)控制
1928_基于單片機(jī)的溫度檢測(cè)控制,基于,單片機(jī),溫度,檢測(cè),控制,節(jié)制
黃河科技學(xué)院本 科 畢 業(yè) 設(shè) 計(jì) (論文) 任 務(wù) 書工 學(xué)院 機(jī)械 系 機(jī)械設(shè)計(jì)制造及其自動(dòng)化 專業(yè) 2008 級(jí) 3 班學(xué)號(hào) 080105503 學(xué)生 馬楚 指 導(dǎo) 教 師 牛 月 蘭 畢業(yè)設(shè)計(jì)(論文)題目基于單片機(jī)的溫度檢測(cè)控制 畢業(yè)設(shè)計(jì)(論文)工作內(nèi)容與基本要求(目標(biāo)、任務(wù)、途徑、方法,應(yīng)掌握的原始資料(數(shù)據(jù)) 、參考資料(文獻(xiàn))以及設(shè)計(jì)技術(shù)要求、注意事項(xiàng)等)本課題的主要任務(wù)是通過單片機(jī)控制系統(tǒng),實(shí)現(xiàn)對(duì)溫度的智能控制。具體設(shè)計(jì)要求如下:溫度的檢測(cè)與控制是工業(yè)生產(chǎn)過程中比較典型的應(yīng)用之一,隨著傳感器在生產(chǎn)和生活中的更加廣泛的應(yīng)用,利用新型單總線式數(shù)字溫度傳感器實(shí)現(xiàn)對(duì)溫度的測(cè)試與控制得到更快的開發(fā)。本設(shè)計(jì)為基于DS18B20和AT89C51單片機(jī)的溫度測(cè)量及控制系統(tǒng)的硬件結(jié)構(gòu)以及C語言程序設(shè)計(jì),系統(tǒng)設(shè)計(jì)和布線簡(jiǎn)單,結(jié)構(gòu)緊湊,體積小,重量輕,抗干擾能力強(qiáng),性價(jià)比高,擴(kuò)展方便,在大型倉庫,工廠,智能化建筑等領(lǐng)域的多點(diǎn)溫度檢測(cè)中有廣闊的應(yīng)用前景。設(shè)計(jì)內(nèi)容包括硬件和軟件兩個(gè)部分。硬件電路以AT89C51單片機(jī)為微處理器,詳細(xì)設(shè)計(jì)復(fù)位電路,鍵盤及顯示電路,溫度控制電路,報(bào)警電路,時(shí)鐘信號(hào)電路。軟件部分主要對(duì)PID算法進(jìn)行數(shù)學(xué)建模和編程。主要內(nèi)容:1、電路原理圖設(shè)計(jì);2、程序設(shè)計(jì);3、通過 PROTEUS 軟件進(jìn)行仿真調(diào)試;4、圖紙:畫出系統(tǒng)方框圖、電路原理圖、程序流程圖、系統(tǒng)仿真圖各一張;5、撰寫畢業(yè)設(shè)計(jì)說明書、寫出文獻(xiàn)綜述、翻譯外文資料; 時(shí)間及任務(wù)安排:1、1----2 周:考察調(diào)研,實(shí)習(xí)參觀,收集資料,完成開題報(bào)告;2、3----4 周:完成文獻(xiàn)翻譯,文獻(xiàn)綜述,初步擬定總體設(shè)計(jì)方案(查閱文獻(xiàn)資料不少于 12 篇,其中外文資料不少于 2 篇;文獻(xiàn)綜述不少于 3000 字;文獻(xiàn)翻譯不少于 3000 字) ;3、5---9 周:完成設(shè)計(jì)說明書初稿,基本完成課題設(shè)計(jì)、計(jì)算繪圖等工作(畢業(yè)論文 1 篇不少于 10000 字,理工科類論文或設(shè)計(jì)說明書不少于 8000字) ;4、10-11 周: 完成設(shè)計(jì)說明書、設(shè)計(jì)圖紙,整理完成所有設(shè)計(jì)文件;5、第 12 周:做好答辯前的所有準(zhǔn)備工作。畢業(yè)設(shè)計(jì)(論文)時(shí)間: 2012 年 2 月 13 日至 2012 年 5 月 15 日計(jì) 劃 答 辯 時(shí) 間: 2012 年 5 月 20 日專業(yè)(教研室)審批意見:審批人(簽字): 黃河科技學(xué)院畢業(yè)設(shè)計(jì)(論文)開題報(bào)告表課題名稱 基于單片機(jī)的溫度檢測(cè)控制課題來源 教師擬訂 課題類型 AX 指導(dǎo)教師 牛月蘭學(xué)生姓名 馬楚 專 業(yè) 機(jī)械設(shè)計(jì)制造及其自動(dòng)化 學(xué) 號(hào) 080105503一、 調(diào)研資料的準(zhǔn)備1、通過圖書館、互聯(lián)網(wǎng)搜集若干單片機(jī)溫度檢測(cè)控制系統(tǒng)電路圖,初步了解單片機(jī)控制系統(tǒng);2、查閱并參閱 《MCS-51 單片機(jī)原理、接口及應(yīng)用》 、 《單片機(jī)課程設(shè)計(jì)指導(dǎo)書》等書籍;3、在參閱大量的資料、網(wǎng)絡(luò)資源和參觀實(shí)習(xí)的基礎(chǔ)上進(jìn)行知識(shí)整合,具備了單片機(jī)控制系統(tǒng)的創(chuàng)新設(shè)計(jì)。二、設(shè)計(jì)的目的和要求1、了解單片機(jī)的基本結(jié)構(gòu)、工作原理、發(fā)展的動(dòng)態(tài);2、綜合所學(xué)的基礎(chǔ)知識(shí)和專業(yè)技能,設(shè)計(jì)出單片機(jī)的溫度檢測(cè)控制系統(tǒng);3、所設(shè)計(jì)的產(chǎn)品性價(jià)比高、工作可靠、檢修方便并符合實(shí)際生產(chǎn)。三、設(shè)計(jì)的思路與預(yù)期成果1、通過實(shí)物的參觀、資料的搜集和信息的整合,進(jìn)行溫度檢測(cè)控制系統(tǒng)的創(chuàng)新設(shè)計(jì);2、培養(yǎng)獨(dú)立設(shè)計(jì)能力和創(chuàng)新思維能力,提高知識(shí)的靈活運(yùn)用能力;3、完成文獻(xiàn)綜述、文獻(xiàn)翻譯、設(shè)計(jì)說明書一份,設(shè)計(jì)單片機(jī)控制系統(tǒng)電路原理圖及系統(tǒng)方框圖;4、通過本次設(shè)計(jì)和大學(xué)所學(xué)知識(shí)的綜合運(yùn)用,進(jìn)一步加深對(duì)單片機(jī)控制系統(tǒng)設(shè)計(jì)的運(yùn)用,并且所設(shè)計(jì)的裝置具有一定的使用價(jià)值。四、任務(wù)完成的階段內(nèi)容及時(shí)間安排1、 1 — 2 周:考察調(diào)研,實(shí)習(xí)參觀,搜集資料,完成開題報(bào)告;2、 3 — 4 周:完成文獻(xiàn)翻譯、文獻(xiàn)綜述及初步擬定總體方案設(shè)計(jì);3、 5 — 9 周:完成設(shè)計(jì)說明書初稿,基本完成課題設(shè)計(jì)、計(jì)算機(jī)繪圖與仿真等工作; 課題來源:(1)教師擬訂;(2)學(xué)生建議;(3)企業(yè)和社會(huì)征集;(4)科研單位提供課題類型:(1)A—工程設(shè)計(jì)(藝術(shù)設(shè)計(jì)) ;B—技術(shù)開發(fā);C—軟件工程;D—理論研究;E—調(diào)研報(bào)告 (2)X—真實(shí)課題;Y—模擬課題;Z—虛擬課題要求(1) 、 (2)均要填,如 AY、BX 等4、 10—11 周:完成設(shè)計(jì)說明書、設(shè)計(jì)圖紙,整理完成所有設(shè)計(jì)文件;5、 第 12 周:做好答辯前的所有準(zhǔn)備工作。五、完成設(shè)計(jì)所具備的條件因素1、大學(xué)四年學(xué)習(xí)的知識(shí)為畢業(yè)設(shè)計(jì)提供了理論基礎(chǔ);2、四年學(xué)習(xí)過程中的課程設(shè)計(jì)、生產(chǎn)實(shí)習(xí)為此次畢業(yè)設(shè)計(jì)提供了實(shí)踐基礎(chǔ);3、學(xué)校較好的硬件設(shè)施,圖書資源以及高度發(fā)達(dá)的校園網(wǎng)絡(luò)為資料的查詢提供了便利;4、良好的設(shè)計(jì)環(huán)境,指導(dǎo)老師的精心指導(dǎo),同學(xué)們無私的幫助是完成本次設(shè)計(jì)的重要條件。指導(dǎo)教師簽名: 日期: 黃河科技學(xué)院畢業(yè)設(shè)計(jì)說明書 第 I 頁基于單片機(jī)的溫度檢測(cè)控制摘要隨著溫度檢測(cè)系統(tǒng)的廣泛運(yùn)用,不同行業(yè)和領(lǐng)域?qū)囟葯z測(cè)有著不同要求和標(biāo)準(zhǔn)。該設(shè)計(jì)主要用于普通室內(nèi)溫度測(cè)量。采用 DS18B20 集成芯片作為溫度傳感器。文中分析了溫度測(cè)量的工作原理及過程,提出了溫度檢測(cè)系統(tǒng)設(shè)計(jì)的整體方案,對(duì)各個(gè)子模塊設(shè)計(jì)進(jìn)行了方案的論證與比較。硬件設(shè)計(jì)采用 protel 99se 軟件,完成了單片機(jī)最小系統(tǒng),LCD 顯示電路,傳感器的原理圖和 PCB 圖。軟件設(shè)計(jì)采用 Keil uVision2 ,完成了程序模塊各個(gè)模塊的設(shè)計(jì)編程,實(shí)現(xiàn)了對(duì)溫度信號(hào)處理過程的編程和調(diào)試。溫度測(cè)量范圍-40~+125℃,分辨率±0.5℃。能達(dá)到日常生活溫度測(cè)量要求。關(guān)鍵字:AT89C51,DS18B20,LCD,數(shù)據(jù)采集,數(shù)據(jù)處理 黃河科技學(xué)院畢業(yè)設(shè)計(jì)說明書 第 II 頁Based on SCM temperature detection and controlAuthor:Ma ChuTutor:NiuYueLanAbstractAlong with the humiture examination system's widespread utilization, the different profession and the domain have the various requirement and the standard to the humiture examination. This design mainly uses in the ordinary indoor humiture survey. Uses the DS18B20 integration chip to take the humiture sensor. In the article has analyzed the humiture survey principle of work and the process, proposed the humiture examination system design's overall plan, has carried on the plan proof to each submodule design and compares. The hardware design uses protel the 99se software, has completed the monolithic integrated circuit smallest system, the LCD display circuit, sensor's schematic diagram and the PCB chart. The software design uses Keil uVision2, has completed the program module each module design programming, has realized to the humiture signal processing process programming and the debugging. Temperature survey scope - 40~+125℃, resolution ±0.5℃. Can meet the daily life humiture survey requirements.key words: AT89C51,DS18B20,LCD,Data acquisition,Data processing 黃河科技學(xué)院畢業(yè)設(shè)計(jì)說明書 第 III 頁目錄第 1 章 緒論 ..................................................................................................................................11.1 課題意義及發(fā)展前景 ................................................................................................................11.2 設(shè)計(jì)內(nèi)容及性能指標(biāo) ...............................................................................................................2第 2 章 系統(tǒng)器件選擇 ...........................................................................................................42.1 主控芯片介紹 .............................................................................................................................42.2 溫度傳感器的選擇 ....................................................................................................................52.2.1 DS18B20 性能特點(diǎn) .........................................................................................................52.2.2 DS18B20 內(nèi)部結(jié)構(gòu)和測(cè)溫原理 ...................................................................................62.2.3 DS18B20 使用中的注意事項(xiàng)和控制方法 ..................................................................82.3 顯示元件的選擇 ........................................................................................................................9第 3 章 硬件設(shè)計(jì) .....................................................................................................................123.1 復(fù)位電路 ...................................................................................................................................123.2 時(shí)鐘電路 ...................................................................................................................................123.3 顯示電路 ...................................................................................................................................133.4 測(cè)溫電路 ...................................................................................................................................143.5 控制電路 ...................................................................................................................................143.6 報(bào)警電路 ...................................................................................................................................153.7 整機(jī)電路及工作原理 .............................................................................................................15第 4 章 軟件設(shè)計(jì) .....................................................................................................................174.1 主程序模塊 ...............................................................................................................................174.2 溫度相關(guān)模塊 ..........................................................................................................................184.3 時(shí)間相關(guān)模塊 ..........................................................................................................................264.4 中斷相關(guān)程序 ...........................................................................................................................274.5 其他相關(guān)程序 ..........................................................................................................................28 黃河科技學(xué)院畢業(yè)設(shè)計(jì)說明書 第 IV 頁第 5 章 PROTEUS 進(jìn)行仿真 .........................................................................................315.1 PROTEUS 簡(jiǎn)介 .....................................................................................................................315.2 PROTEUS 仿真圖 .................................................................................................................31總結(jié) .....................................................................................................................................................34致謝 .....................................................................................................................................................35參考文獻(xiàn) ................................................................................................................................................36單位代碼 02 學(xué) 號(hào) 080105503 分 類 號(hào) 密 級(jí) 畢 業(yè) 設(shè) 計(jì) 說 明 書基于單片機(jī)的溫度檢測(cè)控制院 ( 系 ) 名 稱 工 學(xué) 院 機(jī) 械 系專 業(yè) 名 稱 機(jī) 械 設(shè) 計(jì) 制 造 及 其 自 動(dòng) 化學(xué) 生 姓 名 馬 楚指 導(dǎo) 教 師 牛 月 蘭20012 年 5 月 6 日黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 1 頁 第1章 緒論1.1 課題意義及發(fā)展前景隨著科技的不斷發(fā)展,現(xiàn)代社會(huì)對(duì)各種信息參數(shù)的準(zhǔn)確度和精確度的要求都有了幾何級(jí)的增長,而如何準(zhǔn)確而又迅速的獲得這些參數(shù)就需要受制于現(xiàn)代信息基礎(chǔ)的發(fā)展水平。在信息采集、信息傳輸和信息處理中,傳感器屬于信息技術(shù)的前沿尖端產(chǎn)品,尤其是溫度傳感器技術(shù),在我國各領(lǐng)域已經(jīng)引用的非常廣泛,可以說是滲透到社會(huì)的每一個(gè)領(lǐng)域,人民的生活與環(huán)境的溫度息息相關(guān),在工業(yè)生產(chǎn)過程中需要實(shí)時(shí)測(cè)量溫度,在農(nóng)業(yè)生產(chǎn)中也離不開溫度的測(cè)量,因此研究溫度的測(cè)量方法和裝置具有重要的意義。測(cè)量溫度的關(guān)鍵是溫度傳感器,溫度傳感器的發(fā)展經(jīng)歷了三個(gè)發(fā)展階段:①傳統(tǒng)的分立式溫度傳感器②模擬集成溫度傳感器③智能集成溫度傳感器計(jì)算機(jī)技術(shù)和自動(dòng)測(cè)試技術(shù)(ATE)的結(jié)晶,特點(diǎn)是能輸出溫度數(shù)據(jù)及相關(guān)的溫度控制量,適配各種微控制器(MCU)。社會(huì)的發(fā)展使人們對(duì)傳感器的要求也越來越高,現(xiàn)在的溫度傳感器正在基于單片機(jī)的基礎(chǔ)上從模擬式向數(shù)字式,從集成化向智能化、網(wǎng)絡(luò)化的方向飛速發(fā)展,并朝著高精度、多功能、總線標(biāo)準(zhǔn)化、高可靠性及安全性、開發(fā)虛擬傳感器和網(wǎng)絡(luò)傳感器、研制單片測(cè)溫系統(tǒng)等高科技的方向迅速發(fā)展,基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì)與傳統(tǒng)的溫度計(jì)相比,其具有讀數(shù)方便,測(cè)溫范圍廣,測(cè)溫準(zhǔn)確,輸出溫度采用數(shù)字顯示,主要用于對(duì)測(cè)溫要求比較準(zhǔn)確的場(chǎng)所,或科研實(shí)驗(yàn)室使用。溫度的檢測(cè)與控制是工業(yè)生產(chǎn)過程中比較典型的應(yīng)用之一,隨著傳感器在生產(chǎn)和生活中的更加廣泛的應(yīng)用,利用新型單總線式數(shù)字溫度傳感器實(shí)現(xiàn)對(duì)溫度的測(cè)試與控制得到更快的開發(fā)。本設(shè)計(jì)為基于DS18B20和AT89C51單片機(jī)的溫度測(cè)量及控制系統(tǒng)的硬件結(jié)構(gòu)以及C語言程序設(shè)計(jì),系統(tǒng)設(shè)計(jì)和布線簡(jiǎn)單,結(jié)構(gòu)緊湊,體積小,重量輕,抗干擾能力強(qiáng),性價(jià)比高,擴(kuò)展方便,在大型倉庫,工廠,智能化建筑等領(lǐng)域的多點(diǎn)溫度檢測(cè)中有廣闊的應(yīng)用前景。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 2 頁 1.2 設(shè)計(jì)內(nèi)容及性能指標(biāo)本設(shè)計(jì)主要是介紹了單片機(jī)控制下的溫度檢測(cè)系統(tǒng),詳細(xì)介紹了其硬件和軟件設(shè)計(jì),并對(duì)其各功能模塊做了詳細(xì)介紹,其主要功能和指標(biāo)如下:1、利用溫度傳感器(DS18B20)測(cè)量某一點(diǎn)環(huán)境溫度2、用數(shù)碼管進(jìn)行實(shí)際溫度值顯示和時(shí)間顯示3、能夠根據(jù)需要方便設(shè)定上下限報(bào)警溫度1.3 本次設(shè)計(jì)采用如圖所示系統(tǒng)原理結(jié)構(gòu)框圖圖1.1 系統(tǒng)原理結(jié)構(gòu)框圖通過數(shù)字溫度芯片對(duì)外界溫度進(jìn)行讀取,并通過單片機(jī)進(jìn)行轉(zhuǎn)換,再由數(shù)碼管進(jìn)行直觀的數(shù)字顯示。同時(shí)設(shè)定溫度比較程序,由單片機(jī)進(jìn)行測(cè)量溫度與設(shè)定溫度的比較,若不在設(shè)定溫度范圍內(nèi),則令蜂鳴器報(bào)警。單片機(jī)選用AT89C51作為溫度測(cè)試系統(tǒng)設(shè)計(jì)的核心器件。它是具有高性能的8位單片機(jī),屬于標(biāo)準(zhǔn)的MCS— 51的CMOS產(chǎn)品。不僅結(jié)合了HMOS的高速和高密度技術(shù)及CHMOS的低功耗特征,而且繼承和擴(kuò)展了MCS —48單片機(jī)的體系結(jié)構(gòu)和指令系統(tǒng)。數(shù)字溫度芯片采用DS18B20測(cè)量溫度,輸出信號(hào)全數(shù)字化。便于單片機(jī)處理及控制,省去傳統(tǒng)的測(cè)溫方法的很多外圍電路。且該芯片的物理化學(xué)性能很穩(wěn)定,它能用作工業(yè)測(cè)溫元件,此元件線性較好。在0—100℃時(shí),最大線性偏差小于1℃。采用51單片機(jī)控制,軟件編程的自由度大,可通過編程實(shí)現(xiàn)各種各樣的算術(shù)運(yùn)算和邏輯控制,黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 3 頁 而且體積小,硬件實(shí)現(xiàn)簡(jiǎn)單,安裝方便,既可以單獨(dú)對(duì)多DS18B20控制工作,還可以與PC 機(jī)通信上傳數(shù)據(jù).利用AT89C51芯片控制溫度傳感器DS18B20進(jìn)行實(shí)時(shí)溫度檢測(cè)并顯示,能夠?qū)崿F(xiàn)快速測(cè)量環(huán)境溫度,并可以根據(jù)需要設(shè)定上下限報(bào)警溫度,利用按鍵來進(jìn)行調(diào)時(shí)和溫度查詢??梢钥闯龃朔桨笢y(cè)溫裝置電路簡(jiǎn)單、精確度較高、實(shí)現(xiàn)方便、軟件設(shè)計(jì)也比較簡(jiǎn)單。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 4 頁 第2章 系統(tǒng)器件選擇2.1 主控芯片介紹主控芯片選擇單片機(jī) AT89C51,該單片機(jī)具有低電壓供電和體積小等特點(diǎn),很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。AT89C51 是一個(gè)低電壓,高性能 CMOS 8 位單片機(jī),片內(nèi)含 4k 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ǔ)單元,內(nèi)置功能強(qiáng)大的微型計(jì)算機(jī)的 AT89C51 提供了高性價(jià)比的解決方案。AT89C51 是一個(gè)低功耗高性能單片機(jī),40 個(gè)引腳,32 個(gè)外部雙向輸入/輸出(I/O)端口,同時(shí)內(nèi)含 2 個(gè)外中斷口,2 個(gè) 16 位可編程定時(shí)計(jì)數(shù)器,2 個(gè)全雙工串行通信口,AT89C51 可以按照常規(guī)方法進(jìn)行編程,也可以在線編程.其將通用的微處理器和 Flash 存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫的 Flash 存儲(chǔ)器可有效地降低開發(fā)成本。AT89C51主要功能特性:●與 MCS-51 兼容●4K字節(jié)可編程閃爍存儲(chǔ)器●壽命:1000寫/擦循環(huán)●數(shù)據(jù)保留時(shí)間:10年●全靜態(tài)工作:0Hz-24Hz●三級(jí)程序存儲(chǔ)器鎖定●128*8位內(nèi)部RAM●32條可編程I/O線●兩個(gè) 16位定時(shí)器/計(jì)數(shù)器●5個(gè)中斷源黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 5 頁 ●可編程串行口●低功耗的閑置和掉電模式●片內(nèi)振蕩器和時(shí)鐘電路 圖2.1 AT89C51單片機(jī)的管腳圖2.2 溫度傳感器的選擇由于傳統(tǒng)的熱敏電阻等測(cè)溫元件測(cè)出的一般都是電壓,再轉(zhuǎn)換成對(duì)應(yīng)的溫度,需要比較多的外部元件支持,且硬件電路復(fù)雜,制作成本相對(duì)較高。這里采用 DALLAS 公司的數(shù)字溫度傳感器 DS18B20 作為測(cè)溫元件。2.2.1 DS18B20 性能特點(diǎn): ●獨(dú)特的單線接口方式,DS18B20 在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 6 頁 處理器與 DS18B20 的雙向通訊?!馜S18B20 支持多點(diǎn)組網(wǎng)功能,多個(gè) DS18B20 可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫?!馜S18B20 在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。●適應(yīng)電壓范圍更寬,電壓范圍:3.0~5.5V,在寄生電源方式下可由數(shù)據(jù)線供電?!駵胤秶?5℃~+125℃,在-10~+85℃時(shí)精度為±0.5 ℃?!窳愦龣C(jī)功耗。●可編程的分辨率為 9~12 位,對(duì)應(yīng)的可分辨溫度分別為 0.5℃、0.25℃、0.125℃和 0.0625℃,可實(shí)現(xiàn)高精度測(cè)溫。●在 9 位分辨率時(shí)最多在 93.75ms 內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12 位分辨率時(shí)最多在750ms 內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快?!裼脩艨啥x報(bào)警設(shè)置?!駡?bào)警搜索命令識(shí)別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件?!駵y(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以"一線總線"串行傳送給 CPU,同時(shí)可傳送CRC 校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力。●負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作。以上特點(diǎn)使 DS18B20 非常適用與多點(diǎn)、遠(yuǎn)距離溫度檢測(cè)系統(tǒng)。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 7 頁 圖 2.2 DS18B20 內(nèi)部結(jié)構(gòu)框圖2.2.2 DS18B20 內(nèi)部結(jié)構(gòu)和測(cè)溫原理DS18B20 內(nèi)部結(jié)構(gòu)主要由四部分組成:64 位光刻 ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器 TH 和 TL、配置寄存器。DQ 為數(shù)據(jù)輸入/ 輸出引腳;開漏單總線接口引腳。當(dāng)被用在寄生電源下,也可以向器件提供電源;GND 為地信號(hào);VDD 為可選擇的 VDD 引腳;當(dāng)工作于寄生電源時(shí),此引腳必須接地.DS18B20 采用 3 腳 PR-35 封裝或 8 腳 SOIC 封裝,其內(nèi)部結(jié)構(gòu)框圖如上圖所示。閃速 ROM 開始 8 位是產(chǎn)品類型的編號(hào),接著是每個(gè)器件的惟一的序號(hào),共有 48 位,最后 8 位是前面 56 位的 CRC 檢驗(yàn)碼,這也是多個(gè) DS18B20 可以采用一線進(jìn)行通信的原因。溫度報(bào)警觸發(fā)器 TH 和 TL,可通過軟件寫入戶報(bào)警上下限.主機(jī)操作ROM 的命令有五種,如下表所示:指 令 說 明讀ROM(33H) 讀DS1820的序列號(hào)匹配ROM(55H) 繼讀完64位序列號(hào)的一個(gè)命令,用于多個(gè)DS1820時(shí)黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 8 頁 表2.1 ROM的命令DS18B20 溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的EPROM.前2個(gè)字節(jié)包含測(cè)得的溫度信息,第3和第4字節(jié)TH和TL的拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第5個(gè)字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率.DS18B20 工作時(shí)寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。溫度低位 溫度高位 TH TL 配置 保留 保留 保留 8位CRCLSB MSBDS18B20測(cè)溫原理當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第1,2字節(jié)。單片機(jī)可通過單線接口讀到該數(shù)據(jù),讀取時(shí)低位在前,高位在后,數(shù)據(jù)格式以0.062 5 ℃/LSB形式表示。溫度值格式如下:23 22 21 20 2-1 2-2 2-3 2-4LSB MSBS S S S S 26 25 24LSB MSB定位跳過ROM(CCH) 此命令執(zhí)行后的存儲(chǔ)器操作將針對(duì)在線的所有DS1820搜ROM(F0H) 識(shí)別總線上各器件的編碼,為操作各器件作好準(zhǔn)備報(bào)警搜索(ECH) 僅溫度超越極限的器件對(duì)此命令做出響應(yīng)黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 9 頁 這是12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲(chǔ)在DS18B20的兩個(gè)8比特的RAM中,二進(jìn)制中的前面5位是符號(hào)位,如果測(cè)得的溫度大于0,這5位為0,只要將測(cè)到的數(shù)值乘于0.0625即可得到實(shí)際溫度;如果溫度小于0,這5位為1,測(cè)到的數(shù)值需要取反加1再乘于0.0625即可得到實(shí)際溫度。圖中,S表示位。對(duì)應(yīng)的溫度計(jì)算:當(dāng)符號(hào)位S=0 時(shí),表示測(cè)得的溫度值為正值,直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)S=1時(shí),表示測(cè)得的溫度值為負(fù)值,先將補(bǔ)碼變換為原碼,再計(jì)算十進(jìn)制值。例如+125℃的數(shù)字輸出為07D0H,-55℃的數(shù)字輸出為FC90H。另外,由于 DS18B20 單線通信功能是分時(shí)完成的,他有嚴(yán)格的時(shí)隙概念,因此讀寫時(shí)程序很重要。系統(tǒng)對(duì) DS18B20 的各種操作必須按協(xié)議進(jìn)行。操作協(xié)議為:初始化DS18B20(發(fā)復(fù)位脈沖) →發(fā) ROM 功能命令→發(fā)存儲(chǔ)器操作命令 →處理數(shù)據(jù)。在正常測(cè)溫情況下,DS1820 的測(cè)溫分辨力為 0.5℃,可采用下述方法獲得高分辨率的溫度測(cè)量結(jié)果:首先用 DS1820 提供的讀暫存器指令(BEH)讀出以 0.5℃為分辨率的溫度測(cè)量結(jié)果,然后切去測(cè)量結(jié)果中的最低有效位(LSB),得到所測(cè)實(shí)際溫度的整數(shù)部分 Tz,然后再用 BEH 指令取計(jì)數(shù)器 1 的計(jì)數(shù)剩余值 Cs 和每度計(jì)數(shù)值 CD。考慮到 DS1820 測(cè)量溫度的整數(shù)部分以 0.25℃、0.75℃為進(jìn)位界限的關(guān)系,實(shí)際溫度 Ts可用下式計(jì)算:Ts =(Tz-0.25℃)+(CD-Cs)/CD2.2.3 DS18B20 使用中的注意事項(xiàng)和控制方法DS18B20 雖然具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意以下幾方面的問題:●DS18B20 從測(cè)溫結(jié)束到將溫度值轉(zhuǎn)換成數(shù)字量需要一定的轉(zhuǎn)換時(shí)間,這是必須保證的,不然會(huì)出現(xiàn)轉(zhuǎn)換錯(cuò)誤的現(xiàn)象,使溫度輸出總是顯示85?!裨趯?shí)際使用中發(fā)現(xiàn),應(yīng)使電源電壓保持在5V 左右,若電源電壓過低,會(huì)使所測(cè)得的溫度精度降低?!褫^小的硬件開銷需要相對(duì)復(fù)雜的軟件進(jìn)行補(bǔ)償,由于DS1820 與微處理器間采用串黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 10 頁 行數(shù)據(jù)傳送,因此,在對(duì)DS1820進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測(cè)溫結(jié)果。在使用PL/M、C等高級(jí)語言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對(duì)DS1820操作部分最好采用匯編語言實(shí)現(xiàn)。●在 DS18B20的有關(guān)資料中均未提及單總線上所掛DS18B20 數(shù)量問題,容易使人誤認(rèn)為可以掛任意多個(gè)DS18B20,在實(shí)際應(yīng)用中并非如此,當(dāng)單總線上所掛DS18B20 超過8個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問題,這一點(diǎn)在進(jìn)行多點(diǎn)測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要加以注意。●在 DS18B20測(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í)也要給予一定的重視。在硬件上,DS18B20與單片機(jī)的連接有兩種方法,一種是VCC接外部電源,GND接地,I/O 與單片機(jī)的I/O 線相連;另一種是用寄生電源供電,此時(shí)UDD、GND 接地,I/O接單片機(jī) I/O。無論是內(nèi)部寄生電源還是外部供電,I/O口線要接5KΩ 左右的上拉電阻。此次設(shè)計(jì)選擇的是前面一種控制。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.3 顯示元件的選擇顯示元件本設(shè)計(jì)選擇四位一體的八段共陰極數(shù)碼管。數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個(gè)發(fā)光二極管單元(多一個(gè)小數(shù)點(diǎn)顯示);按能顯示多少個(gè)“8”可分為1位、2位、4位等等數(shù)碼管; 按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。共陽數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數(shù)碼管。共陽數(shù)碼管在黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 11 頁 應(yīng)用時(shí)應(yīng)將公共極COM接到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時(shí),相應(yīng)字段就點(diǎn)亮。當(dāng)某一字段的陰極為高電平時(shí),相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時(shí)應(yīng)將公共極COM接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽極為高電平時(shí),相應(yīng)字段就點(diǎn)亮.當(dāng)某一字段的陽極為低電平時(shí),相應(yīng)字段就不亮。數(shù)碼管要正常顯示,就要用驅(qū)動(dòng)電路來驅(qū)動(dòng)數(shù)碼管的各個(gè)段碼,從而顯示出需要的數(shù)字,因此根據(jù)數(shù)碼管的驅(qū)動(dòng)方式的不同,可以分為靜態(tài)式和動(dòng)態(tài)式兩類。靜態(tài)顯示驅(qū)動(dòng)靜態(tài)驅(qū)動(dòng)也稱直流驅(qū)動(dòng).靜態(tài)驅(qū)動(dòng)是指每個(gè)數(shù)碼管的每一個(gè)段碼都由一個(gè)單片機(jī)的I/O 端口進(jìn)行驅(qū)動(dòng),或者使用如 BCD 碼的二→十進(jìn)制譯碼器譯碼進(jìn)行驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)的優(yōu)點(diǎn)是編程簡(jiǎn)單,顯示亮度高,缺點(diǎn)是占用 I/O 端口多,如驅(qū)動(dòng) 5 個(gè)數(shù)碼管靜態(tài)顯示則需要 5×8=40 根 I/O 端口來驅(qū)動(dòng),要知道一個(gè) 89S51 單片機(jī)可用的 I/O 端口才 32個(gè)呢,實(shí)際應(yīng)用時(shí)必須增加譯碼驅(qū)動(dòng)器進(jìn)行驅(qū)動(dòng),增加了硬件電路的復(fù)雜性。動(dòng)態(tài)顯示驅(qū)動(dòng)數(shù)碼管動(dòng)態(tài)顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的 8 個(gè)顯示筆劃“a,b,c ,d,e,f,g,dp”的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極 COM 增加位選通控制電路,位選通由各自獨(dú)立的 I/O 線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會(huì)顯示出字形,取決于單片機(jī)對(duì)位選通 COM 端電路的控制,所以只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會(huì)亮。通過分時(shí)輪流控制各個(gè)數(shù)碼管的的 COM 端,就使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。在輪流顯示過程中,每位數(shù)碼管的點(diǎn)亮?xí)r間為 1~2ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會(huì)有閃爍感,動(dòng)態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的 I/O 端口,而且功耗更低。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 12 頁 第3章 硬件設(shè)計(jì)3.1 復(fù)位電路為確保兩點(diǎn)間溫度控制系統(tǒng)中電路穩(wěn)定可靠工作,復(fù)位電路是必不可少的一部分,復(fù)位電路的第一功能是上電復(fù)位。一般電路正常工作需要供電電源為 5V±5%,即4.75~5.25V復(fù)位是單片機(jī)的初始化操作,其目的是使 CPU 及各專用寄存器處于一個(gè)確定的初始狀態(tài)。如:把 PC 的內(nèi)容初始化為 0000H,使單片機(jī)從 0000H 單元開始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)單片機(jī)系統(tǒng)在運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需要復(fù)位以使其恢復(fù)正常工作狀態(tài)。RST 端的外部復(fù)位電路有兩種操作方式:上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種,本系統(tǒng)設(shè)計(jì)采用上電復(fù)位,如圖 3.1 所示。上電復(fù)位是直接將 RST 端通過電阻接高電平來實(shí)現(xiàn)單片機(jī)的復(fù)位。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 13 頁 圖 3.1 復(fù)位電路3.2 時(shí)鐘電路單片機(jī)的時(shí)鐘信號(hào)用來提供單片機(jī)內(nèi)各種微操作的時(shí)間基準(zhǔn),時(shí)鐘電路用于產(chǎn)生單片機(jī)工作所需要的時(shí)鐘信號(hào)。時(shí)鐘信號(hào)通常用兩種電路形式得到:內(nèi)部振蕩和外部振蕩。本系統(tǒng)設(shè)計(jì)采用內(nèi)部振蕩方式,如圖 3.2 所示。MCS-51 單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反向放大器,引腳 XTALl 和 XTAL2 分別是此放大電器的輸入端和輸出端,由于采用內(nèi)部方式時(shí),電路簡(jiǎn)單,所得的時(shí)鐘信號(hào)比較穩(wěn)定,實(shí)際使用中常采用這種方式.本設(shè)計(jì)中晶振取 12MHz。圖3.2 時(shí)鐘電路3.3 顯示電路黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 14 頁 圖3.3 顯示電路正如前面所說顯示電路采用的元器件為四位一體的八段共陰極數(shù)碼管。采用動(dòng)態(tài)顯示驅(qū)動(dòng)形式,電路圖如下。P0.0~P0.7 為數(shù)據(jù)輸入端,根據(jù)所要顯示的不同數(shù)據(jù)從數(shù)組里進(jìn)行調(diào)取。由于 P0 口本身驅(qū)動(dòng)能力有限,所以需要在 P0 口接上拉電阻,以保證有合適的電流來驅(qū)動(dòng)數(shù)碼管進(jìn)行顯示。P2.0~P2.3 為位選擇端口,分別控制四位數(shù)碼管的顯示與否。本設(shè)計(jì)通過選擇位的不同對(duì)四位數(shù)碼管進(jìn)行分別顯示,利用人眼的視覺暫留以達(dá)到顯示數(shù)據(jù)的目的。此電路的優(yōu)點(diǎn)的電路簡(jiǎn)單控制方便??梢詫?shí)現(xiàn)四位數(shù)碼管的分別控制,以便于實(shí)現(xiàn)多方面的顯示需求。3.4 測(cè)溫電路測(cè)溫電路采用的元件即為 DS18B20。測(cè)溫電路采用外部供電方式。VCC 接外部電源,GND 接地,I/O 與單片機(jī)的 P2.6 口相連, I/O 口線接 4.7KΩ 左右的上拉電阻。單片機(jī)的數(shù)據(jù)讀取和輸出都通過 P2.6 口與 DS18B20 的 I/O 口進(jìn)行。采用單串口進(jìn)行數(shù)據(jù)通信,電路設(shè)計(jì)簡(jiǎn)單.但對(duì)軟件有更多的要求。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 15 頁 圖3.4 測(cè)溫電路3.5 控制電路圖3.5 控制電路本電路摒棄了復(fù)雜的矩陣鍵盤電路,而僅僅采用了四個(gè)按鍵組成簡(jiǎn)單電路來實(shí)現(xiàn)需要的控制。不僅降低了硬件的成本,也使編程變的簡(jiǎn)單.電路圖如下。四個(gè)按鍵分別連接單片機(jī)的 P3.1,P3.0,P3.2 和 P3.3 端。P3.2 和 P3.3 為外部中斷端口,通過他們來進(jìn)行相應(yīng)的控制操作。而 P3.1 和 P3.0 端口則分別實(shí)現(xiàn)了數(shù)據(jù)的減和增的操作。操作起來簡(jiǎn)單易懂,硬件開發(fā)的消耗也大為減少。3.6 報(bào)警電路本設(shè)計(jì)采用軟件處理報(bào)警,利用有源蜂鳴器進(jìn)行報(bào)警輸出,采用直流供電。當(dāng)所測(cè)溫度超過或者低于所預(yù)設(shè)的溫度時(shí),數(shù)據(jù)口相應(yīng)位拉高電平,報(bào)警輸出。(也可采用發(fā)光二級(jí)管報(bào)警電路,如果需要報(bào)警,則只需將相應(yīng)位置 1,當(dāng)參數(shù)判斷完畢后,再看報(bào)警模型單元 ALARM 的內(nèi)容是否與預(yù)設(shè)一樣,如不一樣,則發(fā)光報(bào)警)。并在電黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 16 頁 路中添加開關(guān)按鍵,只有當(dāng)開關(guān)閉合時(shí)才會(huì)報(bào)警,否則僅僅顯示溫度,通過開關(guān)鍵控制報(bào)警,非常方便和容易操作。報(bào)警電路硬件連接見圖。蜂鳴器通過 NPN 管連接到單片機(jī)的 P1.7 口,采用外部電源進(jìn)行連接,NPN 起到了電流放大的作用,以保證有足夠的電流去驅(qū)動(dòng)蜂鳴器進(jìn)行報(bào)警。圖3.6 報(bào)警電路3.7 整機(jī)電路及工作原理當(dāng)接通電源以后,溫度傳感器正常工作,溫度傳感器將根據(jù)被測(cè)溫度的不同來采集不同的數(shù)據(jù),然后通過計(jì)算把數(shù)據(jù)轉(zhuǎn)化成相應(yīng)的字庫代碼,通過調(diào)用字庫數(shù)組的數(shù)據(jù)進(jìn)行數(shù)字的顯示。通過外部中斷 1 可以進(jìn)行時(shí)間顯示與溫度顯示的切換。當(dāng)處于不同的顯示狀態(tài)時(shí)可以通過外部中斷 0 來實(shí)現(xiàn)時(shí)間的調(diào)整和溫度上下限的調(diào)整。P3.0 口實(shí)現(xiàn)了數(shù)據(jù)的增加,每按一下按鈕數(shù)據(jù)會(huì)增加一個(gè),為 P3.1 口則實(shí)現(xiàn)的數(shù)據(jù)的遞減。在程序中設(shè)定數(shù)據(jù)上下限以防止數(shù)據(jù)的溢出。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 17 頁 圖3.7 原理圖黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 18 頁 第4章 軟件設(shè)計(jì)從軟件的功能不同可分為兩大類:一是監(jiān)控軟件(主程序),它是整個(gè)控制系統(tǒng)的核心,專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系。二是執(zhí)行軟件(子程序),它是用來完成各種實(shí)質(zhì)性的功能如測(cè)量、計(jì)算、顯示、通訊等。每一個(gè)執(zhí)行軟件也就是一個(gè)小的功能執(zhí)行模塊。這里將各執(zhí)行模塊一一列出,并為每一個(gè)執(zhí)行模塊進(jìn)行功能定義和接口定義。各執(zhí)行模塊規(guī)劃好后,就可以規(guī)劃監(jiān)控程序了。首先要根據(jù)系統(tǒng)的總體功能選擇一種最合適的監(jiān)控程序結(jié)構(gòu),然后根據(jù)實(shí)時(shí)性的要求,合理地安排監(jiān)控軟件和各執(zhí)行模塊之間地調(diào)度關(guān)系。4.1 主程序模塊主程序主要完成硬件初始化,顯示切換等功能主程序如下:M a i n 函數(shù)定時(shí)器 0 初始化獲取溫度限值判斷 d i s p 值進(jìn)行相應(yīng)調(diào)用圖 4.1 主程序流程圖void main( ){Speak=0; //蜂鳴器關(guān)閉TMOD=0x11; //定時(shí)器 0 初始化黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 19 頁 IE=0x8f;TCON=0x05;TH0=0X3C;TL0=0XB0;TR0=1;Recall( ); //獲取溫度限值while(1){ switch(disp) { case 0:temp( );break; //溫度顯示 case 1:time( );break; //時(shí)間顯示 case 2:tempset( );break; //溫度上下限調(diào)整 case 3:timeset( );break; } //時(shí)間調(diào)整 }}4.2 溫度測(cè)量相關(guān)模塊DS18B20 初始化程序如下:reset( ){char presence=1;while(presence){while(presence){DQ=1;_nop_( );_nop_( );DQ=0; 黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 20 頁 delay(50); // 550usDQ=1; delay(6); // 66uspresence=DQ;}delay(45); presence = ~DQ;}DQ=1;} D S 1 8 B 2 0 初始化D Q 置 1D Q 清零 , 復(fù)位延時(shí) 5 5 0 u sD Q 置 1延時(shí) 6 6 u s獲取 D Q 狀態(tài)延時(shí) 2 0 0 u sD Q 置 1結(jié)束圖 4.2 DS18B20 初始化流程圖黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 21 頁 DS18B20 取數(shù)據(jù)圖4.3 DS18B20讀數(shù)據(jù)流程圖程序如下:uchar readbyte(void) {uchar i;uchar value = 0;for (i=8;i>0;i--){DQ=1; _nop_( );_nop_( );value>>=1;黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 22 頁 DQ = 0; //_nop_( );_nop_( );_nop_( );_nop_( ); //4usDQ = 1; _nop_( );_nop_( );_nop_( );_nop_( ); //4us if(DQ)value|=0x80;delay(6); //66μs}DQ=1;return(value);DS18B20 寫數(shù)據(jù)圖4.4 DS18B20寫數(shù)據(jù)流程圖黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 23 頁 程序如下:void writebyte(uchar val){uchar i;for (i=8; i>0; i--) //{DQ=1; _nop_( );_nop_( ); DQ=0; _nop_( );_nop_( );_nop_( );_nop_( );_nop_( );//5usDQ = val&0x01; delay(6); //66usval=val/2; }DQ = 1;delay(1); }溫度讀取與轉(zhuǎn)換及報(bào)警程序程序如下:void GetTemp( ){uchar n=0,temp;reset( ); //DS18B20 復(fù)位writebyte(0xCC); // Skip ROMwritebyte(0xBE); // 發(fā)送讀取命令TL=readbyte( ); //讀取溫度低 8 位TH=readbyte( ); //讀取溫度高 8 位reset( ); //復(fù)位黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 24 頁 writebyte(0xCC); // Skip ROMwritebyte(0x44); //發(fā)送轉(zhuǎn)換命令if((TH&0xf8)!=0x00){TH=~(TH);TL=~(TL)+1;n=1;} //負(fù)溫度求補(bǔ)碼if(TL>255)TH++; //數(shù)值轉(zhuǎn)換temp=TL&0x0f;shifen=ditab[temp];temp=((TL&0xf0)>>4)|((TH&0x07)=TH2)) //判斷溫度是否在報(bào)警范圍內(nèi)Speak=1;elseSpeak=0;}本設(shè)計(jì)將溫度獲取轉(zhuǎn)換程序與報(bào)警程序融合在一起,簡(jiǎn)化了程序的復(fù)雜度,并且通過硬件開關(guān)來控制報(bào)警系統(tǒng)的開通與閉合,更加方便直接.溫度上下限設(shè)置程序黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 25 頁 程序如下:void tempset( ){switch(pic){case 0: v1(TL2/100);v2(TL2/10%10);v3(TL2%10);v4(10);//下限值設(shè)置if(P30==0) //數(shù)值增加 1{delay(600);while(P30==0);++TL2;if(TL2>99)TL2=0;}if(P31==0) //數(shù)值減少 1{delay(600);while(P31==0);if(TL2==0)TL2=99;--TL2;}break; case 1:v1(TH2/100);v2(TH2/10%10);v3(TH2%10); //上限值設(shè)置if(P30==0) //增 1{delay(600);while(P30==0);++TH2;黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 26 頁 if(TH2>99)TH2=0;}if(P31==0) //減 1{delay(600);while(P31==0);if(TH2==0)TH2=99;--TH2;}break;case 2:if(TH260)minter=0;}if(P31==0) //分鐘-1{ delay(600);while(P31==0);if(minter==0)minter=61;--minter; }break;case 2:v1(hour/10);v2(hour%10); //小時(shí)修改if(P30==0) //小時(shí)+1{delay(600);while(P30==0);++hour; if(hour>24)hour=0;}if(P31==0) //小時(shí)-1{delay(600);while(P31==0);if(hour==0)hour=25;--hour;}break;case 3:disp=1;pic=0;}}4.4 中斷相關(guān)程序1、外部中斷黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 29 頁 void intersvr0(void) interrupt 0 { P0=0X00;delay(600); //主要通過改變 pic 值輔助數(shù)據(jù)修改if(disp==0)disp=2;else if(disp==1)disp=3;else++pic; }2、外部中斷void zhuanhuan(void) interrupt 2 { P0=0X00; //通過改變 disp 的值進(jìn)行顯示切換delay(600);++disp; if(disp>1)disp=0;}3、定時(shí)器中斷 void int1()interrupt 1 {TH0=0X3C; //重新開始計(jì)時(shí),計(jì)時(shí)時(shí)間 50MSTL0=0XB0;++court;if(court==20) //計(jì)數(shù) 20 次,分鐘加 1{court=0;++second;黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 30 頁 if(second==60){second=0;++minter;if(minter==60){minter=0;++hour;if(hour==24)hour=0;} }}}4.5 其他相關(guān)程序1、延時(shí)程序void delay(uint n) { while(n--); }2、實(shí)現(xiàn)調(diào)整時(shí)的屏幕閃爍顯示void shanshuo() { ++x;if(x==300){P0=0X00; delay(25000);x=0;}}3、數(shù)碼管顯示程序void v4(int a) //顯示數(shù)碼管第 4 位 { P0=d[a];P23=0;黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 31 頁 delay(15);P23=1;}void v3(int b) //顯示數(shù)碼管第 3 位{P0=d[b]; P22=0;delay(15);P22=1;}void v2(int c) //顯示數(shù)碼管第 2 位{P0=d[c];P21=0;delay(15);P21=1;}void v1(int e) //顯示數(shù)碼管第 1 位{P0=d[e];P20=0;delay(15);P20=1;}黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 32 頁 第5章 Proteus進(jìn)行仿真程序編寫完以后,我們先對(duì)其進(jìn)行仿真,初步驗(yàn)證電路圖和程序的可行性和正確性。5.1 Proteus簡(jiǎn)介Proteus 是英國 Labcenter 公司開發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于Windows 操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路,該軟件的特點(diǎn)是:1 實(shí)現(xiàn)了單片機(jī)仿真和 SPICE 電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232 動(dòng)態(tài)仿真、I 2C 調(diào)試器、SPI 調(diào)試器、鍵盤和 LCD 系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。2 支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單片機(jī)類型有:ARM7(LPC21xx)、 8051/52 系列、AVR 系列、PIC10/12/16/18 系列、 HC11 系列以及多種外圍芯片。3 提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如 Keil C51 uVision2、MPLAB等軟件。 具有強(qiáng)大的原理圖繪制功能??傊撥浖且豢罴瘑纹瑱C(jī)和 SPICE 分析于一身的仿真軟件,功能極其強(qiáng)大。 proteus6.5 是目前最好的模擬單片機(jī)外圍器件的工具,真的很不錯(cuò)??梢苑抡?51 系列、AVR、PIC 等常用的 MCU 及其外圍電路(如LCD、RAM、 ROM、鍵盤、馬達(dá)、LED、AD/DA、部分 SPI 器件、部分 IIC 器件、…) 其實(shí) Proteus 與 Multisim 比較類似,只不過它可以仿真 MCU。5.2 Proteus仿真圖為了方便記錄溫度,在初始的時(shí)候?qū)r(shí)間進(jìn)行設(shè)置。通過 S1 進(jìn)行時(shí)間和溫度的切換,來實(shí)現(xiàn)對(duì)時(shí)間的調(diào)整。通過按鈕 S2 對(duì)時(shí)間的小時(shí)和分鐘進(jìn)行切換。S3 對(duì)時(shí)間的數(shù)值進(jìn)行減一,S4 對(duì)時(shí)間的數(shù)值進(jìn)行加一。如下圖所示: 黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 33 頁 在初始的時(shí)候?qū)囟鹊纳舷拗岛拖孪拗颠M(jìn)行測(cè)試,以便于符合實(shí)際的生產(chǎn)應(yīng)用。通過 S1 進(jìn)行時(shí)間和溫度的切換,來實(shí)現(xiàn)對(duì)溫度的設(shè)置。通過按鈕 S2 對(duì)溫度的上限值和下限值進(jìn)行數(shù)值設(shè)置切換。S3 對(duì)溫度的限制值進(jìn)行減一,S4 對(duì)溫度的限制值進(jìn)行加黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 34 頁 一。設(shè)置最高報(bào)警溫度為 99 度,最低報(bào)警溫度零度。如下圖所示,當(dāng)溫度超過設(shè)置的報(bào)警溫度的時(shí)候,會(huì)出現(xiàn)二級(jí)管進(jìn)行發(fā)光的情況,從而提示報(bào)警。本次軟件調(diào)試通過。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 35 頁 總結(jié)本設(shè)計(jì)是利用 AT89C51 芯片控制溫度傳感器 DS18B20,再輔之以部分外圍電路實(shí)現(xiàn)對(duì)環(huán)境溫度的測(cè)取,性能穩(wěn)定,精度度高,而且擴(kuò)展性好.并且通過單片機(jī)的計(jì)數(shù)器配合 12MHz 的晶振實(shí)現(xiàn)了時(shí)間顯示的功能。DS18B20 本身具有保存溫度限值的功能,使得溫度上下限值不容易丟失。由于 DS18B20 的測(cè)量精度只有±0.5℃,往往很多場(chǎng)合需要更加精確的溫度,在所測(cè)溫度精度不變的基礎(chǔ)上必須對(duì)數(shù)據(jù)進(jìn)行校正。經(jīng)過三個(gè)月的學(xué)習(xí)和積累,終于完成了此次課程設(shè)計(jì),雖然有些地方仍存有缺陷但基本的要求都已經(jīng)達(dá)到。在本次設(shè)計(jì)的過程中,遇到了許多自己不懂的問題,不熟悉的器件。這個(gè)時(shí)候通過咨詢老師和查詢資料是最好的解決方法,在牛老師的幫助和指導(dǎo)下我克服了一個(gè)個(gè)的知識(shí)缺陷。掌握了設(shè)計(jì)中所需的元器件的應(yīng)用及編程。畢業(yè)設(shè)計(jì)重點(diǎn)就在于單片機(jī)硬件方面的設(shè)計(jì)和軟件的設(shè)計(jì),硬件電流圖本設(shè)計(jì)采用了最簡(jiǎn)單的設(shè)計(jì)方案。盡量減少了硬件方面的消耗。本次設(shè)計(jì)讓我掌握了許多新鮮的知識(shí),自己的很多能力也得到了提高與鍛煉。為以后在社會(huì)工作打下了一定基礎(chǔ)。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 36 頁 致謝四年的讀書生活在這個(gè)季節(jié)即將劃上一個(gè)句號(hào),而于我的人生卻只是一個(gè)逗號(hào),我將面對(duì)又一次征程的開始。四年的求學(xué)生涯在師長、親友的大力支持下,走得辛苦卻也收獲滿囊,在論文即將付梓之際,思緒萬千,心情久久不能平靜。 偉人、名人為我所崇拜,可是我更急切地要把我的敬意和贊美獻(xiàn)給一位平凡的人,我的導(dǎo)師。我不是您最出色的學(xué)生,而您卻是我最尊敬的老師。您治學(xué)嚴(yán)謹(jǐn),學(xué)識(shí)淵博,思想深邃,視野雄闊,為我營造了一種良好的精神氛圍。授人以魚不如授人以漁,置身其間,耳濡目染,潛移默化,使我不僅接受了全新的思想觀念,樹立了宏偉的學(xué)術(shù)目標(biāo),領(lǐng)會(huì)了基本的思考方式,從論文題目的選定到論文寫作的指導(dǎo),經(jīng)由您悉心的點(diǎn)撥,再經(jīng)思考后的領(lǐng)悟,常常讓我有“山重水復(fù)疑無路,柳暗花明又一村”。 感謝我的爸爸媽媽,焉得諼草,言樹之背,養(yǎng)育之恩,無以回報(bào),你們永遠(yuǎn)健康快樂是我最大的心愿。在論文即將完成之際,我的心情無法平靜,從開始進(jìn)入課題到論文的順利完成,有多少可敬的師長、同學(xué)、朋友給了我無言的幫助,在這里請(qǐng)接受我誠摯謝意! 同時(shí)也感謝學(xué)院為我提供良好的做畢業(yè)設(shè)計(jì)的環(huán)境。 最后再一次感謝所有在畢業(yè)設(shè)計(jì)中曾經(jīng)幫助過我的良師益友和同學(xué),以及在設(shè)計(jì)中被我引用或參考的論著的作者。黃 河 科 技 學(xué) 院 畢 業(yè) 設(shè) 計(jì) 說 明 書 第 37 頁 參考文獻(xiàn)[1]魏偉,胡瑋 ,王永清.51 單片機(jī) C 語言開發(fā)與應(yīng)用技術(shù)案例詳解[M].北京:化學(xué)工業(yè)出版社.2010.[2]皮大能,南光群 ,劉金華.單片機(jī)課程設(shè)計(jì)指導(dǎo)書[M].北京:北京理工大學(xué)出版社.2010.[3]王質(zhì)樸. MCS-51 單片機(jī)原理接口及應(yīng)用[M]. 北京理工大學(xué)出版社.2009.[4]吳金戎. 8051 單片機(jī)實(shí)踐與應(yīng)用[M]. 清華大學(xué)出版社.2003.[5]李朝青.單片機(jī)原理及接口技術(shù)(簡(jiǎn)明修訂版)[M].杭州:北京航空航天大學(xué)出版社.1998[6]李廣第. 單片機(jī)基礎(chǔ) [M].北京: 北京航空航天大學(xué)出版社.1994[7]夏路易. 單片機(jī)技術(shù)基礎(chǔ)教程與實(shí)踐[M].電子工業(yè)出版社.2008.[8]徐敏.基于 AT89C51 單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì)[J ].數(shù)字技術(shù)與應(yīng)用.2009.[9]馬云峰. 單片機(jī)與數(shù)字溫度傳感器 DS18B20 的接口設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制. 2002.[10]江太輝,鄧展威 .DS18B20 數(shù)字式溫度傳感器的特性與應(yīng)用[J].電子技術(shù). 2003.[11]蔣輝平.于 Proteus 的單片機(jī)系統(tǒng)設(shè)計(jì)與仿真實(shí)例[M].機(jī)械工業(yè)出版社.2009.[12]周航慈.單片機(jī)應(yīng)用程序設(shè)計(jì).北京航空航天大學(xué)出版社,1991.8 [13]王毅.單片機(jī)器件應(yīng)用手冊(cè).人民郵電出版社,1994[15]楊振江等 .智能儀器與數(shù)據(jù)采集系統(tǒng)中的新器件及應(yīng)用.西安電子科技大學(xué)出版社,2001.12[16]何希才,虹敏 .傳感器應(yīng)用接口電路.機(jī)械工業(yè)出版社,1997 年[17] V. Yu. Teplov,A. V. Anisimov. Thermostatting System Using a Single-Chip Microcomputer and Thermoelectric Modules Based on the Peltier Effect[J] ,2002 [18] Meehan Joanne,Muir Lindsey.SCM in Merseyside SMEs:Benefits and barriers[J].TQM Journal. 2008
收藏
編號(hào):157265
類型:共享資源
大?。?span id="mzebxcnn0" class="font-tahoma">2.19MB
格式:RAR
上傳時(shí)間:2017-10-27
50
積分
- 關(guān) 鍵 詞:
-
基于
單片機(jī)
溫度
檢測(cè)
控制
節(jié)制
- 資源描述:
-
1928_基于單片機(jī)的溫度檢測(cè)控制,基于,單片機(jī),溫度,檢測(cè),控制,節(jié)制
展開閱讀全文
- 溫馨提示:
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ì)自己和他人造成任何形式的傷害或損失。
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請(qǐng)勿作他用。