DS18B20數(shù)字溫度計(jì)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
DS18B20數(shù)字溫度計(jì)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
DS18B20數(shù)字溫度計(jì)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
DS18B20數(shù)字溫度計(jì)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
DS18B20數(shù)字溫度計(jì)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、DS18B20數(shù)字溫度計(jì)的設(shè)計(jì)與實(shí)現(xiàn)一、實(shí)驗(yàn)?zāi)康牧私釪S18B20數(shù)字式溫度傳感器的工作原理。利用DS18B20數(shù)字式溫度傳感器和微機(jī)實(shí)驗(yàn)平臺(tái)實(shí)現(xiàn)數(shù)字溫度計(jì)。二、實(shí)驗(yàn)內(nèi)容與要求采用數(shù)字式溫度傳感器為檢測(cè)器件,進(jìn)行單點(diǎn)溫度檢測(cè)。用數(shù)碼管直接顯示溫度值,微機(jī)系統(tǒng)作為數(shù)字溫度計(jì)的控制系統(tǒng)。基本要求:(1)檢測(cè)的溫度范圍:0100,檢測(cè)分辨率0.5。(2)用4位數(shù)碼管來(lái)顯示溫度值。(3)超過(guò)警戒值(自己定義)要報(bào)警提示。提高要求(1)擴(kuò)展溫度范圍。(2)增加檢測(cè)點(diǎn)的個(gè)數(shù),實(shí)現(xiàn)多點(diǎn)溫度檢測(cè)。三、設(shè)計(jì)報(bào)告要求設(shè)計(jì)目的和內(nèi)容總體設(shè)計(jì)硬件設(shè)計(jì):原理圖(接線圖)及簡(jiǎn)要說(shuō)明軟件設(shè)計(jì)框圖及程序清單設(shè)計(jì)結(jié)果和體會(huì)(包

2、括遇到的問(wèn)題及解決的方法)四、數(shù)字溫度傳感器DS18B20由DALLAS半導(dǎo)體公司生產(chǎn)的DS18B20型單線智能溫度傳感器,屬于新一代適配微處理器的智能溫度傳感器,可廣泛用于工業(yè)、民用、軍事等領(lǐng)域的溫度測(cè)量及控制儀器、測(cè)控系統(tǒng)和大型設(shè)備中。它具有體積小,接口方便,傳輸距離遠(yuǎn)等特點(diǎn)。 1. DS18B20性能特點(diǎn) DS18B20的性能特點(diǎn):采用單總線專用技術(shù),既可通過(guò)串行口線,也可通過(guò)其它I/O口線與微機(jī)接口,無(wú)須經(jīng)過(guò)其它變換電路,直接輸出被測(cè)溫度值(9位二進(jìn)制數(shù),含符號(hào)位),測(cè)溫范圍為-55-+125,測(cè)量分辨率為0.0625,內(nèi)含64位經(jīng)過(guò)激光修正的只讀存儲(chǔ)器ROM,適配各種單片機(jī)或系統(tǒng)機(jī),

3、用戶可分別設(shè)定各路溫度的上、下限,內(nèi)含寄生電源。 2. DS18B20內(nèi)部結(jié)構(gòu) DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM,溫度傳感器,非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL,高速暫存器。64位光刻ROM是出廠前被光刻好的,它可以看作是該DS18B20的地址序列號(hào)。64位ROM結(jié)構(gòu)圖如圖2所示。不同的器件地址序列號(hào)不同。DS18B20的管腳排列如圖1所示。LSBMSB8位檢驗(yàn)CRC 48位序列號(hào) 8位工廠代碼(10H)圖1DS18B20引腳分布圖 圖2 64位ROM結(jié)構(gòu)圖DS18B20高速暫存器共9個(gè)存儲(chǔ)單元,如表所示: 序號(hào) 寄存器名稱 作 用 序號(hào) 寄存器名稱 作 用 0 溫度低字

4、節(jié) 以16位補(bǔ)碼形式存放 4 配置寄存器 1 溫度高字節(jié) 5、6、7 保留 2 TH/用戶字節(jié)1 存放溫度上限 8 CRC 3 HL/用戶字節(jié)2 存放溫度下限 以12位轉(zhuǎn)化為例說(shuō)明溫度高低字節(jié)存放形式及計(jì)算:12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲(chǔ)在18B20的兩個(gè)高低兩個(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í)際溫度。 高8位 S S S S S 26 25 24 低8位 23 22 21 20 2-1 2-2 2-3 2-4 3.

5、DS18B20控制方法 DS18B20有六條控制命令,如表所示: 指 令 約定代碼 操 作 說(shuō) 明 溫度轉(zhuǎn)換 44H 啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換 讀暫存器 BEH 讀暫存器9個(gè)字節(jié)內(nèi)容 寫暫存器 4EH 將數(shù)據(jù)寫入暫存器的TH、TL字節(jié) 復(fù)制暫存器 48H 把暫存器的TH、TL字節(jié)寫到E2RAM中 重新調(diào)E2RAM B8H 把E2RAM中的TH、TL字節(jié)寫到暫存器TH、TL字節(jié) 讀電源供電方式 B4H 啟動(dòng)DS18B20發(fā)送電源供電方式的信號(hào)給主CPU 4. DS18B20的通信協(xié)議DS18B20器件要求采用嚴(yán)格的通信協(xié)議,以保證數(shù)據(jù)的完整性。該協(xié)議定義了幾種信號(hào)類型:復(fù)位脈沖,應(yīng)答脈沖時(shí)

