新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DS18B20在空調(diào)檢測(cè)系統(tǒng)溫度采集模塊中的應(yīng)用

DS18B20在空調(diào)檢測(cè)系統(tǒng)溫度采集模塊中的應(yīng)用

作者: 時(shí)間:2013-11-30 來(lái)源:網(wǎng)絡(luò) 收藏


溫度寄存器中的溫度值以9 bit數(shù)據(jù)格式表示,而輸出溫度則是以16 bit符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式提供,其中低8 bit用補(bǔ)碼表示,第9 bit~16 bit為擴(kuò)展符號(hào)位??照{(diào)檢測(cè)系統(tǒng)所需檢測(cè)的溫度值均在0 ℃以上,這樣,只需讀取緩存9個(gè)字節(jié)的前兩個(gè)字節(jié)即可。

2.2 硬件連接

器件都有一個(gè)唯一的64 bit ROM地址,通過(guò)協(xié)議就能識(shí)別這些序列號(hào),這樣多個(gè)DS18B20可以掛接在同一條單總線上,構(gòu)成多點(diǎn)溫度采集網(wǎng)絡(luò)。由于DS18B20具有“單總線”的技術(shù)特點(diǎn),因此可以采用兩種不同的方式連接單片機(jī)。

(1)單端口并聯(lián)連接:所有DS18B20均連接在同一條總線上,然后再連接到單片機(jī)的某個(gè)I/O端口。這種連接方式具有硬件開銷小的優(yōu)點(diǎn),理論上一根總線可以掛接256個(gè)DS18B20,但若連接的數(shù)字傳感器數(shù)量較多,單片機(jī)需要花較多的時(shí)間才能獲得每個(gè)傳感器的序列號(hào),會(huì)降低系統(tǒng)的實(shí)時(shí)性,同時(shí)使得軟件編程變得復(fù)雜。

(2)多端口并行連接:每個(gè)DS18B20獨(dú)占單片機(jī)某個(gè)I/O端口。這種并行連接方式使得單片機(jī)能夠?qū)λ械臄?shù)字傳感器進(jìn)行并行操作,同一時(shí)間能實(shí)現(xiàn)多個(gè)輸入輸出,實(shí)現(xiàn)對(duì)溫度數(shù)據(jù)的快速讀取,從而提高系統(tǒng)的實(shí)時(shí)性,同時(shí)也使得軟件編程變得簡(jiǎn)單,縮短了項(xiàng)目的開發(fā)周期。這種連接方式的缺點(diǎn)是硬件開銷比較大。

根據(jù)空調(diào)檢測(cè)系統(tǒng)的實(shí)際需要,系統(tǒng)使用16片DS18B20構(gòu)成小型溫度數(shù)據(jù)采集網(wǎng)絡(luò),結(jié)合單端口并聯(lián)連接和多端口并行連接的連接特點(diǎn),每個(gè)I/O端口連接兩片DS18B20,共使用8個(gè)I/O端口,單片機(jī)與16片DS18B20連接框圖如圖2所示。DS18B20芯片的DQ端和單片機(jī)的I/O端口相連,并接上一個(gè)4.3 kΩ的上拉電阻,芯片的GND端接地線, VDD端接5 V電源線。是一種低功耗、高性能CMOS 8 bit微控制器,具有8 KB Flash,256 B RAM,32 bit I/O口線,3個(gè)16 bit定時(shí)器/計(jì)數(shù)器,其資源性能可以滿足空調(diào)檢測(cè)系統(tǒng)溫度采集的需要。

newmaker.com

單片機(jī)需要通過(guò)接口電路實(shí)現(xiàn)與DS18B20的連接,接口電路圖如圖3所示。J1是接線端子臺(tái), DS18B20通過(guò)三芯電纜連接到J1;二極管IN4148實(shí)現(xiàn)電壓鉗位;RWDS1和單片機(jī)的一個(gè)I/O端口相連;16片DS18B20通過(guò)J1~J8與連接。

newmaker.com

3 程序設(shè)計(jì)

3.1 DS18B20溫度采集

DS18B20溫度采集基本流程:?jiǎn)纹瑱C(jī)發(fā)出復(fù)位脈沖,當(dāng)信號(hào)線上的DS18B20發(fā)出存在脈沖后,即完成DS18B20的初始化工作;單片機(jī)檢測(cè)到存在脈沖,便發(fā)起ROM操作命令;發(fā)送內(nèi)存操作指令,啟動(dòng)DS18B20溫度轉(zhuǎn)換;延時(shí)2 μs等待溫度轉(zhuǎn)換完成;發(fā)出匹配ROM命令后緊接著發(fā)送片內(nèi)ROM序列號(hào);讀取序列號(hào)對(duì)應(yīng)的DS18B20暫存器,從而讀出溫度值;讀完一個(gè)DS18B20溫度值后,接著轉(zhuǎn)向下一個(gè)DS18B20的操作。這樣的操作循環(huán)進(jìn)行,從而完成對(duì)所有DS18B20溫度值的讀取。溫度采集基本流程圖[1]如圖4所示。
溫濕度控制器相關(guān)文章:溫濕度控制器原理
熱電偶相關(guān)文章:熱電偶原理


關(guān)鍵詞: DS18B20 溫度采集模塊 AT89S52

評(píng)論


相關(guān)推薦

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

關(guān)閉