多功能多點(diǎn)溫度采集設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第1頁(yè)
多功能多點(diǎn)溫度采集設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第2頁(yè)
多功能多點(diǎn)溫度采集設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第3頁(yè)
多功能多點(diǎn)溫度采集設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第4頁(yè)
多功能多點(diǎn)溫度采集設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(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、華南師范大學(xué)增城學(xué)院2007級(jí)本科生畢業(yè)論文辯論設(shè)計(jì)者:唐慶良基于單總線DS18B20溫度傳感器的多點(diǎn)溫度采集系統(tǒng)的設(shè)計(jì)與制作多功能多點(diǎn)溫度采集設(shè)計(jì)與實(shí)現(xiàn) 系 別:計(jì)算機(jī)系專業(yè)班級(jí):07信息管理1班指導(dǎo)老師:簡(jiǎn) 介 Synopsis華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良 本課題主要研究基于STC89C52單片機(jī)與單總線溫度傳感器DS18B20的多點(diǎn)溫度測(cè)量系統(tǒng)。它是以STC89C52單片機(jī)為主控制芯片,采用數(shù)字溫度傳感器DS18B20實(shí)現(xiàn)多路溫度的檢測(cè),測(cè)量精度可以到達(dá)0.5。該系統(tǒng)采用了LED16x64點(diǎn)陣顯示模塊,該模塊用于提示當(dāng)前的操作情況與顯示溫度,運(yùn)用單片機(jī)與PC機(jī)通信技

2、術(shù)實(shí)現(xiàn)對(duì)DS18B20的序列號(hào)讀取;通過紅外遙控器控制讀取某一點(diǎn)的溫度,實(shí)現(xiàn)無線通信?;趩慰偩€DS18B20溫度傳感器的多點(diǎn)溫度采集系統(tǒng)的設(shè)計(jì)與制作第一章 背景及研究意義溫度傳感器的發(fā)展階段 模擬集成溫度傳感器 智能溫度傳感器 數(shù)字溫度傳感器 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良該傳感器是采用硅半導(dǎo)體集成工藝制成,具有功能單一、測(cè)溫誤差小、價(jià)格低、響應(yīng)速度快、傳輸距離遠(yuǎn)、體積小、微功耗等,適合遠(yuǎn)距離測(cè)溫、控溫,不需要進(jìn)行非線性校準(zhǔn),外圍電路簡(jiǎn)單 它的特點(diǎn)是能輸出溫度數(shù)據(jù)及相關(guān)的溫度控制量,需配相應(yīng)的微控制器(MCU);并且它是在硬件的根底上通過軟件來實(shí)現(xiàn)測(cè)試功能的,其智能化程度

3、也取決于軟件的開發(fā)水平 它將非電模擬量溫度值轉(zhuǎn)換為數(shù)字信號(hào)輸出,能夠直接讀取被測(cè)物體的溫度值。它體積小,電壓適用范圍寬 3 V5 V,用戶還可以通過編程實(shí)現(xiàn) 912 位的溫度讀數(shù),即具有可調(diào)的溫度分辨率第一章 背景及研究意義智能溫度傳感器發(fā)展的新趨勢(shì) 提高測(cè)溫精度和分辨力 增加測(cè)試功能 總線技術(shù)的標(biāo)準(zhǔn)化與規(guī)范化 在20世紀(jì)90年代中期最早推出的智能溫度傳感器,采用的是8位A/D轉(zhuǎn)換器,其測(cè)溫精度較低,分辨力只能到達(dá)1C。目前,國(guó)外已相繼推出多種高精度、高分辨力的智能溫度傳感器,所用的是912位A/D轉(zhuǎn)換器,分辨力一般可達(dá)0.50.0625C。 主要包括單次轉(zhuǎn)換模式、連續(xù)轉(zhuǎn)換模式、待機(jī)模式,有的

4、還增加了低溫極限擴(kuò)展模式,操作非常簡(jiǎn)便 目前,智能溫度傳感器的總線技術(shù)也實(shí)現(xiàn)了標(biāo)準(zhǔn)化、標(biāo)準(zhǔn)化,所采用的總線主要有單線(1-Wire)總線、I2C總線、SMBUS總線和SPI總線。溫度傳感器作為從機(jī)可通過專用總線接口與主機(jī)進(jìn)行通信 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良第一章 背景及研究意義華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良 本文介紹一種基于數(shù)字溫度傳感器DS18B20的主從分布式多路測(cè)溫系統(tǒng)、該系統(tǒng)以單片機(jī)為主機(jī),數(shù)字溫度傳感器通過與單片機(jī)P3.7連接,系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,抗干擾能力強(qiáng),適合于惡劣環(huán)境下進(jìn)行現(xiàn)場(chǎng)溫度測(cè)量,可應(yīng)用于倉(cāng)庫(kù)測(cè)溫、樓宇空調(diào)控制和生產(chǎn)過程監(jiān)控、酒窖等

5、領(lǐng)域 選題背景和研究意義第二章 方案論證比較與選擇 引言 溫度測(cè)量的方案有很多種,可以采用傳統(tǒng)的分立式傳感器、模擬集成傳感器以及新興的智能型傳感器。對(duì)于控制系統(tǒng)可以采用計(jì)算機(jī)、單片機(jī)等 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良第二章 方案論證比較與選擇方案設(shè)計(jì) 設(shè)計(jì)方案一 采用模擬分立元件,如電容、電感或晶體管等非線形元件,實(shí)現(xiàn)多點(diǎn)溫度的測(cè)量及顯示,該方案設(shè)計(jì)電路簡(jiǎn)單易懂,操作簡(jiǎn)單,且價(jià)格廉價(jià),但采用分立元件分散性大,不便于集成數(shù)字化,而且測(cè)量誤差大 設(shè)計(jì)方案二 本方案采用STC89C52單片機(jī)為核心,通過溫度傳感器AD590采集溫度信號(hào),經(jīng)信號(hào)放大器放大后,送到A/D轉(zhuǎn)換芯片,最終

6、經(jīng)單片機(jī)檢測(cè)處理溫度信號(hào) ,該方案技術(shù)已經(jīng)成熟,AD轉(zhuǎn)換電路設(shè)計(jì)較煩瑣,而且使用AD590進(jìn)行溫度檢測(cè)必須對(duì)冷端進(jìn)行補(bǔ)償,以減小誤差 方案二系統(tǒng)框圖華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良方案設(shè)計(jì) 方案三系統(tǒng)框圖 設(shè)計(jì)方案三 本設(shè)計(jì)運(yùn)用主從分布式思想,由一個(gè)單片機(jī)控制點(diǎn)陣實(shí)現(xiàn),另一個(gè)單片機(jī)實(shí)現(xiàn)多點(diǎn)溫度數(shù)據(jù)采集,組成兩級(jí)分布式多點(diǎn)溫度測(cè)量的巡回檢測(cè)系統(tǒng)。溫度傳感器采用DS18B20。DS18B20利用單總線的特點(diǎn)可以方便的實(shí)現(xiàn)多點(diǎn)溫度的測(cè)量,輕松的組建傳感器網(wǎng)絡(luò),系統(tǒng)的抗干擾性好、設(shè)計(jì)靈活、方便,而且適合于在惡劣的環(huán)境下進(jìn)行現(xiàn)場(chǎng)溫度測(cè)量 第二章 方案論證比較與選擇華南師范大學(xué)增城學(xué)院

7、07級(jí) 信息管理1班 唐慶良方案論證 基于數(shù)字式溫度計(jì)DS18B20的溫度測(cè)量?jī)x的硬軟件開發(fā)過程是將DS18B20溫度信號(hào)直接轉(zhuǎn)換為數(shù)字信號(hào),實(shí)現(xiàn)了與單片機(jī)的直接接口,從而省去了信號(hào)調(diào)理電路。該儀器電路簡(jiǎn)單、功能可靠、測(cè)量效率高,很好地彌補(bǔ)了傳統(tǒng)溫度測(cè)量方法的缺乏。相對(duì)與方案1,在功能、性能、可操作性等方面都有較大的提升。相對(duì)與方案2,硬件電路簡(jiǎn)單,易于操作,具有更高的性價(jià)比,更大的市場(chǎng)。所以我采用方案3完本錢設(shè)計(jì) 第二章 方案論證比較與選擇華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良 總體設(shè)計(jì)思想STC89C52 單片機(jī)基于單總線DS18B20溫度傳感器的多點(diǎn)溫度采集系統(tǒng)的設(shè)計(jì)與制作華

