<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 消費(fèi)電子 > 設(shè)計應(yīng)用 > 數(shù)字式I2C總線溫度傳感器在溫度檢測中的應(yīng)用

          數(shù)字式I2C總線溫度傳感器在溫度檢測中的應(yīng)用

          ——
          作者:濟(jì)南鐵道職業(yè)技術(shù)學(xué)院 林毓梁 李穎 時間:2007-01-26 來源:《》 收藏

          ds1624的基本特性

          本文引用地址:http://www.ex-cimer.com/article/20594.htm

          ds1624是dallas公司生產(chǎn)的一種功能較強(qiáng)的數(shù)字式溫度傳感器,它比同系列的ds1620控制更為簡單,比ds1621分辨率更高,可以使用一片控制器控制多達(dá)8片傳感器,支持i2c總線協(xié)議,測溫范圍寬,讀數(shù)穩(wěn)定,分辨率高,無須外接電路,與單片機(jī)接口簡單,可以廣泛用于溫度檢測、溫度控制,溫度報警等領(lǐng)域。

          測溫范圍:-55℃~+125℃,分辨率0.03125℃
          溫度值以13位數(shù)字量輸出(兩字節(jié)傳輸)
          溫度轉(zhuǎn)換時間小于1秒,
          數(shù)據(jù)的讀寫通過2線串行接口實現(xiàn)(sda,scl)可選總線地址。
          內(nèi)部集成256b的e2prom,可以用來保存用戶設(shè)定的參數(shù)

          引腳說明 ds1624為8腳dip封裝或者soic封裝,其引腳功能如下表。


          ds1624的工作原理

          ds1624采用專用的片內(nèi)的溫度測量技術(shù)進(jìn)行溫度的測量,其溫度測量原理如圖1。


          在計數(shù)門開通的情況下對低溫系數(shù)振蕩器的脈沖個數(shù)進(jìn)行計數(shù),計數(shù)脈沖的周期由高溫系數(shù)振蕩器所決定,計數(shù)器和溫度寄存器的預(yù)先設(shè)置值為-55℃。如果計數(shù)器在脈沖結(jié)束之前達(dá)到0,則溫度寄存器增加,同時計數(shù)器預(yù)置為非線性累加器的值,并重新開始計數(shù),如果脈沖周期在計數(shù)器到0之前還未結(jié)束,則重復(fù)上面的過程,否則停止計數(shù)。最終溫度寄存器中的值即為被測溫度值。

          ds1624的溫度值以0.03125℃為單位表示,1624 內(nèi)部的溫度寄存器為13位(2個字節(jié))的寄存器,該寄存器可以通過iic總線串行讀出,高位在前。該13寄存器的內(nèi)容即為補(bǔ)碼表示的溫度值,最高位置符號位,符號位?quot;1"表示溫度值為負(fù),為"0"表示溫度值為正。將該13位數(shù)據(jù)的真值乘以0.03125,即為被測溫度值。例如:

          表示被測溫度為:+802*0.03125=25.0625℃


          ds1624的工作方式

          ds1624可以在兩種方式下工作,連續(xù)轉(zhuǎn)換方式和一次轉(zhuǎn)換方式,通過配置寄存器的來控制使用哪種工作模式。

          done 為轉(zhuǎn)換完成位,溫度轉(zhuǎn)換完成時候為1,正在轉(zhuǎn)換時為0,1shot為一次模式位,該位為1時,每次收到開始轉(zhuǎn)換命令執(zhí)行一次溫度轉(zhuǎn)換,為0時,執(zhí)行連續(xù)溫度轉(zhuǎn)換,該位為非易失性的。

          ds1624在嵌入一個系統(tǒng)時,需要有mcu對其發(fā)出控制命令,如讀寫狀態(tài)寄存器,讀溫度寄存器,開始溫度轉(zhuǎn)換等命令,mcu對ds1624的控制是通過i2c總線接口來實現(xiàn)的,寫入和讀出完全遵循i2c總線的協(xié)議。

          ds1624的命令集包含下面5個,比相同系列的ds1621更加方便,簡捷。

          (1)開始溫度轉(zhuǎn)換[eeh]

          該命令啟動溫度轉(zhuǎn)換,無需讀數(shù)據(jù),再一次轉(zhuǎn)換模式下,該命令啟動轉(zhuǎn)換,ds1624完成轉(zhuǎn)換之后保持空閑,在連續(xù)轉(zhuǎn)換方式下,該命令啟動ds1624進(jìn)行連續(xù)的溫度轉(zhuǎn)換。

          (2)溫度轉(zhuǎn)換結(jié)束命令[22h]

          該命令停止溫度轉(zhuǎn)換,無需更多數(shù)據(jù),在連續(xù)運(yùn)行方式下,該命令停止ds1624的溫度轉(zhuǎn)換,并且保持空閑,直到ds1624得到新的溫度轉(zhuǎn)換開始命令。

          (3)讀溫度命令[aah]

          該命令讀出最近一次溫度轉(zhuǎn)換的結(jié)果,隨后ds1624將兩個字節(jié)補(bǔ)碼表示的溫度值送出。最高為符號位,最低三位不用。

          (4)訪問配置寄存器[ach]

          若r/w=0,該命令寫入配置寄存器之后,mcu送出一個字節(jié),用以確定ds1624的工作方式;若r/w=1,ds6124送出當(dāng)前狀態(tài)用來通知mcu轉(zhuǎn)換是否完成。

          (5)訪問存儲器[17h]

          該命令用來訪問ds1624內(nèi)部集成的256b的e2存儲器,下一字節(jié)數(shù)據(jù)為被訪問的存儲器的地址,即可進(jìn)行e2存儲器的讀寫操作,讀寫時和其他的i2c協(xié)議的e2存儲器相同。讀者可參考其它的資料。

          ds1624 啟動溫度轉(zhuǎn)換、訪問配置寄存器、讀取溫度值的流程圖見圖2。



          典型應(yīng)用

          ds1624的典型應(yīng)用圖,見圖3,其中l(wèi)ed顯示和溫度報警電路讀者可以自行設(shè)計。ds1624沒有專門的溫度控制功能,用戶可以將溫度控制信息,如溫度上限,溫度下限保存在e2存儲器中。工作時可將ds1624設(shè)為連續(xù)工作方式,mcu不停讀取溫度值,送顯示裝置顯示,并可將溫度值和e2存儲器中的溫度控制參數(shù)比較,用以驅(qū)動報警、加熱或其他執(zhí)行機(jī)構(gòu)。還可以將pid等參數(shù)存于e2存儲器中,通過先進(jìn)的算法實現(xiàn)閉環(huán)控制。


          注意事項

          ds1624在使用的時候,應(yīng)注意幾點(diǎn)問題

          1、寫e2prom需要10ms的時間,所以在每一次寄存器寫操作后都需要等待10ms再進(jìn)行下一次寫操作。 2、由于sda、scl均為漏極開路i/o因此一定要有上拉電阻。

          3、在數(shù)據(jù)傳輸和寫命令字的時候,一定遵循i2c總線的協(xié)議,在由寫操作到讀操作轉(zhuǎn)換的時候,應(yīng)該重新啟動數(shù)據(jù)傳輸,然后發(fā)送地址和讀寫位。

          4、在構(gòu)成測溫系統(tǒng)時,一片單片機(jī)最多可以連接8片ds1624,并可采用求平均值的方法提高測量精度。此時應(yīng)將地址a2、a1、a0作不同的調(diào)整。



          關(guān)鍵詞:

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();