新聞中心

        EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 數(shù)字溫度傳感器DSl8B20的簡單實用編程方案

        數(shù)字溫度傳感器DSl8B20的簡單實用編程方案

        作者: 時間:2012-08-18 來源:網(wǎng)絡(luò) 收藏

        本文以數(shù)字溫度傳感器8為例,介紹一種實用和簡單的編程方案。

        1 DS18的精簡編程考慮

        測溫分辨率:通過設(shè)置配置寄存器,DS18有0.5℃、0.25℃、0.125℃和0.062 5℃幾種溫度可供選擇。如果不作選擇,缺省值為12位,即最高分辨率0.062 5℃,這樣可省去相關(guān)寫EEPROM的命令。圖1為溫度格式。



        溫度報警高限TH和低限TL:如果設(shè)置了TH和TL,DS120將在溫度高于TH或低于TL時做出響應(yīng)。這要用到寫入EEPROM的命令,將可改寫RAM(Scratchpad RAM)拷入EEPROM。其實,在很多應(yīng)用場合,這樣的報警設(shè)置完全可以在MASTER(如單片機)中完成,從而節(jié)省DS120的編程。這只要不使用報警搜索命令(Alarm search command)即可。

        光刻ROM(lasered ROM)命令:一共有6個。對于只要單個DS120的場合,如果不考慮讀ROM中的序列號代碼,不允許報警等功能,只要進行測溫的話,用一個跳過ROM(Skip ROM)命令就足夠了。

        RAM有關(guān)的命令:一共有6個。如果在DS18B20的電源端專配電源,不設(shè)置高低溫報警,只需使用“ConvertT”和“Read Scratch”命令即可。前者開始進行溫度轉(zhuǎn)換(時間約需750 ms),后者將溫度值及循環(huán)冗余校驗碼CRC等9字節(jié)讀入MASTER(如單片機)。

        關(guān)鍵時序:盡管測量時可以作上述簡化,但DS18B20的時序必須嚴格遵循。最苛刻的時間要求應(yīng)是讀時槽(read time slots):MASTER在數(shù)據(jù)線上發(fā)出一個下降沿表示讀時槽開始,時間至少保持1μs,然后停止驅(qū)動數(shù)據(jù)總線。DS18B20在數(shù)據(jù)線上輸出約15 μs的數(shù)據(jù)。在這一時間段內(nèi),MASTER必須及時采樣數(shù)據(jù)線。這樣的定時要求與之相連的單片機必須工作在較高的頻率,如主頻為32 kHz就無法滿足15μs內(nèi)完成采樣的要求。

        2 一個簡單實用的程序設(shè)計方案

        采用上述精簡方案后,基于單片機PIC16F628A(主頻為4 MHz)實現(xiàn)的測溫程序如下:



        到此開始讀9個字節(jié)scratchpad,并檢查CRC。如無誤,再次調(diào)用rp子程序復(fù)位DS18B20,結(jié)束本次測量;如出錯,轉(zhuǎn)出錯處理子程序。為使系統(tǒng)具有一定的容錯能力,出錯時也可將上述程序再試一遍,如連續(xù)3次都出現(xiàn)CRC檢查錯則轉(zhuǎn)出錯處理子程序。

        本文引用地址:http://www.104case.com/article/185909.htm

        波段開關(guān)相關(guān)文章:波段開關(guān)原理


        風(fēng)速傳感器相關(guān)文章:風(fēng)速傳感器原理


        關(guān)鍵詞: DSl8 DSl B20 8B

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 韶关市| 东阳市| 拉萨市| 云浮市| 惠水县| 明光市| 噶尔县| 湘潭县| 虹口区| 大竹县| 城固县| 栾城县| 克什克腾旗| 桐庐县| 岳阳县| 台前县| 文登市| 武平县| 黄浦区| 五大连池市| 潜山县| 策勒县| 贵阳市| 武隆县| 田东县| 仪征市| 定边县| 鹰潭市| 成安县| 泌阳县| 屏东市| 永城市| 古浪县| 新野县| 德昌县| 玛纳斯县| 黑龙江省| 耒阳市| 浏阳市| 屏山县| 云林县|