《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 數(shù)字溫度傳感器DS18B20的原理與應(yīng)用
數(shù)字溫度傳感器DS18B20的原理與應(yīng)用
摘要: DS18B20是DALLAS公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有3引腳TO-92小體積封裝形式;溫度測(cè)量范圍為-55℃~+125℃,可編程為9位~12位A/D轉(zhuǎn)換精度,測(cè)溫分辨率可達(dá)0.0625℃,被測(cè)溫度用符號(hào)擴(kuò)展的16位數(shù)字量方式串行輸出;其工作電源既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生;多個(gè)DS18B20可以并聯(lián)到3根或2根線上,CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。以上特點(diǎn)使DS18B20非常適用于遠(yuǎn)距離多點(diǎn)溫度檢測(cè)系統(tǒng)。
Abstract:
Key words :

1引言

DS18B20是DALLAS公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有3引腳TO-92小體積封裝形式;溫度測(cè)量范圍為-55℃~+125℃,可編程為9位~12位A/D轉(zhuǎn)換精度,測(cè)溫分辨率可達(dá)0.0625℃,被測(cè)溫度用符號(hào)擴(kuò)展的16位數(shù)字量方式串行輸出;其工作電源既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生;多個(gè)DS18B20可以并聯(lián)到3根或2根線上,CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。以上特點(diǎn)使DS18B20非常適用于遠(yuǎn)距離多點(diǎn)溫度檢測(cè)系統(tǒng)。

2 DS18B20的內(nèi)部結(jié)構(gòu)

DS18B20內(nèi)部結(jié)構(gòu)如圖1所示,主要由4部分組成:64位ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。DS18B20的管腳排列如圖2所示,DQ為數(shù)字信號(hào)輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時(shí)接地,見圖4)。

ROM中的64位序列號(hào)是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼,每個(gè)DS18B20的64位序列號(hào)均不相同。64位ROM的排的循環(huán)冗余校驗(yàn)碼(CRC=X8+X5+X4+1)。ROM的作用是使每一個(gè)DS18B20都各不相同,這樣就可以實(shí)現(xiàn)一根總線上掛接多個(gè)DS18B20的目的。

 
圖1 DS18B20的內(nèi)部結(jié)構(gòu)

DS18B20中的溫度傳感器完成對(duì)溫度的測(cè)量,用16位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以0.0625℃/LSB形式表達(dá),其中S為符號(hào)位。例如+125℃的數(shù)字輸出為07D0H,+25.0625℃的數(shù)字輸出為0191H,-25.0625℃的數(shù)字輸出為FF6FH,-55℃的數(shù)字輸出為FC90H。

23
22
21
20
2-1
2-2
2-3
2-4

溫度值低字節(jié)
MSBLSB

S
S
S
S
S
22
25
24

溫度值高字節(jié)

高低溫報(bào)警觸發(fā)器TH和TL、配置寄存器均由一個(gè)字節(jié)的EEPROM組成,使用一個(gè)存儲(chǔ)器功能命令可對(duì)TH、TL或配置寄存器寫入。其中配置寄存器的格式如下:

0
R1
R0
1
1
1
1
1

MSBLSB

R1、R0決定溫度轉(zhuǎn)換的精度位數(shù):R1R0=“00”,9位精度,最大轉(zhuǎn)換時(shí)間為93.75ms;R1R0=“01”,10位精度,最大轉(zhuǎn)換時(shí)間為187.5ms;R1R0=“10”,11位精度,最大轉(zhuǎn)換時(shí)間為375ms;R1R0=“11”,12位精度,最大轉(zhuǎn)換時(shí)間為750ms;未編程時(shí)默認(rèn)為12位精度。

高速暫存器是一個(gè)9字節(jié)的存儲(chǔ)器。開始兩個(gè)字節(jié)包含被測(cè)溫度的數(shù)字量信息;第3、4、5字節(jié)分別是TH、TL、配置寄存器的臨時(shí)拷貝,每一次上電復(fù)位時(shí)被刷新;第6、7、8字節(jié)未用,表現(xiàn)為全邏輯1;第9字節(jié)讀出的是前面所有8個(gè)字節(jié)的CRC碼,可用來保證通信正確。

