一、前言 隨著科學技術的不斷進步與發展,溫度傳感器的種類日益繁多,應用逐漸廣泛,并且開始由模擬式向著數字式、單總線式、雙總線式和三總線式方向發展。而數字溫度傳感器更因適用于各種微處理器接口組成的自動溫度控制系統具有可以克服模擬傳感器與微處理器接口時需要信號調理電路和A/D轉換器的弊端等優點,被廣泛應用于工業控制、電子測溫計、醫療儀器等各種溫度控制系統中。其中,比較有代表性的數字溫度傳感器有DS1820、MAX6575、DS1722、MAX6635等。本文主要介紹了數字溫度傳感器DS1722的特性、使用方法以及它的時序等,并闡述了傳感器DS1722和單片機89C51構成的溫度測量系統。 二、DS1722的工作原理 1 、DS1722的主要特點 DS1722是一種低價位、低功耗的三總線式數字溫度傳感器,其主要特點如表1所示。 2、DS1722的內部結構 數字溫度傳感器DS1722有8管腳m-SOP封裝和8管腳SOIC封裝兩種,其引腳排列如圖1所示。它由四個主要部分組成:精密溫度傳感器、模數轉換器、SPI/三線接口電子器件和數據寄存器,其內部結構如圖2所示。 開始供電時,DS1722處于能量關閉狀態,供電之后用戶通過改變寄存器分辨率使其處于連續轉換溫度模式或者單一轉換模式。在連續轉換模式下,DS1722連續轉換溫度并將結果存于溫度寄存器中,讀溫度寄存器中的內容不影響其溫度轉換;在單一轉換模式,DS1722執行一次溫度轉換,結果存于溫度寄存器中,然后回到關閉模式,這種轉換模式適用于對溫度敏感的應用場合。在應用中,用戶可以通過程序設置分辨率寄存器來實現不同的溫度分辨率,其分辨率有8位、9位、10位、11位或12位五種,對應溫度分辨率分別為1.0℃、0.5℃、0.25℃、0.125℃或0.0625℃,溫度轉換結果的默認分辨率為9位。DS1722有摩托羅拉串行接口和標準三線接口兩種通信接口,用戶可以通過SERMODE管腳選擇通信標準。 3、DS1722溫度操作方法 傳感器DS1722將溫度轉換成數字量后以二進制的補碼格式存儲于溫度寄存器中,通過SPI或者三線接口,溫度寄存器中地址01H和02H中的數據可以被讀出。輸出數據的地址如表2所示,輸出數據的二進制形式與十六進制形式的精確關系如表3所示。在表3中,假定DS1722 配置為12位分辨率。數據通過數字接口連續傳送,MSB(最高有效位)首先通過SPI傳輸,LSB(最低有效位)首先通過三線傳輸。 4、DS1722的工作程序 DS1722的所有的工作程序由SPI接口或者三總線通信接口通過選擇狀態寄存器位置適合的地址來完成。表4為 寄存器的地址表格,說明了DS1722兩個寄存器(狀態和溫度)的地址。 1SHOT是單步溫度轉換位,SD是關閉斷路位。如果SD位為“1”,則不進行連續溫度轉換,1SHOT位寫入“1”時,DS1722執行一次溫度轉換并且把結果存在溫度寄存器的地址位01h(LSB)和02h(MSB)中,完成溫度轉換后1SHOT自動清“0”。如果SD位是“0”,則進入連續轉換模式,DS1722將連續執行溫度轉換并且將全部的結果存入溫度寄存器中。雖然寫到1SHOT位的數據被忽略,但是用戶還是對這一位有讀/寫訪問權限。如果把SD改為“1”,進行中的轉換將繼續進行直至完成并且存儲結果,然后裝置將進入低功率關閉模式。 傳感器上電時默認1SHOT位為“0”。R0,R1,R2為溫度分辨率位,如表5所示(x=任意值)。用戶可以讀寫訪問R2,R1和R0位,上電默認狀態時R2=“0”,R1=“0”,R0=“1”(9位轉換)。此時,通信口保持有效,用戶對SD位有讀/寫訪問權限,并且其默認值是“1”(關閉模式)。 三、DS1722測溫系統設計 1、軟件設計 傳感器DS1722提供了兩種串行接口模式,當模式選通管腳SERMODE接VDDD時選擇SPI通信,當該管腳接地時選擇標準三總線通信。 以三總線模式為例,溫度測量系統硬件電路由數字溫度傳感器DS1722和單片機AT89C51及顯示部分組成。用P1口作數據的輸出端口,采集到的溫度信號由單片機處理后送到P1口,經74LS47驅動送至七段碼譯碼器顯示。其電路框圖如圖3所示。 2、軟件設計 軟件的設計分為四個大部分:數據的采集部分、數據整數部分的轉化部分、數據小數部分的轉化部分、數據的顯示部分。系統軟件流程如圖4所示。 四、測溫結果及分析 在溫度測量過程中,將傳感器DS1722放入0℃冰水混合的容器中,逐漸給容器加熱升溫,用溫度計觀察容器中水溫變化,并記錄傳感器經單片機89C51處理后的輸出溫度值,所得數據如表6所示。如果用公式“絕對誤差=實際溫度—實測溫度”來計算溫度傳感器DS1722的誤差,那么實驗數據表明:隨著溫度的升高,實驗誤差越來越大。誤差隨溫度變化的曲線如圖5所示。 從圖5可以看出,傳感器DS1722的溫度誤差與溫度呈線性關系,產生溫度誤差的因素大概有以下幾個方面: (1)實驗電路本身的因素; (2)人為因素,在讀數時可能存在人為誤差; (3)環境的因素,因為把傳感器放到了試管內,管內溫度和水溫有一定的差別; (4)傳感器自身因素,實驗時傳感器焊接到八腳雙列直插管座上,不能和試管壁充分接觸,這也存在一定的誤差。 綜合考慮以上的各種因素,這個誤差范圍是傳感器DS1722所允許的,所以,實驗數據真實有效。 五、結束語 數字溫度傳感器DS1722可接受寬電壓范圍的模擬信號和低功率的數字邏輯信號,因而可滿足日益增長的對便攜和混合信號系統多電壓的要求。增加的標準三線和SPI串行接口使設計者在嵌入式系統中使用不同的網絡通信協定方面有很大的靈活性。 數字溫度傳感器DS1722的應用領域可以涉及到個人計算機/服務器/工作組、單元電話、辦公設備或者任何熱敏系統,缺點是不能暴露在一些工業應用需要的環境壓力下,例如燃燒狀況下。相信隨著DS1722使用者的增多,其必將發揮更大的作用。 |