<rt id="fvj4k"></rt>

<ins id="fvj4k"></ins>
    首頁(yè) 公司簡(jiǎn)介 產(chǎn)品目錄 公司新聞 技術(shù)文章 資料下載 聯(lián)系我們
    產(chǎn)品目錄
    • 溫濕度變送器
    • 溫度傳感器
    • 溫度變送器
    • 一體化溫度變送器
    • 智能隔離變送器
    • 壓力傳感器
    • 壓力變送器
    • 液位傳感器
    • 液位變送器
    • 液位計(jì)
    • 自控儀表
    聯(lián)系我們
    聯(lián)系人:張先生
    聯(lián)系電話:010-62230011
    傳真:010-62230033
    地址:北京西直門(mén)北大街32號(hào)楓藍(lán)國(guó)際A座1711
    Email:
    郵編:100082
    公司網(wǎng)址:http://www.bjsailing.com.cn/
    技術(shù)文章
    首頁(yè) >>> 技術(shù)文章

    數(shù)字溫度傳感器DS18B20的原理與應(yīng)用

    數(shù)字溫度傳感器DS18B20的原理與應(yīng)用

    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)。
    2DS18B20
    的內(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í)接地,見(jiàn)圖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的目的。



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



    圖2DS18B20的管腳排列



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



    (b)寫(xiě)時(shí)序



    (c)讀時(shí)序
    圖3DS18B20的工作時(shí)序圖
    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或配置寄存器寫(xiě)入。其中配置寄存器的格式如下:

    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ǔ)器。開(kāi)始兩個(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碼,可用來(lái)保證通信正確。
    3DS18B20
    的工作時(shí)序
      DS18B20的一線工作協(xié)議流程是:初始化→ROM操作指令→存儲(chǔ)器操作指令→數(shù)據(jù)傳輸。其工作時(shí)序包括初始化時(shí)序、寫(xiě)時(shí)序和讀時(shí)序,如圖3(a)(b)(c)所示。
    4DS18B20
    與單片機(jī)的典型接口設(shè)計(jì)
        
    圖4以MCS-51系列單片機(jī)為例,畫(huà)出了DS18B20與微處理器的典型連接。圖4(a)中DS18B20采用寄生電源方式,其VDD和GND端均接地,圖4(b)中DS18B20采用外接電源方式,其VDD端用3V~5.5V電源供電。
        
    假設(shè)單片機(jī)系統(tǒng)所用的晶振頻率為12MHz,根據(jù)DS18B20的初始化時(shí)序、寫(xiě)時(shí)序和讀時(shí)序,分別編寫(xiě)了3個(gè)子程序:INIT為初始化子程序,WRITE為寫(xiě)(命令或數(shù)據(jù))子程序,READ為讀數(shù)據(jù)子程序,所有的數(shù)據(jù)讀寫(xiě)均由*低位開(kāi)始。
        DATEQUP1.0
        ……
        INIT:CLREA
        INI10:SETBDAT
        MOVR2,
    #200



    a
    )寄生電源工作方式
    (b)外接電源工作方式
    圖4DS18B20與微處理器的典型連接圖

    INI11:CLRDAT
    DJNZR2,INI11
    ;主機(jī)發(fā)復(fù)位脈沖持續(xù)3μs×200=600μs
    SETBDAT
    ;主機(jī)釋放總線,口線改為輸入
    MOVR2,
    #30
    I
    N12: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
    ;初始化失敗,重來(lái)
    INI14:MOVR2,
    #240
    I
    N15:DJNZR2,INI15;DS18B20應(yīng)答*少2μs×240=480μs
    RET
    ;------------------------
    WRITE:CLREA
    MOVR3,
    #8;循環(huán)8次,寫(xiě)一個(gè)字節(jié)
    WR11:SETBDAT
    MOVR4,
    #8
    RRCA
    ;寫(xiě)入位從A中移到CY
    CLRDAT
    WR12:DJNZR4,WR12
    ;等待16μs
    MOVDAT,C
    ;命令字按位依次送給DS18B20
    MOVR4,
    #20
    WR13:DJNZR4,WR13
    ;保證寫(xiě)過(guò)程持續(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
    ;保證讀過(guò)程持續(xù)60μs
    DJNZR6,RD11
    ;讀完一個(gè)字節(jié)的數(shù)據(jù),存入A中
    SETBDAT
    RET
    ;------------------------
            
    主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過(guò)三個(gè)步驟:初始化、ROM操作指令、存儲(chǔ)器操作指令。必須先啟動(dòng)DS18B20開(kāi)始轉(zhuǎn)換,再讀出溫度轉(zhuǎn)換值。假設(shè)一線僅掛接一個(gè)芯片,使用默認(rèn)的12位轉(zhuǎn)換精度,外接供電電源,可寫(xiě)出完成一次轉(zhuǎn)換并讀取溫度值子程序GETWD。
        GETWD:LCALLINIT
        MOVA,
    #0CCH
        LCALLWRITE
    ;發(fā)跳過(guò)ROM命令
        MOVA,
    #44H
        LCALLWRITE
    ;發(fā)啟動(dòng)轉(zhuǎn)換命令
        LCALLINIT
        MOVA,
    #0CCH;發(fā)跳過(guò)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)過(guò)簡(jiǎn)單的變換即可得到實(shí)際溫度值。
            
    如果一線上掛接多個(gè)DS18B20、采用寄生電源連接方式、需要進(jìn)行轉(zhuǎn)換精度配置、高低限報(bào)警等,則子程序GETWD的編寫(xiě)就要復(fù)雜一些,限于篇幅,這一部分不再詳述,請(qǐng)參閱相關(guān)內(nèi)容。
            
    我們已成功地將DS18B20應(yīng)用于所開(kāi)發(fā)的“家用采暖洗浴器”控制系統(tǒng)中,其轉(zhuǎn)換速度快,轉(zhuǎn)換精度高,與微處理器的接口簡(jiǎn)單,給硬件設(shè)計(jì)工作帶來(lái)了極大的方便,能有效地降低成本,縮短開(kāi)發(fā)周期。

     

    上一篇:基于ARM7和數(shù)字溫度傳感器的多點(diǎn)測(cè)溫系統(tǒng)設(shè)計(jì)
    下一篇:暫無(wú)
    Copyright@ 2003-2025  北京賽億凌科技有限公司版權(quán)所有      電話:010-62230011 傳真:010-62230033 地址:北京西直門(mén)北大街32號(hào)楓藍(lán)國(guó)際A座1711 郵編:100082
             京ICP備06005659號(hào)-2   

    感谢您访问我们的网站,您可能还对以下资源感兴趣:

    嘿咻漫画视频
    <label id="i4jwp"><xmp id="i4jwp"><optgroup id="i4jwp"></optgroup>