




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 基于DS18B20的溫度檢測系統(tǒng)實(shí)訓(xùn)指導(dǎo)書 本次實(shí)訓(xùn)時(shí)間為2周,具體安排如下: 設(shè)計(jì)任務(wù) 計(jì)劃時(shí)間 布置任務(wù),說明設(shè)計(jì)的性質(zhì)及內(nèi)容 初步分析電路圖 1天 研究指導(dǎo)書、查找資料 1天 顯示接口技術(shù) 1天 焊接 1天 顯示原理、編程、調(diào)試 2天 DS18B20數(shù)據(jù)采集原理、編程、調(diào)試 2天 全部調(diào)試 1天 書寫實(shí)訓(xùn)報(bào)告等 1天 、前言 在生產(chǎn)生活中,溫度是一個很重要的量, 所以,溫度的檢測是不可缺少的。在單片機(jī)的 應(yīng)用中,一個很重要的應(yīng)用就是對溫度進(jìn)行檢測。 本實(shí)訓(xùn)首先介紹溫度測量的有關(guān)知識,接著介紹實(shí)現(xiàn)溫度檢測所必須的元器件,并且給 出硬件的原理圖,然后逐步分析程序的各個主要模塊以及程序的全貌
2、,最后將總結(jié)一下實(shí)例 的技巧與注意點(diǎn)。 1、基礎(chǔ)知識 溫度測量的基礎(chǔ)知識主要包括:溫度測量的基本概念和溫度傳感器的簡介。下面將就這 兩個方面進(jìn)行介紹。 溫度是表征物體冷熱程度的物理量。溫度只能通過物體隨溫度變化的某些特性來間接測 量,而用來量度物體溫度數(shù)值的標(biāo)尺叫溫標(biāo)。 它規(guī)定了溫度的讀數(shù)起點(diǎn) (零點(diǎn))和測量溫度 的基本單位。目前國際上用得較多的溫標(biāo)有華氏溫標(biāo)、 攝氏溫標(biāo)、熱力學(xué)溫標(biāo)和國際實(shí)用溫 標(biāo)。 華氏溫標(biāo)F)規(guī)定:在標(biāo)準(zhǔn)大氣壓下,冰的熔點(diǎn)為32 T,水的沸點(diǎn)為212 T,中間劃 分180等份,每一份為華氏1度,符合為F。 0C,水的沸點(diǎn)為100C,中間劃 攝氏溫標(biāo)(C)規(guī)定:在標(biāo)準(zhǔn)大氣壓
3、下,冰的熔點(diǎn)為 分180等份,每一份為攝氏1度,符合為F。 熱力學(xué)溫標(biāo)又稱開爾文溫標(biāo), 或稱絕對溫標(biāo), 它規(guī)定分子運(yùn)動停止時(shí)的溫度為絕對零度, 記符合為 K 。 國際實(shí)用溫標(biāo)是一個國際協(xié)議性溫標(biāo), 它與熱力學(xué)溫標(biāo)相接近, 而且精度高, 使用方便。 目前國際通用的溫標(biāo)是 1975年第 15屆國際權(quán)度大會通過的 1968年國際實(shí)用溫標(biāo) -1975 年 修訂版,記為:IPTS-68 ( Rev-75)。但由于IPTS-68溫標(biāo)存在一定的不足,國際計(jì)量委員 會在 18 屆國際計(jì)量大會第七號決議授權(quán)予 1989 年會議通過了 1990 年國際溫標(biāo) ITS-90 , ITS-90溫標(biāo)替代了 IPTS-68
4、。我國自1994年1月1日起全面實(shí)施ITS-90國際溫標(biāo)。 2、溫度傳感器的簡單介紹 測量溫度的時(shí)候,通常使用線性( NTC )溫度傳感器。 線性溫度傳感器就是線性化輸出的負(fù)溫度系數(shù)(簡稱NTC )熱敏元件,它實(shí)際上是一 種線性溫度一一電壓轉(zhuǎn)換元件,就是說在通以工作電流(100卩A )的條件下,元件的電壓 值隨溫度呈線性變化,從而實(shí)現(xiàn)了非電量到電量的線性轉(zhuǎn)換。 這種溫度傳感器其主要特點(diǎn)就是在工作溫度范圍內(nèi)溫度電壓關(guān)系為一直線,這使得 二次開發(fā)測溫、控溫電路的設(shè)計(jì),將無需線性化處理,就可以完成測溫或控溫電路的設(shè)計(jì), 從而簡化儀表的設(shè)計(jì)和調(diào)試。 溫度傳感器的重要參數(shù)如下: 測溫范圍:可在-200
5、C +200C之間,但考慮實(shí)際的需要,一般無需如此寬的溫度范圍, 因而 3 個不同的區(qū)段, 以適應(yīng)不同封裝設(shè)計(jì), 同時(shí)在延長線的選用上亦有所不同。 而對于溫 度補(bǔ)償專用的線性熱敏元件,則只設(shè)定工作溫度范圍為-40C +80C,完全可以滿足一般電 路的溫度補(bǔ)償之用。 基準(zhǔn)電壓:指傳感器置于 0C的溫場(冰水混合物),在通以工作電流(100卩A)的條 件下,傳感器上的電壓值。實(shí)際上就是0點(diǎn)電壓。其表示符號為 V (0),該值出廠時(shí)標(biāo)定, 由于傳感器的溫度系數(shù) S相同,則只要知道基準(zhǔn)電壓值 V (0),即可求知任何溫度點(diǎn)上的傳 感器電壓值,而不必對傳感器進(jìn)行分度。 溫度系數(shù)S:指在規(guī)定的工作條件下,
6、傳感器的輸出電壓值的變化與溫度變化的比值, 即溫度每變化1C傳感器的輸出電壓變化之值,其表達(dá)式為S=A V/ T ( mV/C)。溫度系數(shù) 是線性溫度傳感器作為溫度測量元件的物理基礎(chǔ),其作用與熱敏電阻的 B值相似,這個系數(shù) 在整個工作溫度范圍內(nèi)是同一值,即 -2 mV/C,而且各種型號的傳感器也是同一值,這一點(diǎn) 傳統(tǒng)的熱敏電阻溫度傳感器是無可比擬的。 互換精度: 指在同一工作條件下 (同一工作電流、 同一溫度) 對于同一個確定的理想擬 合直線,每一只傳感器的電壓V (T)溫度T曲線與該直線的最大偏差,這個偏差通常 按傳感器的溫度電壓轉(zhuǎn)換系數(shù) S 折合成溫度來表示。由于傳感器的輸出線性變化及溫
7、度電壓轉(zhuǎn)換系數(shù)相同, 即在測溫范圍內(nèi)全程互換, 所以互換精度表示了基準(zhǔn)電壓值的離 散程度,即用基準(zhǔn)電壓值的離散值折合成溫度值的大小來描述整批傳感器之間的互換程度。 線性度: 是描述傳感器的輸出電壓值隨溫度變化的線性程度, 實(shí)際上也就是傳感器輸出 電壓在工作溫度范圍內(nèi)相對于理想擬合直線的最大偏差。 一般情況下, 其線性度的典型值為 0.5%,很顯然傳感器的線性度越高(其值越小),儀表的設(shè)計(jì)就越簡單,在儀表的輸入級 完全不必采用線性化處理。 二、使用器件 本實(shí)訓(xùn)中除了 8051外,還需要用到 DS18B20 溫度傳感器。 溫度傳感器 DS18B20 介紹 如圖1所示,由DS18B20的外觀圖可見,
8、它有 3個管腳,腳1GND接地,腳2DQ是 一線總線,是數(shù)字信號輸入 /輸出端,和單片機(jī)相連接由單片機(jī)控制,管腳 3VDD 是電源,外 接供電電源。 DS18B20 內(nèi)部結(jié)構(gòu)主要是由 4 個部分組成。 64 位光刻 ROM :光刻 ROM 中的 64 位序列號是出廠前被光刻好的,它可以看作是該 DS18B20的地址序列碼,即ID。它的作用是使每一個 DS18B20的地址都不相同, 可以實(shí)現(xiàn) 在相同的總線上掛多個 DS18B20的目的。64位光刻ROM的排列是開始8位(28H)是產(chǎn) 品類型標(biāo)號,接著的 48位是該 DS18B20 自身的序列號,最后 8位是前面 56位的循環(huán)冗余 校驗(yàn)碼( CRC
9、=X8+X5+X4+1 ) 溫度傳感器:在 DS18B20溫度傳感器的使用中,以12位轉(zhuǎn)化為例,從 DS18B20中得 到16位符合擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式,以0.0625C /LSB的形式表達(dá),其中 S為符合位。 二進(jìn)制的數(shù)存儲在 DS18B20 的 2個8位的 RAM 中,這是 12位轉(zhuǎn)化后得到的 16位數(shù)據(jù), 其中前面5位是符合位,如果測得的溫度大于 0C,這5位為0,只要將測到的數(shù)值乘于 0.0625 即可得到實(shí)際溫度;如果溫度小于0C,這5位為1,測到的數(shù)值需要取反加 1再乘以0.0625 即可得到實(shí)際溫度。 非揮發(fā)的溫度報(bào)警觸發(fā)器 TH 和 TL: DS18B20 溫度傳感器的內(nèi)部
10、存儲器包括一個暫存 RAM 和一個非易失控的可電擦出的E2RAM ,后者存放高溫度和低溫度觸發(fā)器TH、TL 和 結(jié)構(gòu)寄存器。當(dāng)溫度到達(dá)低溫或高溫的時(shí)候,溫度報(bào)警觸發(fā)器會發(fā)出報(bào)警。 高速暫存 RAM :高速暫存存儲器包含了 8 個連續(xù)字節(jié),字節(jié) 0 和字節(jié) 1 是測得的溫度 信息,其中字節(jié)0的內(nèi)容是溫度的低 8位,字節(jié)1的內(nèi)容是溫度的高 8位。字節(jié)2和字節(jié)3 是TH、TL的易失性拷貝,字節(jié) 4是結(jié)構(gòu)寄存器的易失性拷貝,這3個字節(jié)的內(nèi)容在每一 次上電復(fù)位時(shí)被刷新。字節(jié) 5、6/7用于TMR1R011111。每一次進(jìn)行針對 18B20的讀寫前, 都需要對DS18B20進(jìn)行設(shè)置。從上面的定義看出,該字
11、節(jié)的低5位一直都是1, TM位是測 試模式為,用于設(shè)置DS18B20在工作模式及測試模式。在DS18B20出廠時(shí)該位被設(shè)置為 0, 用戶不要進(jìn)行改動。R1和R0用來設(shè)置分辨率,具體的分辨率定義如表1所示(DS18B20 出廠時(shí)被設(shè)置為12位)。 表1 分辨率設(shè)置表 RO R1 分辨率 最大溫度轉(zhuǎn)換時(shí)間 0 0 9位 96.75ms 0 1 10位 187.5ms 1 0 11位 375ms 1 1 12位 750ms DS18B20的通信協(xié)議參照數(shù)據(jù)手冊,這里不再詳細(xì)敘述。根據(jù)DS18B20的數(shù)據(jù)手冊, 主機(jī)控制DS18B20完成溫度轉(zhuǎn)換的過程是:每一次讀寫之前都要對DS18B20進(jìn)行復(fù)位,即
12、 將數(shù)據(jù)總線下拉 500卩s,然后釋放,DS18B20收到信號后等待1660卩s左右,之后發(fā)出60 卩s240卩s的存在低脈沖,主 CPU收到此信號表示復(fù)位成功;復(fù)位成功后發(fā)送一條ROM 指令(ROM指令如表2所示),然后發(fā)送RAM指令(RAM指令如表3所示),這樣才能對 DS18B20進(jìn)行預(yù)定的讀寫操作。 表2 ROM指令集 指令 約定代碼 功能 讀ROM 33H 讀DS18B20中的編碼(即64位地址) 符合ROM 55H 發(fā)出此命令后,接著發(fā)出 64位ROM編碼,訪問單線總線上 與該編輯相對應(yīng)的 DS18B20使之做出響應(yīng),為下一步對該 DS18B20的讀寫作準(zhǔn)備 搜索ROM 0F0H
13、用于確定掛接在冋一總線上的DS18B20個數(shù)和識別 64位 ROM地址,為操作各器件做好準(zhǔn)備 跳過ROM 0CCH 忽略64位ROM地址,直接向 DS18B20發(fā)送溫度變換命令, 適合單片機(jī) 告警搜索命令 OECH 執(zhí)行后,只有溫度超過設(shè)定值上限或下限的片子才能做出反 應(yīng) 表3 RAM指令集 指令 約定代碼 功能 溫度變換 44H 啟動DS18B20進(jìn)行溫度轉(zhuǎn)換,轉(zhuǎn)換時(shí)間最長為500ms,結(jié)果存 入內(nèi)部9字節(jié)RAM中 讀暫存器 0BEH 讀內(nèi)部RAM中9字節(jié)的內(nèi)容 寫暫存器 4EH 向內(nèi)部RAM的第3、第4字節(jié)寫上、下限數(shù)據(jù)命令,緊跟該命 令后的是傳送2字節(jié)數(shù)據(jù) 復(fù)制暫存器 48H 將RAM中
14、的第3、4字節(jié)內(nèi)容復(fù)制到 E2PRAM中 重調(diào)E2pram 0B8H 2 將E PRAM中內(nèi)容復(fù)制到 RAM 中的第3、4字節(jié) 讀供電方式 0B4H 讀DS18B20的供電模式,寄生供電時(shí)DS18B20發(fā)送0,外接 供電發(fā)送1 DS18B20具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),在實(shí)際應(yīng) 用中也應(yīng)注意以下幾方面的問題。 因?yàn)镈S18B20的硬件比較簡單,所以軟件設(shè)計(jì)相對比較復(fù)雜,需要按照DS18B20的說 明書,嚴(yán)格按照時(shí)序?qū)?DS18B20進(jìn)行讀寫操作,通常在處理的時(shí)候,采用匯編語言來保證 嚴(yán)格的時(shí)序,在復(fù)雜的程序中,需要在高級語言中嵌入?yún)R編代碼來保證時(shí)序的可控制性。 另
15、外,對于單總線的 DS18B20來說,傳感器的驅(qū)動能力有限,不能直接懸掛無限多個 DS18B20,這一點(diǎn)在說明書上沒有體現(xiàn),使用時(shí)需要注意,一般來說,總線上的DS18B20 最多可以直接掛8個,當(dāng)數(shù)量超過8個的時(shí)候,需要對總線進(jìn)行驅(qū)動,提供更大的電流。除 了總線上的驅(qū)動問題, 總線的分布電容也會使信號發(fā)生畸變,當(dāng)使用普通電纜的時(shí)候,傳輸 長度超過50m后溫度數(shù)據(jù)將會出錯,如果使用雙絞線,傳輸長度可以達(dá)到150m,所以在使 用DS18B20的時(shí)候,總線的長度是有限制的,并且在設(shè)計(jì)硬件的時(shí)候需要考慮電阻和電容 的匹配問題。 最后,在使用DS18B20的過程中,需要根據(jù) DS18B20的手冊,對傳感
16、器進(jìn)行寫操作, 發(fā)出溫度轉(zhuǎn)換的命令, 再等待傳感器返回溫度值, 這樣需要在軟件設(shè)計(jì)上考慮到等待超時(shí)的 機(jī)制,并且在硬件設(shè)計(jì)上也需要注意線的連接,不要出現(xiàn)接觸不良的現(xiàn)象。 三、硬件電路圖(僅供參考) 如圖 2所示,本實(shí)訓(xùn)中注意用到的器件有 AT89C52 單片機(jī)、溫度傳感器 DS18B20 、LED 數(shù)碼管、 NPN 型三極管等,其中, DS18B20 與單片機(jī)通過一線總線相連接, AT89C52 通過 通用 I/O 口 P2.2 對 DS18B20 進(jìn)行控制,讀取 DS18B20 所測得的溫度; LED 數(shù)碼管也是通 過通用 I/O 口與 AT89C52 相連接,數(shù)碼管 DS1 顯示采集溫度的
17、個位,數(shù)碼管 DS2 顯示采集 溫度的十位。 圖2 四、軟件設(shè)計(jì) 單片機(jī)與 DS18B20 進(jìn)行通信時(shí), 需要按照 DS18B20 的通信協(xié)議進(jìn)行通信, 對于編寫程 序來說, DS18B20 的數(shù)據(jù)讀取和寫入需要用移位的方式進(jìn)行。 本實(shí)訓(xùn)將在單片機(jī)與 DS18B20 之間進(jìn)行應(yīng)答來采集溫度參數(shù),單片機(jī)先將與 DS18B20 的連線電平拉低 500ms 以上,將 DS18B20 復(fù)位,在進(jìn)行操作。先向 DS18B20 發(fā)送指令, 跳過 ROM 后發(fā)出轉(zhuǎn)換溫度的指令,然后初始化后讀取溫度,將讀到的溫度在 2KB 的數(shù)字 管上顯示出來。 本節(jié)介紹一下溫度采集的經(jīng)過。 下面將首先對程序的主要模塊進(jìn)行介
18、紹, 然后給出整個 程序。 1、初始化 在這一部分程序中,需要將 DS18B20 的一線總線拉低 500ms 以上,將 DS18B20 復(fù)位, 然后將總線置高,等待 DS18B20 的回應(yīng),有應(yīng)答就置標(biāo)志位,沒有應(yīng)答就清空標(biāo)志位。 選擇總線上只有一個 DS18B20 ,所以跳過 ROM ,電路中采用的晶振頻率 fosc=11.0592MHz ,通過計(jì)算公式,可以算出空跑的語句行數(shù)。 2、查詢時(shí)間 通過向 DS18B20 發(fā)送指令來查詢時(shí)間。在每次操作前,都需要將 DS18B20 置位,先向 DS18B20 發(fā)送溫度轉(zhuǎn)化的指令,根據(jù)表2,需要 750ms 的等待時(shí)間,在這段時(shí)間中,通過 調(diào)用顯示子程序來做到延遲。然后,向DS18B20 發(fā)送讀取溫度的指令,將溫度讀取出來, 放到緩存中去。 3、發(fā)送指令 使用通用 I/O 口向 DS18B20 寫數(shù)據(jù)。 通過單總線采取移位的方式來向 DS18B20 寫入數(shù) 據(jù),按照 8 位的方式寫進(jìn)去。在寫的過程中,需要嚴(yán)格按照 DS18B20 的產(chǎn)品說明書的時(shí)序 進(jìn)行些操作:每次將 1Bit 數(shù)據(jù)寫入前,都需要對 DS18B20 進(jìn)行寫的初始化,將數(shù)據(jù)線拉低 60卩s以上,完成寫初始化后,將1位數(shù)據(jù)寫進(jìn)DS18B20,然后等待15卩s以上,寫操作完 成,繼續(xù)初始化,寫下 1 位,直到寫完一字節(jié)。 4、讀取數(shù)據(jù) 使用通
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國墻面固定夾行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報(bào)告
- 常州市實(shí)驗(yàn)初級中學(xué)2025屆高二化學(xué)第二學(xué)期期末監(jiān)測模擬試題含解析
- 2025屆河北省棗強(qiáng)縣棗強(qiáng)中學(xué)高二化學(xué)第二學(xué)期期末考試模擬試題含解析
- 中國手扶插秧機(jī)行業(yè)發(fā)展運(yùn)行現(xiàn)狀及投資策略研究報(bào)告
- 中國景泰蘭工藝品項(xiàng)目投資可行性研究報(bào)告
- 中國燃?xì)庠钚袠I(yè)市場運(yùn)營現(xiàn)狀及行業(yè)發(fā)展趨勢報(bào)告
- 珠寶店月底工作總結(jié)
- 2025年醫(yī)院安全生產(chǎn)月活動方案
- 建筑施工企業(yè)誰對本企業(yè)的安全生產(chǎn)負(fù)責(zé)
- 鄉(xiāng)鎮(zhèn)工作總結(jié)總結(jié)
- 工程審計(jì)報(bào)告模板
- 660MW超超臨界火電機(jī)組深度調(diào)峰經(jīng)濟(jì)性評估與對策
- 2025年春江蘇開放大學(xué)數(shù)字媒體藝術(shù)概論060456第12345次形成作業(yè)+期末綜合大作業(yè)答案
- 2025至2030中國大健康行業(yè)市場發(fā)展現(xiàn)狀分析及發(fā)展趨勢與投資戰(zhàn)略規(guī)劃報(bào)告
- 2025至2030中國AMOLED顯示器行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報(bào)告
- 村文書考試題及答案岷縣
- CJ/T 43-2005水處理用濾料
- 智慧檢驗(yàn)與大數(shù)據(jù)分析知到智慧樹期末考試答案題庫2025年溫州醫(yī)科大學(xué)
- 巴菲特三大經(jīng)典演講之二-1998年佛羅里達(dá)大學(xué)商學(xué)院演講
- 學(xué)校校園餐自查報(bào)告
- 函授高升專試題及答案
評論
0/150
提交評論