1.DS18B20是Dallas公司生產(chǎn)的數(shù)字溫度傳感器,具有體積小、適用電壓寬、經(jīng)濟靈活的特點。它內部使用了onboard專利技術,全部傳感元件及轉換電路集成在一個形如三極管的集成電路內。DS18B20有電源線、地線及數(shù)據(jù)線3根引腳線,工作電壓范圍為3~5.5 V,支持單總線接口。
DS18B20的結構和工作原理
2.1DS18B20的內外結構
DS18B20的外部結構如圖1所示。其中,VDD為電源輸入端,DQ為數(shù)字信號輸入/輸出端,GND為電源地。
DS18B20內部結構主要包括4部分:64位光刻ROM、溫度傳感器、非易失的溫度報警觸發(fā)器TH和TL、配置寄存器,如圖2所示。
64位ROM中,在產(chǎn)品出廠前就被廠家通過光刻刻錄好了64位序列號。該序列號可以看作是DS18B20的地址序列碼,用來區(qū)分每一個DS18B20,從而更好地實現(xiàn)對現(xiàn)場溫度的多點測量。
圖2中的暫存器是DS18B20中最重要的寄存器。暫存器由9個字節(jié)組成,各字節(jié)定義如表1所列。
配置寄存器用于用戶設置溫度傳感器的轉換精度,其各位定義如下:
TM位是測試模式位,用于設置DS18B20是工作模式(0)還是測試模式(1),其出廠值為0。R1、R0用于設置溫度傳感器的轉換精度:00,分辨率為9位,轉換時間為93.75ms;01,分辨率為10位,轉換時間為187.5 ms;10,分辨率為11位,轉換時間為375 ms;11,分辨為12位,轉換時間為750 ms。R1、R0的出廠值為11。其余5位值始終為1。
第0和第1字節(jié)為16位轉換后的溫度二進制值,其中前4位為符號位,其余12位為轉換后的數(shù)據(jù)位(分辨率為12位)。如果溫度大于0,則前4位值為0,只要將測到的數(shù)值乘上0.062 5即可得到實際溫度值;如果溫度小于0,則前4位為1,需將測得的數(shù)值取反加1后,再乘上0.062 5。第0和第1字節(jié)各位的二進制值如下:
3. DS18B20的應用電路結構
按DS18B20的供電方式,其應用電路結構可分為如下3種:寄生電源供電方式;寄生電源強上拉供電方式;外部電源供電方式。實際應用中,以外部電源供電方式為主。其應用原理圖如圖3所示。
4. DS18B20的工作原理
根據(jù)DS18B20的通信協(xié)議,MCU對其操作主要有如下3個步驟:讀寫之前,對DS18B20發(fā)送約500 μs的低電平進行復位;復位成功,發(fā)送ROM指令;發(fā)送RAM指令。MCU對DS18B20的具體操作流程如圖4所示。