基于nRF905的無(wú)線(xiàn)溫度采集系統設計與實(shí)現
3.1 下位機軟件設計
nRF905突出的優(yōu)點(diǎn)就是收發(fā)模塊電路設計簡(jiǎn)單,所需要的外圍器件少。nRF905在正常工作前應由STC11L60XE先根據需要寫(xiě)好配置寄存器,其后的工作主要是兩個(gè):發(fā)送數據和接收數據。通過(guò)TRX-CE,TX-EN,PWN-UP的設置來(lái)實(shí)現nRF905不同的工作模式,模式設置如表1所示。本文引用地址:http://dyxdggzs.com/article/194458.htm
1)發(fā)送流程 當微控制器有數據要發(fā)送時(shí),STC11L60XE先把PWR_UP引腳置為電平、TRX_CE引腳置為低電平。從而使nRF905置于待機模式;然后按時(shí)序通過(guò)SPI總線(xiàn)把發(fā)送地址和待發(fā)送的數據都寫(xiě)入nRF905相應寄存器中。SPI接口的速率在通信協(xié)議和器件配置時(shí)確定。微控制器將PWR_UP、TRX_CE和,TX_EN全置高電平,激發(fā)nRF905的ShockBurstTM發(fā)送模式。nRF905的ShockBurstTM發(fā)送包括以下步驟:射頻寄存器自動(dòng)開(kāi)啟;數據打包;發(fā)送數據包;當數據發(fā)送完成,數據準備好,引腳被置高。當TRX_CE被置時(shí),nRF905發(fā)送過(guò)程完成,自動(dòng)進(jìn)入空閑模式。Sho ckBurstTM工作模式保證一旦發(fā)送數據的過(guò)程開(kāi)始,無(wú)論TRX_EN和TX_EN引腳是高或低,發(fā)送過(guò)程都會(huì )被處理完,并且只有在前一個(gè)數據包被發(fā)送完畢,nRF905才能接受下一個(gè)發(fā)送數據包。數據包的具體格式見(jiàn)圖4,具體溫度采集發(fā)送程序流程見(jiàn)圖5。
2)接收流程 當微控制器有數據要接收時(shí),STCllL60XE先把TRX_CE置為高電平、TX_EN置為低電平,此時(shí)nRF905進(jìn)入ShockBurstTM接收模式;650 μs后,nRF905不斷監測,等待接收數據;當nRF905檢測到同一頻段的載波時(shí),載波檢測引腳被置高;當接收到一個(gè)相匹配的地址,地址匹配引腳被置高。當一個(gè)正確的數據包接收完畢,nRF905自動(dòng)移去字頭、地址和CRC校驗位,然后把數據備好引腳置高。微控制器把TRX _CE置低,nRF905進(jìn)入空閑模式。微控制器通過(guò)SPI口以一定的速率把數據移到微控制器內。當所有的數據接收完畢,nRF905把數據準備好引腳和地址匹配引腳置低。nRF905可進(jìn)入ShockBurstTM接收模式、發(fā)送模式或關(guān)機模式。具體接收程序流程見(jiàn)圖6。
評論