【正文】
存器用來設置 使用 DS18B20時的工作方式及溫度的分辨率。 DS18B20 嚴格的 通信協(xié)議 確保了 數(shù)據(jù) 的 正常 傳輸,該 協(xié)議規(guī)定了 以下幾種 操作 時序: 初始化 時序、讀時序 、寫時序。主機接收到從機的應答脈沖,說明單總線器件在線。 19 第 5 章 溫度檢測系統(tǒng)的硬件設計 系統(tǒng)總體構成 本系統(tǒng)通過溫度傳感器將現(xiàn)場溫度傳至單片機,并將采集到的溫度與用戶設定的目標溫度,進行比較是否超越極限以此控制蜂鳴器自動報警,從而達到檢測溫度的目的,其主要由溫度采集 模塊 、LED顯示 模塊 、鍵盤輸入 模塊以 及報警 模塊 等組成。 按鈕復位的電路如 圖 52 所示。 另外 復位后的 21個特殊 功能寄存器 狀態(tài)為確定值?!耙痪€總線”體積更小,使用電壓更寬、更經(jīng)濟、全部傳感器元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路里 。 圖 54 溫度測量電路 LED 顯示電路 單片機 I/O的應用最典 型的 就 是通過 I/O口與 LED數(shù)碼 管構成顯示電 路, 本設計 LED顯示 模 塊電 路如下圖 55所 示。本設計 采用的是后一種方法。在本設計中 采用由外 21 部方式產(chǎn)生時鐘的方法形成時鐘電路,如 圖 53所示。 上 表中 A為 00H,表 明已被清零; PSW為 00H, 表明工作寄存器組為 0組 ; SP為 07H, 表明堆棧指針指向片內(nèi) RAM 地址為 07 單元的內(nèi)存 , 根據(jù)堆棧操作先入后出法則,第一個被推入到堆棧的 數(shù)據(jù)存儲在地址單元為 08H 中。 本設計采用的是 是在 RST端和正 電源 Vcc之間接一個按鈕 ,并接一個 10K的電阻來分壓。當寫周期開始時,主機把總線拉低 1us表示寫周期開始。主機釋放總線時,會產(chǎn)生一個上升沿。R1與 R0用來設置分辨率 ,如下表 44示。 D A L L A SD S 1 8 B 2 01 2 3G N D D Q V C C1N CN CV D DD QN CN CN CG N DD S 1 8 B 2 0 Z8 P I N S O I C ( 1 5 0 m i l )12348765圖 43 DS18B20 外形結構圖 DS18B20內(nèi)部 結 構如圖 44 所示。 ℃。 DS18B20 介紹 溫度傳感器 DS18B20 是美國 DALLAS 半導 體公司推出的一種改進型智能溫度傳感器。 單總線 接口的硬件結構 單總線只有一根數(shù)據(jù)線 。 數(shù)據(jù)查詢 : AT89S52單 片機 用 Data Palling表示 一個寫 周期結束為特征,在一個寫周期中,如需讀取最后寫入的一個字節(jié),則 出的數(shù)據(jù)的最高 位( )是 原來寫入字節(jié)最高位的反碼。由 于識 別 1 至 0 的跳變需要 2 個機器周期( 24 個振蕩周期) ,因此,最高計數(shù)速率為振蕩頻 率的1/24。 XTAL2: 振蕩器 反相放大器的輸出端。該位置位后,只有一 條 MOVX和 MOVC 指 令才能 將 ALE 激 活 。 在晶振 工作時, RST腳持續(xù) 2個機器周期高電平將使單片機復位。 在 Flash編程 或校驗 時, P2也 接收高 位地址和一些控制信號。對端口寫 “ 1” ,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。 主要管腳有: VCC(40): 電源 GND(20): 接地 XTAL1( 19腳) 和 XTAL2( 18腳 ) 為 振蕩器輸入輸出端口,外接 12MHz晶 振。 如下 圖 32所 示。圖中 低溫度系數(shù)晶振 用于產(chǎn)生脈沖信號送給計數(shù)器 1,它的振蕩頻率受溫度 的影響很小,可以近似認為產(chǎn)生的是固定頻率的脈沖。 熱電偶測溫基本原理 是 將兩種不同材料的導體或半導 體 A 和 B 焊接 起 來,構成一個閉合回 路, 當導 體 A和 B的兩個執(zhí)著點 1和 2之間存在 溫差時,兩者之間便產(chǎn)生電動勢 , 因而在回路中形成一個大小的電流 , 這種現(xiàn)象稱為熱電效應。 AT 系列的 單片機 是最早進入中國的單片機,人們對它在熟悉不過了,再加上我國各方人士的努力,創(chuàng)造了不少適合我們使用的開發(fā)工具。這一系列的單片機 有以下特點:體積小 , 集成度高 , 可靠性好易于擴展。 顯示器的選擇 方案一:采用傳統(tǒng)的七段 數(shù)碼 LED顯 示器 。 而且在溫度測量系統(tǒng)中 , 采用單片溫度傳感器 , 比如 AD590,LM35等 。第七章是系統(tǒng)的仿真 及硬件電路焊接與調(diào)試,介紹了仿真結果及調(diào)試所遇到的問題。同時單片機還需要進行 溫度 值 的判斷 ,看 是否超越 所設置的溫度上下 限 ,若低于或高于所設 定的 溫度,單片機將發(fā)出信號使蜂鳴器 報警 并有相應的指示燈亮 。新產(chǎn)品不僅要具有檢測功能,又要具有判斷和指令等多功能,采用微機向智能化方向發(fā)展。 ( 2) 擴大測溫對象 。 這種檢測器精度極高,是一種性能十分良好的溫度檢測器。半導體的電阻溫度系數(shù)比金屬大 l~ 2個數(shù)量級,二極管和三極管的 PN結電壓 、 電容對溫度靈敏度很高。隨著單片機技術 的日益成熟 ,通過單片機對 溫度檢測 日益成為 自動控制領域的一個重要發(fā)展方向。該系統(tǒng) 使用起來相當方 便,尤其是它的 抗 干擾能力強,適合于惡劣環(huán)境下進行現(xiàn)場溫度測量 , 有著 廣泛的應用前景 。 溫度是生產(chǎn)過程和日常生活中普遍而且很重要的影響因素,經(jīng)常要進行溫度的檢測和控制,而 利用單片機去進行溫度檢測 與控制則給我們提供了方便。 DS18B20。在工業(yè)上這些新的測溫技術 開始 投入 應用, 主要有以下幾種 : ( 1) 采用 集成電路溫度檢測元件 。 該系列元件采用 LC或 Y型切割 的石英晶片的共振頻率隨溫度變化的特性 而制作 。 ( 7) 微波溫度檢測器 是 采用微波測溫可以達到快速測量高溫的目的。 為了適應越來越多的需求,許多新的產(chǎn)品正在不斷的被研制出來, 同時新的檢測技術 也 逐漸在開發(fā)新產(chǎn)品時不斷的得到應用。該系統(tǒng)充分利用了數(shù) 字溫度傳感器DS18B20 的特點,設計了一個集溫度采集與轉(zhuǎn)換、顯示以及報警 一系列任務 的系統(tǒng) 。在第二章中則對該系統(tǒng)設計的方案進行下論證,主要包括各關鍵部分元器件的選擇。 若采用一般溫度傳感器采集溫度信號 , 則需要設計信 號調(diào)理電路 、 A/D 轉(zhuǎn)換 及 相 應的接口電路 , 才能把傳感 器輸出的模擬信號轉(zhuǎn)換成數(shù)字信號送到計算機去處理 。 方案三 : 該方案 采用單總線的溫度傳感器, 例 如 DS18B20。 LCD 液晶顯示 器是一種低壓、 微功耗的顯示器件。 凌陽單片機其優(yōu)勢主 要體現(xiàn)在硬件方面,抗干擾能力強 ,但是凌陽單片機我沒有接觸過,這對于我來說不是很容易上手,其次它的 價格也 要比 AT89S52 昂 貴的多,因此我并沒有選擇凌陽單片機 [5]。 6 第 3 章 溫度測量的 基本 原理 溫度測量的幾種方法 溫度是表征物體冷熱程度的物理量。熱電阻測溫 原理 是基于金屬導體的電阻值隨溫度的增加而增加這一特性來進行 溫度測量的。 當溫度傳感器開始工作時, 計數(shù) 器 1 對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù) ,當 計數(shù)器 1中預先設定的基數(shù)值 減為 0時,溫 度寄存器的值將 加 1,計數(shù)器 1 的基數(shù)值 將重新 被裝入 。最 后 CPU向 DS18B20讀取溫度 并進行分析處理 。作為輸出口用時,每位能吸收電流的方式 驅(qū)動 8個 TTL邏輯門電路,對端口 P0寫 “1” 時,可作為高阻抗輸入端用。 在 Flash編程 和程序校 驗 時 , P1口 接收低 8位地址。對 P3口寫入 “1” 時, 內(nèi)部上拉電阻拉高 ,此時 可 以 作為輸入端口。 DISRTO默 認狀態(tài)下,復位高電平有效。 EA/VPP: 訪問外部程序存儲器控制信號。 它既可當定時器使用, 又可以做 外部事件計數(shù)器 ,其工作方式由特殊功能寄 存器 T2CON 的 C/T2 位選擇 。如 果 EXEN2=0, 定時 器 13 2是一個 16位 定時器或計數(shù)器,計數(shù)溢出時, 對 T2CON的溢出標志 TF2置位, 同時激活中斷。其中 I2C總線是 兩 線方式 通信 的 (一條數(shù)據(jù)線 , 一條時鐘線 ), SPI 總線 則 是 三 線方式進行通信 的 ( 一條數(shù)據(jù)輸入線,一條數(shù)據(jù)輸出線 , 一條時鐘線), 以上兩種都是以同步串行的方式。個別器件可以通過總線獲得工作電源,當數(shù)據(jù)線為高電平時,電荷存儲在器件內(nèi)部;當數(shù)據(jù)為低電平時,器件通過這些電荷來提供能量。 DS18B20的特性 ( 1) 在寄生 電源方式下 可 從數(shù)據(jù)線上汲取能量,且能夠適應 ~ 。 15 ( 7) 將溫度轉(zhuǎn)換為數(shù)字的速度更快。 斜 斜斜 斜斜 斜 斜斜 斜 斜 斜 斜 斜 斜8 斜 C R C 斜 斜 斜6 4 斜 R O M斜 斜 斜斜 斜斜斜斜斜斜 斜 斜 斜 斜 斜斜 斜 斜 斜 斜 T L斜 斜 斜 斜 斜 T H斜 斜 斜 斜 斜 圖 44 DS18B20 內(nèi)部結構圖 ROM 中的 64 位序列碼是 出廠前被光刻好的,它可以看作 是該 DS18B20 的地址序列 碼,每個 16 DS18B20的 64 位序列碼均 不相同, 開始 8位是單線產(chǎn)品系列編碼( DS18B20的編碼是 28H, DS1820的編碼是 10H),同一型號的單總線器件的編碼相同。每一次 對 DS18B20 的操作都需要主機重新對其復位 ,例如在初始化 DS18B20后執(zhí)行了寫操作,此時若想從 DS18B20中讀取出數(shù)據(jù) , 那么 主機需 要再次對芯片進行初始化操作。 17 V C CM a s t e r T X “ r e s e t p u l s e ”4 8 0 u s m i n i m u m9 6 0 u s m a x i m u mM a s t e r R x4 8 0 u s m i n i m u mD S 1 8 B 2 0 W a i t s1 5 6 0 u sD S 1 8 B 2 0 T x “ P r e s e n c e p u l s e ”6 0 2 4 0 u sG N D1 W I R EB U SB u s m a s t e r a c t i v e l o wB o t h b u s m a s t e r a n d D S 1 8 B 2 0 a c t i v e l o wD S 1 8 B 2 0 a c t i v e l o wR e s i s t o r p u l l u p 圖 45 初始化命令時序圖 ( 2) DS18B20 的 讀時序 DS18B20的 讀時序分為 讀 0 時序和讀 1 時序兩 個過程 ,其讀時序如圖 46 所示。系統(tǒng) 硬件 結構框圖如圖 51所示。由于人 按鍵時的 動作 比較緩慢,可以滿足兩個機器周期的要求, 所以,完全能夠 實現(xiàn)單片機的 復位 。期中 程序計數(shù) 器 PC為 0000H,單片機復位后將 從 地址為 0000H單元開始執(zhí)行。 DS18B20 可以程序設定 9~ 12位 的分辨率 ,可選更小的封裝方式,更寬的電壓適用范圍。 P 1P 2P 3P 4P 5P 6P 7P 8R E S T9P 10P 11P 12P 13P 14P 15P 16P 17X T A L 218X T A L 119GND20P 21P 22P 23P 24P 25P 26P 27P 28P S E N29A L E / P R O G30E A / V P P31P 32P 33P 34P 35P 36P 37P 38P 39V C C40U1A T 89S 52123U3D S 18B 20V C CR1 22 P 1. 01P 1. 12P 1. 23P 1. 34P 1. 45P 1. 5/ M O S I6P 1. 6/ M I S O7P 1. 7/ S C K8R E S T9P 3. 0/ R X D10P 3. 1/ T X D11P 3. 2/ I N T 012P 3. 3/ I N T 113P 3. 4/ T 014P 3. 5/ T 115P 3. 6/ W R16P 3. 7/ R D17X T A L 218X T A L 119GND20P 2. 021P 2. 122P 2. 223P 2. 324P 2. 425P 2. 526P 2. 627P 2. 728P S E N29A L E / P R O G30E A / V P P31P 0. 732P 0. 633P 0. 534P 0. 4