8、南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良DS18B20讀取序列號(hào)單片機(jī)與PC通信計(jì)算機(jī)顯示序列號(hào)控制 DS18B20 單片機(jī)紅外遙控傳輸數(shù)據(jù)控制LED點(diǎn)陣 單片機(jī)雙機(jī)通信LED點(diǎn)陣模塊提示操作傳輸序列號(hào)到單總線上查找與傳輸?shù)男蛄刑?hào)匹配的DS18B20多個(gè)DS18B20數(shù)碼管顯示 系統(tǒng)設(shè)計(jì)分工唐慶良:主要負(fù)責(zé)總體電路設(shè)計(jì)與電路板制作,紅外線遙控解碼,DS18B20多點(diǎn)溫度讀取 陳維明:主要負(fù)責(zé)DS18B20的序列號(hào)讀取,主機(jī)與從之間的通信實(shí)現(xiàn) 陳倍思:主要負(fù)責(zé)LED16x64點(diǎn)陣的控制,提示當(dāng)前的操作情況 基于單總線DS18B20溫度傳感器的多點(diǎn)溫度采集系統(tǒng)的設(shè)計(jì)與制作華南師范大學(xué)增城學(xué)

9、院 07級(jí) 信息管理1班 唐慶良 本課題研究的多點(diǎn)測(cè)溫系統(tǒng)是以單片機(jī)和單總線數(shù)字溫度傳感器DS18B20為核心,充分利用單片機(jī)優(yōu)越的內(nèi)部和外部資源及數(shù)字溫度傳感器DS18B20的優(yōu)越性能構(gòu)成一個(gè)完備的測(cè)溫系統(tǒng),實(shí)現(xiàn)對(duì)溫度的多點(diǎn)測(cè)量。本課題設(shè)計(jì)了一種合理、可行的單片機(jī)監(jiān)控軟件,完成測(cè)量和顯示的任務(wù)。由于單片機(jī)具有強(qiáng)大的運(yùn)算和控制功能,使得整個(gè)系統(tǒng)具有模塊化、硬件電路簡(jiǎn)單以及操作方便等優(yōu)點(diǎn), 本課題的整個(gè)系統(tǒng)的電路是由單片機(jī)應(yīng)用系統(tǒng)、顯示電路、紅外遙控接收、DS18B20驅(qū)動(dòng)電路,串口通信等構(gòu)成 第三章 硬件設(shè)計(jì) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良單片機(jī)最小應(yīng)用系統(tǒng)電路華南師范大學(xué)

