《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 數(shù)字式I2C總線溫度傳感器在溫度檢測(cè)中的應(yīng)用
數(shù)字式I2C總線溫度傳感器在溫度檢測(cè)中的應(yīng)用
林毓梁,李穎
來(lái)源:豆豆技術(shù)應(yīng)用
摘要: ds1624是dallas公司生產(chǎn)的一種功能較強(qiáng)的數(shù)字式溫度傳感器,它比同系列的ds1620控制更為簡(jiǎn)單,比ds1621分辨率更高,可以使用一片控制器控制多達(dá)8片傳感器,支持i2c總線協(xié)議,測(cè)溫范圍寬,讀數(shù)穩(wěn)定,分辨率高,無(wú)須外接電路,與單片機(jī)接口簡(jiǎn)單,可以廣泛用于溫度檢測(cè)、溫度控制,溫度報(bào)警等領(lǐng)域。
Abstract:
Key words :

  ds1624的基本特性

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


        測(cè)溫范圍:-55℃~+125℃,分辨率0.03125℃

        溫度值以13位數(shù)字量輸出(兩字節(jié)傳輸)

        溫度轉(zhuǎn)換時(shí)間小于1秒,

        數(shù)據(jù)的讀寫(xiě)通過(guò)2線串行接口實(shí)現(xiàn)(sda,scl)可選總線地址。

        內(nèi)部集成256b的e2prom,可以用來(lái)保存用戶設(shè)定的參數(shù)

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

 ds1624的工作原理

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

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


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

       表示被測(cè)溫度為:+802*0.03125=25.0625℃

ds1624的工作方式

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

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


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


        ds1624的命令集包含下面5個(gè),比相同系列的ds1621更加方便,簡(jiǎn)捷。

       ?。?)開(kāi)始溫度轉(zhuǎn)換[eeh]

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


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

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

       ?。?)讀溫度命令[aah]

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

       ?。?)訪問(wèn)配置寄存器[ach]

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


        (5)訪問(wèn)存儲(chǔ)器[17h]

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


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

                    


典型應(yīng)用

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


注意事項(xiàng)

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

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

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

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


 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。