新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于單總線的數字溫度傳感器

        基于單總線的數字溫度傳感器

        作者: 時間:2012-12-04 來源:網絡 收藏


        DSl8B20是Dallas生產的支持接口的溫度感器。獨特而且經濟的特點,使用戶可輕松地組建傳感器網絡。與其他溫度傳感器相比,DSl8B20具有以下特性:
        (1)具有3引腳TO-92小體積封裝形式。管腳排列:DQ為數字信號輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。在其內部使用了在板(ON-BOARD)專利技術,全部傳感元件及轉換電路集成在形如一只三極管的集成電路內。
        (2)量范圍為-55~+125℃,可編程為9~12位A/D轉換精度。測溫分辨率可達0.0625℃。被測溫度用符號摭展的16位數字量方式串行輸出。
        (3)其工作電源既可在遠端引入,也可采用寄生電源方式產生。
        (4)獨特的接口方式:DSl8B20在與微處理器連接時僅需要一條口線即可實現微處理器與DSl8B20的雙向通訊。
        (5)支持多點組網功能。多個DSl8B20可以并聯在唯一的3線上,實現多點測溫,可節省大量的引線和邏輯電路。

        1 的主要內部結構
        DSl8B20內部結構主要由4部分組成:64位光刻ROM、溫度傳感器、非揮發的溫度報警觸發器TH和TL、配置寄存器。每一個DSl8B20包括一個唯一的64位長的序號。該序號值存放在DSl8B20內部的ROM(只讀存貯器)中。開始8位是產品類型編碼(DSl8B20編碼均為28H),接著的48位是每個器件唯一的序號,最后8位是前面56位的CRC循環冗余校驗碼。ROM的作用是使每一個DSl8B20都各不相同,這樣就可以實現一根總線上掛接多個DSl8820的目的。
        DSl8B20中的溫度傳感器可完成對溫度的測量,以12位轉化為例,如圖1所示。用16位符號擴展的二進制補碼讀數形式提供,以0.0625℃/LSB形式表達,其中S為符號位。負溫度S=I,正溫度S=O。


        2 的工作原理
        2.1 工作序列
        根據DSl8B20的通訊協議,主機控制DSl8B20完成溫度轉換必須經過3個步驟:
        (1)每一次讀寫之前都必須要對DSl8B20進行復位;
        (2)復位成功后發送一條ROM指令;
        (3)最后發送RAM指令,這樣才能對DSl8B20進行預定的操作。
        復位要求主CPU將數據線下拉500μs,然后釋放,DSl8B20收到信號后等待16~60μs左右,后發出60~240μs的存在低脈沖,主CPU收到此信號表示復位成功。
        2.2 ROM操作命令
        當主機收到DSl8B20的響應信號后,便可以發出ROM操作命令之一,這些命令如下:
        指令代碼 代碼
        Read ROM(讀ROM) [33H]
        Match ROM(匹配ROM) [55H]
        SkipROM(跳過ROM) [CCH]
        SearchROM(搜索ROM) [FOH]
        Alarmsearch(告警搜索) [ECH]
        3 DS18B20的多點測溫
        3.1 多點測溫的原理
        每一片DSl8B20在其ROM中都存有其唯一的48位序列號,在出廠前已寫入片內ROM中。主機在進入操作程序前必須用讀ROM(33H)命令將該DSl8B20的序列號讀出:
        當主機需要對眾多在線18820的某一個進行操作時,首先要發出匹配ROM命令(55H)。接著主機提供64位序列(包括該18B20的48位序列號),之后的操作就是針對該DSl8820的。而跳過ROM命令,之后的操作是對所有D518820的。
        程序可以先跳過ROM.啟動所有DSl8B20進行溫度變換,之后通過匹配ROM,再逐一地讀回每個DSl8B20的溫度數據。
        在DSl8B20組成的多點測溫系統中,主機在發出跳ROM命令之后,再發出統一的溫度轉換啟動碼44H,就可以實現所有DSl8B20的統一轉換。再經過1s后就可以用很少的時間去逐一讀取,這種方式使其時間值往往小于傳統方式(由于采取公用的放大電路AD轉換器,只能逐一轉換)。顯然通道數越多這種省時效應就越明顯。
        3.2 多點測試系統的組建
        實驗采用AT89C51為主機,3個DSl8B20組成一個多點測試系統,如圖2所示。硬件接口非常簡單。DSl8B20的3個管腳DQ、VDD、GND分別接到主機的數據腳P1.0口、外接電源VCC以及GND上,非常節約資源,僅僅用到了主機的一條口線。
        風速傳感器相關文章:風速傳感器原理

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 北票市| 昭苏县| 南雄市| 保德县| 隆德县| 嫩江县| 丹巴县| 明水县| 芦溪县| 八宿县| 东海县| 康保县| 海林市| 盖州市| 平和县| 上饶县| 康平县| 突泉县| 同心县| 罗定市| 射阳县| 兰州市| 阿克陶县| 平山县| 韶山市| 舒兰市| 洛隆县| 阜宁县| 府谷县| 德清县| 安顺市| 永清县| 章丘市| 金川县| 和田县| 历史| 沭阳县| 来凤县| 宜都市| 松潘县| 会理县|