3 DS18B20的工作時(shí)序

DS18B20的一線工作協(xié)議流程是:初始化→ROM操作指令→存儲(chǔ)器操作指令→數(shù)據(jù)傳輸。其工作時(shí)序包括初始化時(shí)序、寫時(shí)序和讀時(shí)序,如圖3(a)(b)(c)所示。


(a)初始化時(shí)序


(c)讀時(shí)序


圖3DS18B20的工作時(shí)序圖

4 DS18B20與單片機(jī)的典型接口設(shè)計(jì)

圖4以MCS-51系列單片機(jī)為例,畫出了DS18B20與微處理器的典型連接。圖4(a)中DS18B20采用寄生電源方式,其VDD和GND端均接地,圖4(b)中DS18B20采用外接電源方式,其VDD端用3V~5.5V電源供電。


a)寄生電源工作方式
(b)外接電源工作方式


圖4DS18B20與微處理器的典型連接圖

假設(shè)單片機(jī)系統(tǒng)所用的晶振頻率為12MHz,根據(jù)DS18B20的初始化時(shí)序、寫時(shí)序和讀時(shí)序,分別編寫了3個(gè)子程序:INIT為初始化子程序,WRITE為寫(命令或數(shù)據(jù))子程序,READ為讀數(shù)據(jù)子程序,所有的數(shù)據(jù)讀寫均由最低位開始。

DATEQUP1.0
……
INIT:CLREA
INI10:SETBDAT
MOVR2,#200
INI11:CLRDAT
DJNZR2,INI11;主機(jī)發(fā)復(fù)位脈沖持續(xù)3μs×200=600μs
SETBDAT;主機(jī)釋放總線,口線改為輸入
MOVR2,#30
IN12:DJNZR2,INI12;DS18B20等待2μs×30=60μs
CLRC
ORLC,DAT;DS18B20數(shù)據(jù)線變低(存在脈沖)嗎?
JCINI10;DS18B20未準(zhǔn)備好,重新初始化
MOVR6,#80
INI13:ORLC,DAT
JCINI14;DS18B20數(shù)據(jù)線變高,初始化成功
DJNZR6,INI13;數(shù)據(jù)線低電平可持續(xù)3μs×80=240μs
SJMPINI10;初始化失敗,重來
INI14:MOVR2,#240
IN15:DJNZR2,INI15;DS18B20應(yīng)答最少2μs×240=480μs
RET
;------------------------
WRITE:CLREA
MOVR3,#8;循環(huán)8次,寫一個(gè)字節(jié)
WR11:SETBDAT
MOVR4,#8
RRCA;寫入位從A中移到CY
CLRDAT
WR12:DJNZR4,WR12
;等待16μs
MOVDAT,C;命令字按位依次送給DS18B20
MOVR4,#20
WR13:DJNZR4,WR13
;保證寫過程持續(xù)60μs
DJNZR3,WR11
;未送完一個(gè)字節(jié)繼續(xù)
SETBDAT
RET

;------------------------
READ:CLREA
MOVR6,#8;循環(huán)8次,讀一個(gè)字節(jié)
RD11:CLRDAT
MOVR4,#4
NOP;低電平持續(xù)2μs
SETBDAT;口線設(shè)為輸入
RD12:DJNZR4,RD12
;等待8μs
MOVC,DAT
;主機(jī)按位依次讀入DS18B20的數(shù)據(jù)
RRCA;讀取的數(shù)據(jù)移入A
MOVR5,#30
RD13:DJNZR5,RD13
;保證讀過程持續(xù)60μs
DJNZR6,RD11
;讀完一個(gè)字節(jié)的數(shù)據(jù),存入A中
SETBDAT
RET
;------------------------
主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個(gè)步驟:初始化、ROM操作指令、存儲(chǔ)器操作指令。必須先啟動(dòng)DS18B20開始轉(zhuǎn)換,再讀出溫度轉(zhuǎn)換值。假設(shè)一線僅掛接一個(gè)芯片,使用默認(rèn)的12位轉(zhuǎn)換精度,外接供電電源,可寫出完成一次轉(zhuǎn)換并讀取溫度值子程序GETWD。

 

