基于單片機ATmega16的無(wú)線(xiàn)溫度監測系統
溫度傳感器模塊采用數字溫度傳感器DS18B20,它是美國Dallas半導體公司推出的一種智能數字溫度傳感器。DS18B20在與MCU連接時(shí)僅需要一條線(xiàn)(即單總線(xiàn)接口,加電源為三線(xiàn)接口)即可實(shí)現微處理器與DS18B20的雙向通訊。使用DS18B20可以節省系統資源、使系統結構更趨簡(jiǎn)單。DS18B20測溫范圍是-55℃~+125℃,固有測溫分辨率0.5℃。工作電源為3 V~5V/DC。在使用中不需要任何外圍元件,測量結果以9~12位數字量方式串行傳送。DS18B20內部結構主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。其中64位光刻ROM中存儲的是該DS18B20的地址序列號碼。其號碼的排列是:最初8位(28H)是產(chǎn)品類(lèi)型標號,接著(zhù)的48位是DS18B20自身的序列號,最后8位是前面56位的循環(huán)冗余校驗碼(CRC=X8+X5+X4+1)。光刻ROM中的地址序列碼可以區分每一個(gè)DS18B20,從而實(shí)現在同一根總線(xiàn)上掛接多個(gè)DS18B20。根據DS18B20的通訊協(xié)議,MCU(單片機)控制DS18B20完成溫度轉換必須經(jīng)過(guò)三個(gè)步驟:
(1)每一次讀寫(xiě)之前都要對DS18B20進(jìn)行復位操作
(2)復位成功后發(fā)送一條ROM指令
(3)最后發(fā)送RAM指令
這樣才能對DS18B20進(jìn)行預定的操作。復位要求主CPU將數據線(xiàn)下拉500 μs,然后釋放,當DS18B20收到信號后等待16~60μs左右,后發(fā)出60~240μs的低脈沖,主CPU收到此信號表示復位成功。論文設計的測溫系統中每一個(gè)DS18B20在與MCU連接時(shí)各占用一個(gè)I/O口,則MCU控制DS18B20完成溫度轉換的步驟如圖3所示。本文引用地址:http://dyxdggzs.com/article/172738.htm
nRF24L01是Nordic公司推出的高集成的單片無(wú)線(xiàn)收發(fā)器件。芯片具備自動(dòng)應答和自動(dòng)重發(fā)功能,速度可達2 Mbps,126個(gè)可選工作頻道,很短的頻道切換時(shí)間,可用于跳頻,其輸出功率,頻道選擇以及協(xié)議設置都可以通過(guò)SPI口進(jìn)行設置。其Enhanced Shock Burst模式可以同時(shí)控制應答及重發(fā)功能而無(wú)需增加微控制器的工作量。nRF24L01還具備同一頻道接收六路不同通道數據的功能,利用FDMA技術(shù)最多可實(shí)現750個(gè)點(diǎn)的數據采集,這使它成為無(wú)線(xiàn)溫度測量系統硬件實(shí)現的最佳選擇。nRF24L01模塊在與MCU進(jìn)行數據傳輸時(shí),可以使用MCU普通的I/O口,系統中直接利用ATmega16的固有資源SPI通信口,這樣從一定程度上簡(jiǎn)化了軟件設計過(guò)程。
評論