<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于AVR單片機和DS18B20的多點溫度測量系統(tǒng)

          基于AVR單片機和DS18B20的多點溫度測量系統(tǒng)

          作者: 時間:2013-12-10 來源:網(wǎng)絡(luò) 收藏

          1和BASCOM-AVR簡介

            是美國DALLAS公司生產(chǎn)的單總線數(shù)字溫度傳感器,從讀出或?qū)懭氲男畔H需要一根口線。在單總線工作方式下,允許一條信號線上掛接多個DS18B20,特別適合于構(gòu)成遠距離多點溫度測控系統(tǒng),從而大大簡化了系統(tǒng)布線,提高了可靠性,降低了成本,而實現(xiàn)這些的關(guān)鍵在于每片DS18B20都有唯一的ROM代碼(64位產(chǎn)品序列號)。在多點溫度測控系統(tǒng)中,ROM代碼是識別和操作DS18B20的基礎(chǔ);無論讀取還是選擇對某一個傳感器進行操作,主機必須發(fā)送64位ROM代碼。

            BASCOM-AVR是MSC Electronics公司推出的基于AVR系統(tǒng)的軟件開發(fā)仿真平臺。程序語句和Micrsoft VB/QB高度兼容;為標準LCD顯示器、I2C芯片和單總線協(xié)議芯片等擴充了專用語句;內(nèi)置模擬終端和程序下載功能;內(nèi)置軟件仿真平臺用于測試;編譯產(chǎn)生的運行代碼可在所有帶內(nèi)部存儲器的AVR微控制器中運行。DEMO版本可生成2KB程序代碼。BASCOM-AVRDEMO版安裝軟件包可到http://www.mcselec.com免費下載。

          基于AVR單片機和DS18B20的多點溫度測量系統(tǒng)

          3.1獲取序列號(64位ROM代碼)

            操作單總線數(shù)字溫度傳感器必須嚴格按規(guī)定的協(xié)議操作,即應(yīng)按以下順序操作:初始化、ROM操作命令、暫存存儲器操作命令、數(shù)據(jù)傳輸。在ROM操作命令中,有兩條命令專門用于獲取傳感器序列號:讀ROM命令(33H)和搜索ROM命令(F0H)。讀ROM命令只能在總線上僅有一個傳感器的情況下使用。搜索ROM命令則允許總線主機使用一種“消去”處理方法來識別總線上所有的傳感器序列號。為了建立64位ROM代碼和測量位置點傳感器之間的關(guān)系,我們選用讀ROM命令(33H)。DS18B20的64位ROM代碼結(jié)構(gòu)如圖2所示:

          基于AVR單片機和DS18B20的多點溫度測量系統(tǒng)

          基于AVR單片機和DS18B20的多點溫度測量系統(tǒng)

          基于AVR單片機和DS18B20的多點溫度測量系統(tǒng)

            如果某一傳感器損壞,只需按上述連接方法,撥動開關(guān)K2輸入損壞傳感器的位置編號,將新的DS18B20插入Z1插座重新測試,單片機自動根據(jù)讀取的編號值將測得的ROM代碼取代E2PROM中相同位置編號處的原ROM代碼即可。

          3.2多點溫度的巡回測量

            開關(guān)K1打開,將T斷開處接上。由于已經(jīng)在上面獲取了多個DS18B20的ROM代碼并在內(nèi)部的E2PROM中建立了測量位置點和傳感器64位ROM代碼之間的關(guān)系表,因此對多個溫度的巡回測量的步驟如下:

            (1)發(fā)跳過ROM命令CCH。

            (2)發(fā)啟動所有在線的DS18B20進行溫度轉(zhuǎn)換命令44H。

            (3)延遲1s。

            (4)發(fā)匹配ROM命令55H。

            (5)按照E2PROM中建立的關(guān)系表的順序取出64位ROM代碼發(fā)送到單總線。

            (6)發(fā)讀溫度值命令BEH,讀取溫度值。

            (7)進行CRC校驗和數(shù)據(jù)處理后送LCD顯示器顯示。

            (8)重復(fù)第4步到第7步,直到所有的DS18B20測量處理完。

            (9)再重復(fù)第1步到第8步,進行下一輪的巡回測量。

            如果只對某一個DS18B20進行溫度測量,只要將第1步的跳過ROM命令CCH,改為匹配ROM命令55H,將撥動開關(guān)撥到和要測量的DS18B20的編號相對應(yīng)的數(shù)值上,單片機90S8515讀取撥動開關(guān)的數(shù)值(編號)n,到E2PROM建立的關(guān)系表中從(n-1)×8開始的單元取出ROM代碼發(fā)送到總線,去掉第8步,其余和上面步驟相似即可。

          單片機相關(guān)文章:單片機教程


          單片機相關(guān)文章:單片機視頻教程


          單片機相關(guān)文章:單片機工作原理


          溫濕度控制器相關(guān)文章:溫濕度控制器原理

          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();