GETWD:LCALLINIT
MOVA,#0CCH
LCALLWRITE;發(fā)跳過ROM命令
MOVA,#44H
LCALLWRITE;發(fā)啟動(dòng)轉(zhuǎn)換命令
LCALLINIT
MOVA,#0CCH;發(fā)跳過ROM命令
LCALLWRITE
MOVA,#0BEH;發(fā)讀存儲(chǔ)器命令
LCALLWRITE
LCALLREAD
MOVWDLSB,A
;溫度值低位字節(jié)送WDLSB
LCALLREAD
MOVWDMSB,A
;溫度值高位字節(jié)送WDMSB
RET
……

子程序GETWD讀取的溫度值高位字節(jié)送WDMSB單元,低位字節(jié)送WDLSB單元,再按照溫度值字節(jié)的表示格式及其符號(hào)位,經(jīng)過簡(jiǎn)單的變換即可得到實(shí)際溫度值。

如果一線上掛接多個(gè)DS18B20、采用寄生電源連接方式、需要進(jìn)行轉(zhuǎn)換精度配置、高低限報(bào)警等,則子程序GETWD的編寫就要復(fù)雜一些,限于篇幅,這一部分不再詳述,請(qǐng)參閱相關(guān)內(nèi)容。

我們已成功地將DS18B20應(yīng)用于所開發(fā)的“家用采暖洗浴器”控制系統(tǒng)中,其轉(zhuǎn)換速度快,轉(zhuǎn)換精度高,與微處理器的接口簡(jiǎn)單,給硬件設(shè)計(jì)工作帶來了極大的方便,能有效地降低成本,縮短開發(fā)周期。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
日韩午夜电影av| 欧美在线高清| 欧美一级黄色录像| 亚洲一区二区三区在线| 99天天综合性| 日韩午夜在线电影| 亚洲人体影院| 亚洲毛片网站| 99精品国产在热久久婷婷| 亚洲人成艺术| 亚洲美女在线观看| 日韩写真在线| 在线亚洲一区| 亚洲男人影院| 欧美一区二区三区在线观看视频| 欧美一区激情| 亚洲电影免费观看高清完整版在线观看 | 一本色道久久综合亚洲精品小说 | 亚洲女女女同性video| 亚洲一区二区三区免费观看| 亚洲欧美制服另类日韩| 欧美一级理论性理论a| 久久gogo国模裸体人体| 久久精品亚洲精品| 亚洲精品三级| 在线视频你懂得一区| 亚洲欧美日韩一区二区三区在线观看 | 亚洲欧美日韩国产一区| 欧美一区二区高清在线观看| 久久国产精品电影| 免费久久精品视频| 欧美日韩欧美一区二区| 国产精品成人va在线观看| 国产日韩欧美不卡在线| 在线观看日韩精品| 99精品福利视频| 影音先锋久久久| 国产欧美一区二区精品仙草咪| 国产亚洲毛片在线| 亚洲第一在线| 一区二区三区毛片| 欧美影院成年免费版| 亚洲精品久久久久| 亚洲欧美韩国| 六月天综合网| 欧美三级日本三级少妇99| 国产欧美日韩综合一区在线播放| 狠狠色丁香婷婷综合| 亚洲精品视频在线播放| 亚洲一区二区高清| 亚洲国产1区| 亚洲一区二区日本| 久久综合中文| 欧美日韩一区精品| 国产在线视频欧美| 亚洲欧洲精品一区二区三区波多野1战4| 一本色道久久综合亚洲精品不| 午夜视频在线观看一区| 日韩一级免费| 久久久精品tv| 欧美性理论片在线观看片免费| 好看的日韩视频| 一区二区高清在线| 亚洲国产国产亚洲一二三| 亚洲小说春色综合另类电影| 久久久噜噜噜久久| 国产精品久久久久久久久免费| 伊人成人网在线看| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 亚洲一区二区三区四区在线观看| 亚洲激情影院| 欧美综合国产精品久久丁香| 欧美日本高清| 激情婷婷欧美| 亚洲小少妇裸体bbw| 日韩亚洲欧美中文三级| 久久久久久久久一区二区| 欧美日韩中文在线| 黄色一区二区在线观看| 亚洲神马久久| 99re66热这里只有精品3直播 | 国产精品美女久久久| 91久久精品国产91久久性色| 欧美中文字幕第一页| 亚洲欧美综合另类中字| 欧美日韩福利视频| 永久域名在线精品| 午夜精品福利电影| 亚洲一区欧美一区| 欧美日韩成人在线播放| 影音先锋久久久| 久久国产乱子精品免费女| 亚洲欧美综合另类中字| 欧美日韩视频一区二区| 亚洲国产高清在线| 亚洲第一色中文字幕| 久久精品视频在线| 国产女人精品视频| 亚洲一区二区在线播放| 亚洲女女女同性video| 欧美日精品一区视频| 亚洲人www| 亚洲精品日韩精品| 免费永久网站黄欧美| 极品少妇一区二区三区精品视频| 欧美亚洲一区三区| 欧美一区=区| 国产伦精品一区二区三区照片91 | 久久国产精品一区二区| 久久99伊人| 国产精品网站在线观看| 亚洲一品av免费观看| 亚洲欧美激情视频在线观看一区二区三区| 欧美日韩福利| 日韩一级精品视频在线观看| 亚洲视频福利| 国产精品福利在线| 亚洲无限av看| 午夜在线电影亚洲一区| 国产精品免费观看视频| 亚洲在线一区二区| 欧美在线看片a免费观看| 国产精品专区h在线观看| 午夜伦欧美伦电影理论片| 久久国产精品电影| 国产主播精品在线| 亚洲成色999久久网站| 久久躁狠狠躁夜夜爽| 在线看片第一页欧美| 亚洲精品视频在线观看免费| 欧美美女福利视频| 在线亚洲精品| 久久国产主播| 国产综合一区二区| 亚洲激情网站| 欧美日韩在线视频一区| 亚洲免费影院| 久久久噜噜噜久噜久久| 亚洲国产精品悠悠久久琪琪| 99精品热6080yy久久| 欧美午夜久久| 欧美一级视频| 免费亚洲一区二区| 亚洲伦理精品| 欧美在线观看天堂一区二区三区| 狠狠色狠狠色综合人人| 亚洲美女福利视频网站| 国产精品高清免费在线观看| 亚洲欧美文学| 蜜桃av综合| 9l国产精品久久久久麻豆| 欧美淫片网站| 在线色欧美三级视频| 一区二区欧美视频| 国产日韩欧美自拍| 亚洲欧洲日本一区二区三区| 久久久久久久久久久久久9999| 先锋影音久久久| 好男人免费精品视频| 夜夜嗨av一区二区三区四区 | 亚洲国产精品一区| 亚洲性视频网站| 国产主播在线一区| 一区二区高清视频在线观看| 国产精品一区二区在线| 亚洲激情成人| 欧美性一区二区| 久久激情综合| 欧美日韩午夜剧场| 久久精彩免费视频| 欧美婷婷六月丁香综合色| 欧美中文字幕在线播放| 欧美日韩亚洲综合在线| 久久riav二区三区| 欧美吻胸吃奶大尺度电影| 亚洲大片av| 国产精品久久久久久久免费软件 | 国产一区二区三区高清播放| 99这里只有久久精品视频| 国产午夜精品久久久久久免费视| 亚洲精品免费电影| 国产欧美一区二区在线观看| 日韩一级视频免费观看在线| 国产一区深夜福利| 亚洲一区久久久| 亚洲韩日在线| 久久久蜜桃精品| 亚洲一二三级电影| 欧美国产日韩一区二区三区| 欧美一区二区三区在线看| 国产精品久久999| 亚洲精品黄色| 精品福利av| 欧美综合二区| 一区二区三区日韩在线观看| 欧美mv日韩mv国产网站app| 午夜综合激情| 国产精品美女一区二区| 中文无字幕一区二区三区| 在线观看中文字幕不卡|