DS18B20數(shù)字溫度傳感器
工作原理編輯DS18B20的讀寫時(shí)序和測(cè)溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時(shí)的延時(shí)時(shí)間由2s減為750ms。 DS18B20測(cè)溫原理如圖3所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)發(fā)送給計(jì)數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在-55℃所對(duì)應(yīng)的一個(gè)基數(shù)值。計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,計(jì)數(shù)器1的預(yù)置將重新被裝入,計(jì)數(shù)器1重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。斜率累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。 [2]
技術(shù)性能編輯
1、技術(shù)性能描述:
①、 獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B20的雙向通訊。
② 、測(cè)溫范圍 -55℃~+125℃,固有測(cè)溫誤差(注意,不是分辨率,這里之前
是錯(cuò)誤的)1℃。
③、支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,最多只能并聯(lián)8個(gè),實(shí)現(xiàn)多點(diǎn)測(cè)溫,如果數(shù)量過(guò)多,會(huì)使供電電源電壓過(guò)低,從而造成信號(hào)傳輸?shù)牟环(wěn)定。
④、工作電源: 3.0~5.5V/DC (可以數(shù)據(jù)線寄生電源)
⑤ 、在使用中不需要任何外圍元件
⑥、 測(cè)量結(jié)果以9~12位數(shù)字量方式串行傳送
⑦ 、不銹鋼保護(hù)管直徑 Φ6
⑧ 、適用于DN15~25, DN40~DN250各種介質(zhì)工業(yè)管道和狹小空間設(shè)備測(cè)溫
⑨、 標(biāo)準(zhǔn)安裝螺紋 M10X1, M12X1.5, G1/2”任選
⑩ 、PVC電纜直接出線或德式球型接線盒出線,便于與其它電器設(shè)備連接。
DS18B20+ 和 Maxim Integrated 信息 [1]
Manufactured by Maxim Integrated, DS18B20+ is a 溫度傳感器.
應(yīng)用范圍編輯
該產(chǎn)品適用于冷凍庫(kù),糧倉(cāng),儲(chǔ)罐,電訊機(jī)房,電力機(jī)房,電纜線槽等測(cè)溫和控制領(lǐng)域。
軸瓦,缸體,紡機(jī),空調(diào),等狹小空間工業(yè)設(shè)備測(cè)溫和控制。
汽車空調(diào)、冰箱、冷柜、以及中低溫干燥箱等。
供熱/制冷管道熱量計(jì)量,中央空調(diào)分戶熱能計(jì)量和工業(yè)領(lǐng)域測(cè)溫和控制。
型號(hào)規(guī)格編輯
型 號(hào) 測(cè)溫范圍 安裝螺紋 電纜長(zhǎng)度 適用管道
TS-18B20 -55~125 無(wú) 1.5 m
TS-18B20A -55~125 M10X1 1.5m DN15~25
TS-18B20B -55~125 1/2”G 接線盒 DN40~ 60
接線說(shuō)明編輯
接線方法
面對(duì)著平的那一面,左負(fù)右正,一旦接反就會(huì)立刻發(fā)熱,有可能燒毀!同時(shí),接反也是導(dǎo)致該傳感器總是顯示85℃的原因。實(shí)際操作中將正負(fù)反接,傳感器立即發(fā)熱,液晶屏不能顯示讀數(shù),正負(fù)接好后顯示85℃。另外,如果使用51單片機(jī)的話,那么中間那個(gè)引腳必須接上4.7K—10K的上拉電阻,否則,由于高電平不能正常輸入/輸出,要么通電后立即顯示85℃,要么用幾個(gè)月后溫度在85℃與正常值上亂跳。
特點(diǎn)
獨(dú)特的一線接口,只需要一條口線通信 多點(diǎn)能力,簡(jiǎn)化了分布式溫度傳感應(yīng)用 無(wú)需外部元件 可用數(shù)據(jù)總線供電,電壓范圍為3.0 V至5.5 V 無(wú)需備用電源 測(cè)量溫度范圍為-55 ° C至+125 ℃ 。華氏相當(dāng)于是-67 ° F到257° F。在攝氏度-10 ° C至+85 ° C范圍內(nèi)精度為±0.5 ° C
溫度傳感器可編程的分辨率為9~12位,溫度轉(zhuǎn)換為12位數(shù)字格式最大值為750毫秒,用戶可定義的非易失性溫度報(bào)警設(shè)置,應(yīng)用范圍包括恒溫控制、工業(yè)系統(tǒng)、消費(fèi)電子產(chǎn)品溫度計(jì)、或任何熱敏感系統(tǒng)
描述該DS18B20的數(shù)字溫度計(jì)提供9至12位(可編程設(shè)備溫度讀數(shù))。由于DS18B20是一條口線通信,所以中央微處理器與DS18B20只有一個(gè)一條口線連接。為讀寫以及溫度轉(zhuǎn)換可以從數(shù)據(jù)線本身獲得能量,不需要外接電源。 因?yàn)槊恳粋(gè)DS18B20的包含一個(gè)獨(dú)特的序號(hào),多個(gè)ds18b20s可以同時(shí)存在于一條總線。這使得溫度傳感器放置在許多不同的地方。它的用途很多,包括空調(diào)環(huán)境控制,感測(cè)建筑物內(nèi)溫設(shè)備或機(jī)器,并進(jìn)行過(guò)程監(jiān)測(cè)和控制。
DS18B20采用一線通信接口。因?yàn)橐痪通信接口,必須在先完成ROM設(shè)定,否則記憶和控制功能將無(wú)法使用。主要首先提供以下功能命令之一: 1 )讀ROM, 2 )ROM匹配, 3 )搜索ROM, 4 )跳過(guò)ROM, 5 )報(bào)警檢查。這些指令操作作用在沒(méi)有一個(gè)器件的64位光刻ROM序列號(hào),可以在掛在一線上多個(gè)器件選定某一個(gè)器件,同時(shí),總線也可以知道總線上掛有有多少,什么樣的設(shè)備。
若指令成功地使DS18B20完成溫度測(cè)量,數(shù)據(jù)存儲(chǔ)在DS18B20的存儲(chǔ)器。一個(gè)控制功能指揮指示DS18B20的演出測(cè)溫。測(cè)量結(jié)果將被放置在DS18B20內(nèi)存中,并可以讓閱讀發(fā)出記憶功能的指揮,閱讀內(nèi)容的片上存儲(chǔ)器。溫度報(bào)警觸發(fā)器TH和TL都有一字節(jié)EEPROM 的數(shù)據(jù)。如果DS18B20不使用報(bào)警檢查指令,這些寄存器可作為一般的用戶記憶用途。在片上還載有配置字節(jié)以理想的解決溫度數(shù)字轉(zhuǎn)換。寫TH,TL指令以及配置字節(jié)利用一個(gè)記憶功能的指令完成。通過(guò)緩存器讀寄存器。所有數(shù)據(jù)的讀,寫都是從最低位開(kāi)始。
部件描述編輯
存儲(chǔ)器
DS18B20的存儲(chǔ)器包括高速暫存器RAM和可電擦除RAM,可電擦除RAM又包括溫度觸發(fā)器TH和TL,以及一個(gè)配置寄存器。存儲(chǔ)器能完整的確定一線端口的通訊,數(shù)字開(kāi)始用寫寄存器的命令寫進(jìn)寄存器,接著也可以用讀寄存器的命令來(lái)確認(rèn)這些數(shù)字。當(dāng)確認(rèn)以后就可以用復(fù)制寄存器的命令來(lái)將這些數(shù)字轉(zhuǎn)移到可電擦除RAM中。當(dāng)修改過(guò)寄存器中的數(shù)時(shí),這個(gè)過(guò)程能確保數(shù)字的完整性。
高速暫存器RAM是由8個(gè)字節(jié)的存儲(chǔ)器組成;。用讀寄存器的命令能讀出第九個(gè)字節(jié),這個(gè)字節(jié)是對(duì)前面的八個(gè)字節(jié)進(jìn)行校驗(yàn)。。
64-位光刻ROM
64位光刻ROM的前8位是DS18B20的自身代碼,接下來(lái)的48位為連續(xù)的數(shù)字代碼,最后的8位是對(duì)前56位的CRC校驗(yàn)。64-位的光刻ROM又包括5個(gè)ROM的功能命令:讀ROM,匹配ROM,跳躍ROM,查找ROM和報(bào)警查找。
外部電源的連接
DS18B20可以使用外部電源VDD,也可以使用內(nèi)部的寄生電源。當(dāng)VDD端口接3.0V—5.5V的電壓時(shí)是使用外部電源;當(dāng)VDD端口接地時(shí)使用了內(nèi)部的寄生電源。無(wú)論是內(nèi)部寄生電源還是外部供電,I/O口線要接5KΩ左右的上拉電阻。
配置寄存器
配置寄存器是配置不同的位數(shù)來(lái)確定溫度和數(shù)字的轉(zhuǎn)化。
可以知道R1,R0是溫度的決定位,由R1,R0的不同組合可以配置為9位,10位,11位,12位的溫度顯示。這樣就可以知道不同的溫度轉(zhuǎn)化位所對(duì)應(yīng)的轉(zhuǎn)化時(shí)間,四種配置的分辨率分別為0.5℃,0.25℃,0.125℃和0.0625℃,出廠時(shí)以配置為12位。
溫度的讀取
DS18B20在出廠時(shí)以配置為12位,讀取溫度時(shí)共讀取16位,前5個(gè)位為符號(hào)位,當(dāng)前5位為1時(shí),讀取的溫度為負(fù)數(shù);當(dāng)前5位為0時(shí),讀取的溫度為正數(shù)。溫度為正時(shí)讀取方法為:將16進(jìn)制數(shù)轉(zhuǎn)換成10進(jìn)制即可。溫度為負(fù)時(shí)讀取方法為:將16進(jìn)制取反后加1,再轉(zhuǎn)換成10進(jìn)制即可。例:0550H = +85 度,F(xiàn)C90H = -55 度。
控制方法編輯
DS18B20有六條控制命令,如表4.1所示:
表4.1 為DS18B20有六條控制命令
指 令 約定代碼 操 作 說(shuō) 明
溫度轉(zhuǎn)換 44H 啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換
讀暫存器 BEH 讀暫存器9字節(jié)二進(jìn)制數(shù)字
寫暫存器 4EH 將數(shù)據(jù)寫入暫存器的TH、TL字節(jié)
復(fù)制暫存器 48H 把暫存器的TH、TL字節(jié)寫到E2PROM中
重新調(diào)E2PROM B8H 把E2PROM中的TH、TL字節(jié)寫到暫存器TH、TL字節(jié)
讀電源供電方式 B4H 啟動(dòng)DS18B20發(fā)送電源供電方式的信號(hào)給主CPU
初始化
(1) 先將數(shù)據(jù)線置高電平“1”。
(2) 延時(shí)(該時(shí)間要求的不是很嚴(yán)格,但是盡可能的短一點(diǎn))
(3) 數(shù)據(jù)線拉到低電平“0”。
(4) 延時(shí)750微秒(該時(shí)間的時(shí)間范圍可以從480到960微秒)。
(5) 數(shù)據(jù)線拉到高電平“1”。
(6) 延時(shí)等待(如果初始化成功則在15到60微秒時(shí)間之內(nèi)產(chǎn)生一個(gè)由DS18B20所返回的低電平“0”。據(jù)該狀態(tài)可以來(lái)確定它的存在,但是應(yīng)注意不能無(wú)限的進(jìn)行等待,不然會(huì)使程序進(jìn)入死循環(huán),所以要進(jìn)行超時(shí)控制)。
(7) 若CPU讀到了數(shù)據(jù)線上的低電平“0”后,還要做延時(shí),其延時(shí)的時(shí)間從發(fā)出的高電平算起(第(5)步的時(shí)間算起)最少要480微秒。
(8) 將數(shù)據(jù)線再次拉高到高電平“1”后結(jié)束。
其時(shí)序如圖4.13所示:
圖4.13 初始化時(shí)序圖
寫操作
(1) 數(shù)據(jù)線先置低電平“0”。
(2) 延時(shí)確定的時(shí)間為15微秒。
(3) 按從低位到高位的順序發(fā)送字節(jié)(一次只發(fā)送一位)。
(4) 延時(shí)時(shí)間為45微秒。
(5) 將數(shù)據(jù)線拉到高電平。
(6) 重復(fù)上(1)到(6)的操作直到所有的字節(jié)全部發(fā)送完為止。
(7) 最后將數(shù)據(jù)線拉高。
DS18B20的寫操作時(shí)序圖如圖4.14所示。
圖4.14 DS18B20的寫操作時(shí)序圖
讀操作
(1)將數(shù)據(jù)線拉高“1”。
(2)延時(shí)2微秒。
(3)將數(shù)據(jù)線拉低“0”。
(4)延時(shí)3微秒。
(5)將數(shù)據(jù)線拉高“1”。
(6)延時(shí)5微秒。
(7)讀數(shù)據(jù)線的狀態(tài)得到1個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理。
(8)延時(shí)60微秒。
DS18B20的讀操作時(shí)序圖如圖4.15所示。
圖1.15 DS18B20的讀操作圖
主要特征編輯
1、DS18B20的主要特性
1.1、適應(yīng)電壓范圍更寬,電壓范圍:3.0~5.5V,在寄生電源方式下可由數(shù) 據(jù)線供電
1.2、獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B20的雙向通訊
1.3、 DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測(cè)溫
1.4、DS18B20在使用中不需要任何外圍元件,全部 傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)
1.5、溫范圍-55℃~+125℃,在-10~+85℃時(shí)精度為±0.5℃
1.6、可編程 的分辨率為9~12位,對(duì)應(yīng)的可分辨溫度分別為0.5℃、0.25℃、0.125℃和0.0625℃,可實(shí)現(xiàn)高精度測(cè)溫
1.7、在9位分辨率時(shí)最多在 93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時(shí)最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快
1.8、測(cè)量結(jié)果直接輸出數(shù)字溫度信號(hào),以"一 線總線"串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力
1.9、負(fù)壓特性:電源極性接反時(shí),芯片不會(huì)因發(fā)熱而燒毀, 但不能正常工作。
2、DS18B20的外形和內(nèi)部結(jié)構(gòu)
DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM 、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。
DS18B20的外形及管腳排列如下圖1:
DS18B20引腳定義:
(1)DQ為數(shù)字信號(hào)輸入/輸出端;
(2)GND為電源地;
(3)VDD為外接供電電源輸入端(在寄生電源接線方式時(shí)接地)。
圖2:DS18B20內(nèi)部結(jié)構(gòu)圖
3、DS18B20工作原理
DS18B20的讀寫時(shí)序和測(cè)溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時(shí)的延時(shí)時(shí)間由2s 減為750ms。高溫度系數(shù)晶振 隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在-55℃所對(duì)應(yīng)的一個(gè)基數(shù)值。計(jì)數(shù)器1對(duì) 低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,計(jì)數(shù)器1的預(yù)置將重新被裝入,計(jì)數(shù)器1重 新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即 為所測(cè)溫度。圖3中的斜率累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。
圖3:DS18B20測(cè)溫原理框圖
DS18B20有4個(gè)主要的數(shù)據(jù)部件:
(1)光刻ROM中的64位序列號(hào)是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。64位光刻ROM的排列是:開(kāi)始8位 (28H)是產(chǎn)品類型標(biāo)號(hào),接著的48位是該DS18B20自身的序列號(hào),最后8位是前面56位的循環(huán)冗余校驗(yàn)碼(CRC=X8+X5+X4+1)。光刻ROM的作用 是使每一個(gè)DS18B20都各不相同,這樣就可以實(shí)現(xiàn)一根總線上掛接多個(gè)DS18B20的目的。
(2)DS18B20中的溫度傳感器可完成對(duì)溫度的測(cè)量,以12位轉(zhuǎn)化為例:用16位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以 0.0625℃/LSB形式表達(dá),其中S為符號(hào)位。
表1: DS18B20溫度值格式表
這是12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲(chǔ)在18B20的兩個(gè)8比特的RAM中,二進(jìn)制中的前面5位是符號(hào)位,如果測(cè)得的溫度大于0, 這5位為0,只要將測(cè)到的數(shù)值乘于0.0625即可得到實(shí)際溫度;如果溫度小于0,這5位為1,測(cè)到的數(shù)值需要取反加1再乘于0.0625即可得到實(shí)際 溫度。 例如+125℃的數(shù)字輸出為07D0H,+25.0625℃的數(shù)字輸出為0191H,-25.0625℃的數(shù)字輸出為FE6FH,-55℃的數(shù)字輸出為FC90H 。
表2: DS18B20溫度數(shù)據(jù)表
(3)DS18B20溫度傳感器的存儲(chǔ)器 DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的EEPRAM,后者存放高溫度和低溫度觸發(fā)器 TH、TL和結(jié)構(gòu)寄存器。
(4)配置寄存器 該字節(jié)各位的意義如下:
表3:配置寄存器結(jié)構(gòu)
TM
R1
R0
1
1
1
1
1
低五位一直都是"1",TM是測(cè)試模式位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式。在DS18B20出廠時(shí)該位被設(shè)置為0,用 戶不要去改動(dòng)。R1和R0用來(lái)設(shè)置分辨率,如下表所示:(DS18B20出廠時(shí)被設(shè)置為12位)
表4:溫度分辨率設(shè)置表
R1
R0
分辨率
溫度最大轉(zhuǎn)換時(shí)間
0
0
9位
93.75ms
0
1
10位
187.5ms
1
0
11位
375ms
1
1
12位
750ms
4、高速暫存存儲(chǔ)器高速暫存存儲(chǔ)器由9個(gè)字節(jié)組成,其分配如表5所示。當(dāng)溫度轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補(bǔ)碼形式存放在 高速暫存存儲(chǔ)器的第0和第1個(gè)字節(jié)。單片機(jī)可通過(guò)單線接口讀到該數(shù)據(jù),讀取時(shí)低位在前,高位在后,數(shù)據(jù)格式如表1所示。對(duì)應(yīng)的溫度計(jì)算: 當(dāng)符號(hào)位S=0時(shí),直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)S=1時(shí),先將補(bǔ)碼變?yōu)樵a,再計(jì)算十進(jìn)制值。表 2是對(duì)應(yīng)的一部分溫度值。第九個(gè)字節(jié)是 冗余檢驗(yàn)字節(jié)。
表5:DS18B20暫存寄存器分布
寄存器內(nèi)容
字節(jié)地址
溫度值低位 (LS Byte)
0
溫度值高位 (MS Byte)
1
高溫限值(TH)
2
低溫限值(TL)
3
配置寄存器
4
保留
5
保留
6
保留
7
CRC校驗(yàn)值
8
根據(jù)DS18B20的通訊協(xié)議,主機(jī)(單片機(jī))控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過(guò)三個(gè)步驟:每一次讀寫之前都要對(duì)DS18B20進(jìn)行 復(fù)位操作,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對(duì)DS18B20進(jìn)行預(yù)定的操作。復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒,然后 釋放,當(dāng)DS18B20收到信號(hào)后等待16~60微秒左右,后發(fā)出60~240微秒的存在低脈沖,主CPU收到此信號(hào)表示復(fù)位成功。
表6:ROM指令表
指 令
約定代碼
功 能
讀ROM
33H
讀DS1820溫度傳感器ROM中的編碼(即64位地址)
符合 ROM
55H
發(fā)出此命令之后,接著發(fā)出 64 位 ROM 編碼,訪問(wèn)單總線上與該編碼相對(duì)應(yīng)的 DS1820 使之作出響應(yīng),為下一步對(duì)該 DS1820 的讀寫作準(zhǔn)備。
搜索 ROM
0FOH
用于確定掛接在同一總線上 DS1820 的個(gè)數(shù)和識(shí)別 64 位 ROM 地址。為操作各器件作好準(zhǔn)備。
跳過(guò) ROM
0CCH
忽略 64 位 ROM 地址,直接向 DS1820 發(fā)溫度變換命令。適用于單片工作。
告警搜索命令
0ECH
執(zhí)行后只有溫度超過(guò)設(shè)定值上限或下限的片子才做出響應(yīng)。
表6:RAM指令表
指 令
約定代碼
功 能
溫度變換
44H
啟動(dòng)DS1820進(jìn)行溫度轉(zhuǎn)換,12位轉(zhuǎn)換時(shí)最長(zhǎng)為750ms(9位為93.75ms)。結(jié)果存入內(nèi)部9字節(jié)RAM中。
讀暫存器
0BEH
讀內(nèi)部RAM中9字節(jié)的內(nèi)容
寫暫存器
4EH
發(fā)出向內(nèi)部RAM的3、4字節(jié)寫上、下限溫度數(shù)據(jù)命令,緊跟該命令之后,是傳送兩字節(jié)的數(shù)據(jù)。
復(fù)制暫存器
48H
將RAM中第3 、4字節(jié)的內(nèi)容復(fù)制到EEPROM中。
重調(diào) EEPROM
0B8H
將EEPROM中內(nèi)容恢復(fù)到RAM中的第2、3字節(jié)。
讀供電方式
0B4H
讀DS1820的供電模式。寄生供電時(shí)DS1820發(fā)送“ 0 ”,外接電源供電 DS1820發(fā)送“ 1 ”。
5、DS18B20的應(yīng)用電路DS18B20測(cè)溫系統(tǒng)具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少等優(yōu)點(diǎn)。下面就是DS18B20幾個(gè)不同應(yīng)用方式下的 測(cè)溫電路圖:
5.1、DS18B20寄生電源供電方式電路圖如下面圖4所示,在寄生電源供電方式下,DS18B20從單線信號(hào)線上汲取能量:在信號(hào)線DQ處于高電平期間把能量?jī)?chǔ)存在內(nèi)部 電容里,在信號(hào)線處于低電平期間消耗電容上的電能工作,直到高電平到來(lái)再給寄生電源(電容)充電。
獨(dú)特的寄生電源方式有三個(gè)好處:
1)進(jìn)行遠(yuǎn)距離測(cè)溫時(shí),無(wú)需本地電源
2)可以在沒(méi)有常規(guī)電源的條件下讀取ROM
3)電路更加簡(jiǎn)潔,僅用一根I/O口實(shí)現(xiàn)測(cè)溫
要想使DS18B20進(jìn)行精確的溫度轉(zhuǎn)換,I/O線必須保證在溫度轉(zhuǎn)換期間提供足夠的能量,由 于每個(gè)DS18B20在溫度轉(zhuǎn)換期間工作電流達(dá)到1mA,當(dāng)幾個(gè)溫度傳感器掛在同一根I/O線上進(jìn)行多點(diǎn)測(cè)溫時(shí),只靠4.7K上拉電阻就無(wú)法提供足夠的 能量,會(huì)造成無(wú)法轉(zhuǎn)換溫度或溫度誤差極大。
因此,圖4電路只適應(yīng)于單一溫度傳感器測(cè)溫情況下使用,不適宜采用電池供電系統(tǒng)中。并 且工作電源VCC必須保證在5V,當(dāng)電源電壓下降時(shí),寄生電源能夠汲取的能量也降低,會(huì)使溫度誤差變大。
圖4
圖4
5.2、DS18B20寄生電源強(qiáng)上拉供電方式電路圖改進(jìn)的寄生電源供電方式如下面圖5所示,為了使DS18B20在動(dòng)態(tài)轉(zhuǎn)換周期中獲得足夠的電流供應(yīng),當(dāng)進(jìn)行溫度轉(zhuǎn)換或拷貝到 E2存儲(chǔ)器操作時(shí),用MOSFET把I/O線直接拉到VCC就可提供足夠的電流,在發(fā)出任何涉及到拷貝到E2存儲(chǔ)器或啟動(dòng)溫度轉(zhuǎn)換的指令后,必須在最 多10μS內(nèi)把I/O線轉(zhuǎn)換到強(qiáng)上拉狀態(tài)。在強(qiáng)上拉方式下可以解決電流供應(yīng)不走的問(wèn)題,因此也適合于多點(diǎn)測(cè)溫應(yīng)用,缺 點(diǎn)就是要多占用一根I/O口線進(jìn)行強(qiáng)上拉切換。
圖5
圖5
圖5
注意:在圖4和圖5寄生電源供電方式中,DS18B20的VDD引腳必須接地
5.3、DS18B20的外部電源供電方式
在外部電源供電方式下,DS18B20工作電源由VDD引腳接入,此時(shí)I/O線不需要強(qiáng)上拉,不存在電源電流不足的問(wèn)題,可以保證 轉(zhuǎn)換精度,同時(shí)在總線上理論可以掛接任意多個(gè)DS18B20傳感器,組成多點(diǎn)測(cè)溫系統(tǒng)。注意:在外部供電的方式下,DS18B20的GND引腳不能懸空 ,否則不能轉(zhuǎn)換溫度,讀取的溫度總是85℃。
圖6:外部供電方式單點(diǎn)測(cè)溫電路
圖6
圖6
.
.
.
.
.
圖7:外部供電方式的多點(diǎn)測(cè)溫電路圖
圖7
圖7
外部電源供電方式是DS18B20最佳的工作方式,工作穩(wěn)定可靠,抗干擾能力強(qiáng),而且電路也比較簡(jiǎn)單,可以開(kāi)發(fā)出穩(wěn)定可靠的多點(diǎn)溫度 監(jiān)控系統(tǒng)。站長(zhǎng)推薦大家在開(kāi)發(fā)中使用外部電源供電方式,畢竟比寄生電源方式只多接一根VCC引線。在外接電源方式下, 可以充分發(fā)揮DS18B20寬電源電壓范圍的優(yōu)點(diǎn),即使電源電壓VCC降到3V時(shí),依然能夠保證溫度量精度。
6、DS1820使用中注意事項(xiàng)
DS1820雖然具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意以下幾方面的問(wèn)題:
6.1、較小的硬件開(kāi)銷需要相對(duì)復(fù)雜的軟件進(jìn)行補(bǔ)償,由于DS1820與微處理器間采用串行數(shù)據(jù)傳送,因此 ,在對(duì)DS1820進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無(wú)法讀取測(cè)溫結(jié)果。在使用PL/M、C等高級(jí)語(yǔ)言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對(duì) DS1820操作部分最好采用匯編語(yǔ)言實(shí)現(xiàn)。
6.2、在DS1820的有關(guān)資料中均未提及單總線上所掛DS1820數(shù)量問(wèn)題,容易使人誤認(rèn)為可以掛任意多個(gè) DS1820,在實(shí)際應(yīng)用中并非如此。當(dāng)單總線上所掛DS1820超過(guò)8個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問(wèn)題,這一點(diǎn)在進(jìn)行多點(diǎn)測(cè)溫系統(tǒng)設(shè)計(jì)時(shí) 要加以注意。
6.3、連接DS1820的總線電纜是有長(zhǎng)度限制的。試驗(yàn)中,當(dāng)采用普通信號(hào)電纜傳輸長(zhǎng)度超過(guò)50m時(shí),讀取的 測(cè)溫?cái)?shù)據(jù)將發(fā)生錯(cuò)誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時(shí),正常通訊距離可達(dá)150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時(shí),正 常通訊距離進(jìn)一步加長(zhǎng)。這種情況主要是由總線分布電容使信號(hào)波形產(chǎn)生畸變?cè)斐傻。因此,在用DS1820進(jìn)行長(zhǎng)距離測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要充分考 慮總線分布電容和阻抗匹配問(wèn)題。
6.4、在DS1820測(cè)溫程序設(shè)計(jì)中,向DS1820發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待DS1820的返回信號(hào),一旦 某個(gè)DS1820接觸不好或斷線,當(dāng)程序讀該DS1820時(shí),將沒(méi)有返回信號(hào),程序進(jìn)入死循環(huán)。這一點(diǎn)在進(jìn)行DS1820硬件連接和軟件設(shè)計(jì)時(shí)也要給予 一定的重視。 測(cè)溫電纜線建議采用屏蔽4芯雙絞線,其中一對(duì)線接地線與信號(hào)線,另一組接VCC和地線,屏蔽層在源端單點(diǎn)接地。
應(yīng)用舉例編輯
利用DS18B20構(gòu)成的數(shù)字溫度計(jì)
用一片DS18B20構(gòu)成測(cè)溫系統(tǒng),測(cè)量的溫度精度達(dá)到0.1度,測(cè)量的溫度的范圍在-20度到+100度之間,用8位
數(shù)碼管顯示出來(lái)
編輯:admin 最后修改時(shí)間:2019-12-17