6、隙;寫0,寫1時(shí)隙;讀0,讀1時(shí)隙。與DS18B20的通信,是通過(guò)操作時(shí)隙完成單總線上的數(shù)據(jù)傳輸。發(fā)送所有的命令和數(shù)據(jù)時(shí),都是字節(jié)的低位在前,高位在后。a) 復(fù)位和應(yīng)答脈沖時(shí)隙每個(gè)通信周期起始于微控制器發(fā)出的復(fù)位脈沖,其后緊跟DS18B20發(fā)出的應(yīng)答脈沖,在寫時(shí)隙期間,主機(jī)向DS18B20器件寫入數(shù)據(jù),而在讀時(shí)隙期間,主機(jī)讀入來(lái)自DS18B20的數(shù)據(jù)。在每一個(gè)時(shí)隙,總線只能傳輸一位數(shù)據(jù)。時(shí)序圖見(jiàn)圖3。b) 寫時(shí)隙當(dāng)主機(jī)將單總線DQ從邏輯高拉到邏輯低時(shí),即啟動(dòng)一個(gè)寫時(shí)隙,所有的寫時(shí)隙必須在60120us完成,且在每個(gè)循環(huán)之間至少需要1us的恢復(fù)時(shí)間。寫0和寫1時(shí)隙如圖所示。在寫0時(shí)隙期間,微控制

7、器在整個(gè)時(shí)隙中將總線拉低;而寫1時(shí)隙期間,微控制器將總線拉低,然后在時(shí)隙起始后15us之釋放總線。時(shí)序圖見(jiàn)圖4。c) 讀時(shí)隙 DS18B20器件僅在主機(jī)發(fā)出讀時(shí)隙時(shí),才向主機(jī)傳輸數(shù)據(jù)。所以在主機(jī)發(fā)出讀數(shù)據(jù)命令后,必須馬上產(chǎn)生讀時(shí)隙,以便DS18B20能夠傳輸數(shù)據(jù)。所有的讀時(shí)隙至少需要60us,且在兩次獨(dú)立的讀時(shí)隙之間,至少需要1us的恢復(fù)時(shí)間。每個(gè)讀時(shí)隙都由主機(jī)發(fā)起,至少拉低總線1us。在主機(jī)發(fā)起讀時(shí)隙之后,DS18B20器件才開(kāi)始在總線上發(fā)送0或1,若DS18B20發(fā)送1,則保持總線為高電平。若發(fā)送為0,則拉低總線當(dāng)發(fā)送0時(shí),DS18B20在該時(shí)隙結(jié)束后,釋放總線,由上拉電阻將總線拉回至高電

8、平狀態(tài)。DS18B20發(fā)出的數(shù)據(jù),在起始時(shí)隙之后保持有效時(shí)間為15us。因而主機(jī)在讀時(shí)隙期間,必須釋放總線。并且在時(shí)隙起始后的15us之內(nèi)采樣總線的狀態(tài)。時(shí)序圖見(jiàn)圖4。圖3 復(fù)位和應(yīng)答脈沖時(shí)隙 圖4 讀寫時(shí)序五、硬件電路設(shè)計(jì)按照系統(tǒng)設(shè)計(jì)功能的要求,確定系統(tǒng)由3個(gè)模塊組成:主控制器、測(cè)溫電路和顯示電路。數(shù)字溫度計(jì)總體電路結(jié)構(gòu)框圖如圖5所示。 圖5 電路結(jié)構(gòu)框圖在硬件上,DS18B20與單片機(jī)的連接有兩種方法,一種是Vcc接外部電源,GND接地,I/O與單片機(jī)的I/O線相連;另一種是用寄生電源供電,此時(shí)UDD、GND接地,I/O接單片機(jī)I/O。無(wú)論是內(nèi)部寄生電源還是外部供電,I/O口線要接5K左右

9、的上拉電阻。六、軟件設(shè)計(jì)系統(tǒng)程序主要包括主程序、讀出溫度子程序、溫度轉(zhuǎn)換子程序、計(jì)算溫度子程序、顯示數(shù)據(jù)刷新子程序等等。1主程序主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理DS18B20的測(cè)量溫度值,溫度測(cè)量每1s進(jìn)行一次,其程序流程圖如圖6。圖6 主程序流程圖2讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時(shí)需要進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫。其程序流程圖如圖7所示。圖7 讀出溫度子程序流程圖3溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開(kāi)始命令,當(dāng)采用12位分辯率時(shí)轉(zhuǎn)換時(shí)間約為750ms,在本程序設(shè)計(jì)中采用1s顯示程序延時(shí)法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖如圖8所示。4計(jì)算溫度子程序計(jì)算溫度子程序?qū)AM中讀取值進(jìn)行BCD碼的

溫馨提示

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