10、增城學(xué)院 07級(jí) 信息管理1班 唐慶良第三章 硬件設(shè)計(jì) 單片機(jī)最小應(yīng)用系統(tǒng)由復(fù)位電路與時(shí)鐘電路組成,復(fù)位電路有上電自動(dòng)復(fù)位與手動(dòng)復(fù)位,如果將P0口作為I/O口,還必須接上上拉電阻紅外線接收電路 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良第三章 硬件設(shè)計(jì) 紅外遙控器是電子設(shè)備常見的輸入裝置,作為人們與電子設(shè)備交流的重要途徑,一旦出錯(cuò),將影響到電子設(shè)備的整體使用,所以接收電路雖然簡(jiǎn)單,但接收電路的穩(wěn)定性、可靠性,應(yīng)引起足夠的重視 溫度傳感器應(yīng)用電路設(shè)計(jì) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良第三章 硬件設(shè)計(jì) DS18B20溫度傳感器的主要特點(diǎn)就是單總線,電路接法簡(jiǎn)單,不用別的復(fù)

11、雜的輔助電路只要一個(gè)10K的上拉電阻,一個(gè)I/O口就可以將多個(gè)18B20接在一條總線下,就實(shí)現(xiàn)多點(diǎn)溫度采集系統(tǒng)的功能了,一條總線上最多可以接2的64次方個(gè)18B20,這里我們只用到了8溫度傳感器,電路簡(jiǎn)單并節(jié)省資源 紅外線接收電路 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良第三章 硬件設(shè)計(jì) 本系統(tǒng)的溫度顯示主要是用到四位共陽(yáng)極數(shù)碼管,電路應(yīng)用簡(jiǎn)單方便 單片機(jī)應(yīng)用軟件系統(tǒng)設(shè)計(jì)包括功能模塊劃分、程序流程確立、模塊接口設(shè)計(jì)以及程序代碼編寫。我們依據(jù)系統(tǒng)的功能要求,將整體軟件系統(tǒng)分割成假設(shè)干個(gè)獨(dú)立的程序模塊。這些程序模塊可以是幾條語句的集合、功能函數(shù)或程序文件。隨后,根據(jù)各程序模塊的實(shí)現(xiàn)功能寫

