一種基于DS18B20的溫度采集新方案
3.2 軟件設(shè)計(jì)
本課題設(shè)計(jì)使單片機(jī)每次上電時(shí),都重新讀取每根數(shù)據(jù)線上的每個(gè)DS18B20的序列號(hào)和溫度報(bào)警器中的內(nèi)容,I/O端口號(hào)+溫度報(bào)警觸發(fā)器中的層信息即為該DS18B20的邏輯地址。單片機(jī)將讀取到的各DS18B20的序列號(hào)與其對應(yīng)的邏輯地址,通過MOSI引腳保存在外部存儲(chǔ)器EEP-ROM中。在控制模塊的固化程序中,只涉及傳感器的邏輯地址。當(dāng)需要訪問某個(gè)傳感器時(shí),單片機(jī)會(huì)根據(jù)固化程序中的邏輯地址在EEPROM中查找該邏輯地址對應(yīng)的 DS18B20序列號(hào),從而找到需要訪問的傳感器。在更換了某個(gè)DS18B20時(shí),只需給單片機(jī)重新上電,微控制會(huì)更新EEPRO-M,而不需修改控制模塊中的固化程序。
本課題中,使用ICCAVR編譯器作為軟件開發(fā)環(huán)境,編譯C語言程序代碼。向EEPROM中保存序列號(hào)的程序流程圖如圖7所示。
根據(jù)控制模塊中涉及的邏輯地址,單片機(jī)在EEPROM中查找對應(yīng)的DS18B20的序列號(hào)的程序流程如圖8所示。
4 結(jié)語
無線測溫系統(tǒng)的應(yīng)用前景非常廣闊。本課題提出的通過外接EEPROM存儲(chǔ)器,保存DS18B20的序列號(hào)和對應(yīng)的邏輯地址的方案,解決了 DS-18B20的更新問題。可以極大地提高技術(shù)人員及工作人員的工作效率;同時(shí),由于在通信鏈路中傳輸?shù)氖沁壿嫷刂?,所以減少了鏈路中的冗余信息,增加有效信息的傳輸,提高無線傳輸效率。因此,本課題設(shè)計(jì)的溫度采集系統(tǒng)具有運(yùn)行速率快、性能穩(wěn)定、數(shù)字化程度高、便于維護(hù)等特點(diǎn)。此系統(tǒng)在各類數(shù)字通信、環(huán)境監(jiān)測、安防系統(tǒng)等多個(gè)領(lǐng)域具有廣泛的應(yīng)用價(jià)值。并且已經(jīng)在CX-AT16硬件平臺(tái)上實(shí)現(xiàn)了仿真。
評論