12、出流程,一般需要寫出具體的實(shí)現(xiàn)功能描述。程序代碼通常采用匯編語言或高級(jí)語言C語言編寫,本系統(tǒng)采用的是C語言 第四章 軟件系統(tǒng)設(shè)計(jì) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良 系統(tǒng)軟件設(shè)計(jì)步驟主要包括系統(tǒng)程序和流程圖,根據(jù)整個(gè)系統(tǒng)的要求,完成溫度的測(cè)量與控制必須經(jīng)過以下幾個(gè)步驟:?jiǎn)纹瑱C(jī)接受傳感器的溫度信號(hào),通過數(shù)碼管將其顯示出來,并向主機(jī)另一個(gè)控制LED點(diǎn)陣的單片機(jī)接收一個(gè)提示信號(hào),實(shí)現(xiàn)讀取某一點(diǎn)的溫度 系統(tǒng)框架圖第四章 軟件系統(tǒng)設(shè)計(jì) 軟件實(shí)現(xiàn)思路 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良第四章 軟件系統(tǒng)設(shè)計(jì) 系統(tǒng)主程序流程圖

13、DS18B20數(shù)字溫度傳感器是DALLAS公司生產(chǎn)的1Wire,即單總線器件,具有線路簡(jiǎn)單,體積小的特點(diǎn)。因此用它來組成一個(gè)測(cè)溫系統(tǒng),具有線路簡(jiǎn)單,在一根通信線,可以掛多這樣的數(shù)字溫度傳感器,十分方便 第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20傳感器程序?qū)崿F(xiàn) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良DS18B20簡(jiǎn)介 第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20傳感器程序?qū)崿F(xiàn) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良DS18B20產(chǎn)品特點(diǎn) 只要求一個(gè)端口即可實(shí)現(xiàn)通信 在DS18B20中的每個(gè)器件上都有獨(dú)一無二的序列號(hào) 測(cè)量溫度范圍在55.C到125.C之間 實(shí)際應(yīng)用中不需要外部任何元器件

14、即可實(shí)現(xiàn)測(cè)溫 內(nèi)部有溫度上、下限告警設(shè)置 數(shù)字溫度計(jì)的分辨率用戶可以從9位到12位選擇 序號(hào)名稱引腳功能描述1GND地信號(hào)2DQ數(shù)字輸入輸出引腳,開漏單總線接口引腳,當(dāng)使用寄生電源時(shí),可向電源提供電源3VDD可選擇的VDD引腳,當(dāng)工作于寄生電源時(shí),該引腳必須接地DS18B20的引腳及其其引腳功能DS18B20的內(nèi)部結(jié)構(gòu) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良 DS18B20的內(nèi)部框圖如左圖所示。暫存器包含兩字節(jié)0和1字節(jié)的溫度存放器,用于存儲(chǔ)溫度傳感器的數(shù)字輸出??梢允褂眉纳娫礊镈S18B20供電;當(dāng)總線為高電平時(shí),功率由單總線上的上拉電阻通過DQ引腳提供;高電平總線信號(hào)同時(shí)也向

15、內(nèi)部電容CPP充電,CPP在總線低電平時(shí)為器件供電 第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20傳感器程序?qū)崿F(xiàn) DS18B20的指令集 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良 前面提及單總線器件的ROM命令,在主機(jī)檢測(cè)到應(yīng)答脈沖后,就可以發(fā)出ROM命令。這些命令與各個(gè)DS18B20設(shè)備的唯一64位ROM代碼相關(guān)。允許主機(jī)在單總線上連接多個(gè)從機(jī)設(shè)備時(shí),指定操作某個(gè)DS18B20設(shè)備。這些命令還允許主機(jī)能夠檢測(cè)到總線上有多少個(gè)從機(jī)設(shè)備,每種命令長(zhǎng)度為8位。主機(jī)在發(fā)出功能命令之前,必須發(fā)送適宜的ROM命令 第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20傳感器程序?qū)崿F(xiàn) 指令協(xié)議功能讀ROM33H讀DS18B

16、20中的編碼(即64位地址)符合ROM55H發(fā)出此命令后,接著發(fā)出64位ROM編碼,訪問單總線上與該編碼相對(duì)應(yīng)的DS18B20,使之做出響應(yīng),為下一步對(duì)該DS18B20的讀寫做準(zhǔn)備搜索ROM0F0H用于確定掛接在同一總線上DS18B20的個(gè)數(shù)和識(shí)別64位ROM地址,為操作各器件作好準(zhǔn)備跳過ROM0CCH忽略64位ROM地址,直接向DS18B20V 溫度轉(zhuǎn)換命令,適用于單個(gè)DS18B20工作報(bào)警搜索命令0ECH執(zhí)行后,只有溫度超過廟宇值上限或下限的片子才做出響應(yīng)溫度轉(zhuǎn)換44H啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換,轉(zhuǎn)換時(shí)間最長(zhǎng)為500ms(典型為200ms),結(jié)果寫入到內(nèi)部9字節(jié)RAM中讀暫存器BEH讀

17、內(nèi)部RAM中9字節(jié)的內(nèi)容寫暫存器4EH發(fā)出向內(nèi)部RAM的第3、4字節(jié)寫上、下溫度數(shù)據(jù)命令,緊該溫度命令之后,傳達(dá)兩字節(jié)的數(shù)據(jù)復(fù)制暫存器48H將RAM中第3、4字內(nèi)容復(fù)制到E2PROM中重調(diào)E2PROM0B8H將E2PROM中內(nèi)容恢復(fù)到RAM中的第3、4字節(jié)讀供電方式0B4H讀DS18B20的供電模式,寄生供電時(shí)DS18B20發(fā)送“0”,外部供電時(shí)DS18B20發(fā)送“1”華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良 DS18B20是在一根I/O線上讀寫數(shù)據(jù),因此,對(duì)讀寫的數(shù)據(jù)位有著嚴(yán)格的時(shí)序要求,只有嚴(yán)格遵守通訊協(xié)議才能保證數(shù)據(jù)傳輸?shù)恼_性和完整性。每次數(shù)據(jù)的傳輸均從主機(jī)啟動(dòng)寫時(shí)序開始,如

18、果要求單總線器件回送數(shù)據(jù),那么在寫命令后,主機(jī)需啟動(dòng)讀時(shí)序完成數(shù)據(jù)接收,數(shù)據(jù)和命令的傳輸都是低位在先 第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20傳感器程序?qū)崿F(xiàn) DS18B20軟件驅(qū)動(dòng)實(shí)現(xiàn)流程圖 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良復(fù)位主要程序代碼如下:void ds1820rst()/ds1820復(fù)位* unsigned char x=0;DQ = 1; /DQ復(fù)位delay_18B20(4); /延時(shí)DQ = 0; /DQ拉低delay_18B20(100); /精確延時(shí)大于480usDQ = 1; /拉高delay_18B20(40); 第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20傳感器程

19、序?qū)崿F(xiàn) DS18B20的復(fù)位時(shí)序 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良 DS18B20的讀時(shí)序是主機(jī)先把單總線拉低,在之后的l5s內(nèi)必須釋放單總線,以便將數(shù)據(jù)傳輸?shù)絾慰偩€上。DS18B20完成一個(gè)讀時(shí)序至少需要60s。讀時(shí)序主要程序代碼如下: unsigned char ds1820rd()/讀數(shù)據(jù) unsigned char i=0;unsigned char dat = 0;for (i=8;i0;i-) DQ = 0; /給脈沖信號(hào) dat=1; DQ = 1; /給脈沖信號(hào) if(DQ) dat|=0 x80; delay_18B20(10); return(dat);第

20、四章 軟件系統(tǒng)設(shè)計(jì) DS18B20傳感器程序?qū)崿F(xiàn) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良寫數(shù)據(jù)主要程序代碼如下:void ds1820wr(uchar wdata)/寫數(shù)據(jù)unsigned char i=0; for (i=8; i0; i-) DQ = 0; DQ = wdata&0 x01; delay_18B20(10); DQ = 1; wdata=1; 第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20傳感器程序?qū)崿F(xiàn) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良 DS18B20復(fù)位后,就可以編程控制讀到其內(nèi)部RAM所采集到的溫度值,由于我們是在一天總線上掛了多個(gè)DS18B20,所

21、以在對(duì)那個(gè)傳感器進(jìn)行讀溫度時(shí),必須先向單總線上寫DS18B20的序列號(hào),才能完成讀溫度操作,讀出數(shù)據(jù)后,還需判斷讀到的溫度是正值還是負(fù)值,當(dāng)溫度值為正值時(shí),直接將二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制溫度值;當(dāng)溫度值為負(fù)值時(shí)先將二進(jìn)制補(bǔ)碼變?yōu)樵a,再轉(zhuǎn)換為十進(jìn)制溫度值 第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20傳感器程序?qū)崿F(xiàn) 向DS18B20寫序列號(hào)程序代碼:void changds18b20_1(uchar pds18bnum88,uchar aa) uchar i; ds1820rst(); delay(1); ds1820wr(0 x55); delay(1); for(i=0;i8;i+) ds1820wr(

22、pds18bnumaai); 讀取DS18B20溫度并轉(zhuǎn)換程序段:read_temp1()/讀取溫度值并轉(zhuǎn)換uchar a,b; ds1820rst(); changds18b20_1(ds18b20num,countnum-1);ds1820wr(0 x44);/啟動(dòng)溫度轉(zhuǎn)換ds1820wr(0 xbe);/讀取溫度a=ds1820rd(); b=ds1820rd();tvalue=b; tvalue=8;tvalue=tvalue|a; if(tvalue32)/檢測(cè)引導(dǎo)碼bitnum=0; irdatabitnum=irtime; irtime=0; bitnum+; if(bitnum

23、=33) bitnum=0; irrecok=1; startflag=0; else startflag=1; irtime=0; 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20控制與顯示設(shè)計(jì) 顯示模塊顯示程序主要是將讀取到的溫度將其在數(shù)碼管上顯示出來,主要程序如下 :void disp_temper(uint temper)/溫度值顯示 uchar temper_ge,temper_shi,temper_bai; temper_ge=temper%10; temper_shi=temper%100/10; temper_bai=temper/100;

24、 if(tflag=1) D4=0; P0=0 xbf; delay(5); D4=1; D3=0; P0=tabtemper_bai; delay(5); D3=1; D2=0; P0=tabtemper_shi+10; delay(5); D2=1; D1=0; P0=tabtemper_ge; delay(5); D1=1;華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良第四章 軟件系統(tǒng)設(shè)計(jì) DS18B20主控制主函數(shù) 主函數(shù)是一個(gè)程序執(zhí)行的開始,主要是控制總個(gè)程序的運(yùn)行的開始,主要程序代碼如下 : void main() uint temper1; it0send();ds1820r

25、st(); delay(1); ds1820wr(0 xcc);/跳過讀序列號(hào) ds1820wr(0 x44);/啟動(dòng)溫度轉(zhuǎn)換 delay(200); while(1) temper1=read_temp1(); disp_temper(temper1); 本課題通過分析比照各種不同的溫度傳感器,選定DS18B20,這種單總線數(shù)字溫度傳感器的通信方式比較獨(dú)特,軟件編寫要求的比較新穎,特點(diǎn)突出。用其構(gòu)建的系統(tǒng)有很多優(yōu)點(diǎn):硬件連線簡(jiǎn)單,省去了使用模擬傳感器要進(jìn)行放大、A/D轉(zhuǎn)換等工作,由于它的級(jí)聯(lián)功能,一條總線可掛接多個(gè)傳感器測(cè)量不同位置的溫度,根據(jù)DS18B20唯一的序號(hào)識(shí)別不同傳感器在各自位置

26、的溫度 。 需要注意的是, 在系統(tǒng)安裝及工作之前應(yīng)將主機(jī)逐個(gè)與DS1820 掛接,以讀出其序列號(hào)。另外,由于DS1820 單線通信功能是分時(shí)完成的,遵循嚴(yán)格的時(shí)隙概念,因此, 系統(tǒng)對(duì)DS1820 和各種操作必須按協(xié)議進(jìn)行,即:初始化DS1820 (發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲(chǔ)器操作命令處理數(shù)據(jù)?,F(xiàn)場(chǎng)溫度直接以“一線總線的數(shù)字方式傳輸,每一個(gè)自帶地址,大大減少了系統(tǒng)的電纜數(shù),提高了系統(tǒng)的穩(wěn)定性和抗干擾性 第五章 調(diào)試與小結(jié) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良硬件電路測(cè)試小結(jié) 本設(shè)計(jì)的軟件程序用是的C語言編程,它的可讀性非常強(qiáng),容易理解,擺脫了難度的機(jī)器語言匯編語言跟進(jìn)時(shí)代的開展腳步,這也是本次設(shè)計(jì)的一大優(yōu)越點(diǎn)之一。 程序在設(shè)計(jì)當(dāng)中遇到了很困難,有時(shí)候是數(shù)據(jù)設(shè)置有問題。由于DS18B20采用的是單總線技術(shù),所以在對(duì)它復(fù)位、寫指令、讀數(shù)據(jù)時(shí)對(duì)時(shí)間的要求控制是非常嚴(yán)格的,為了調(diào)試出準(zhǔn)確的時(shí)間,我花了很多時(shí),經(jīng)過不斷差資料,最后終于調(diào)出我想要的結(jié)果。第五章 調(diào)試與小結(jié) 華南師范大學(xué)增城學(xué)院 07級(jí) 信息管理1班 唐慶良軟件測(cè)試小結(jié) 經(jīng)過幾個(gè)月的不斷學(xué)習(xí)和努力,在老師的諄諄教導(dǎo)下,在其他老師及同學(xué)們的熱心幫助與指導(dǎo)下,基于單片機(jī)的單總線多點(diǎn)溫度測(cè)控系統(tǒng)的畢業(yè)設(shè)計(jì)即將結(jié)束,根本完成了老師所規(guī)定的各項(xiàng)工作任務(wù)。 通過這一次畢

溫馨提示

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