基于nRF24AP1的智能家居設計方案
3.2 信道配置
在A(yíng)NT節點(diǎn)實(shí)現通信之前,必須對信道參數進(jìn)行配置,這些參數包括網(wǎng)絡(luò )號、射頻頻率、信道ID(生產(chǎn)商ID/設備類(lèi)型/設備號)、信道類(lèi)型和信道周期。主從結點(diǎn)要求網(wǎng)絡(luò )號、射頻頻率和信道周期3個(gè)參數設置完全一致,信道類(lèi)型參數的設置必須一一對應,例如“雙向發(fā)送信道”對應“雙向接收信道”。至于信道ID 參數,則應從節點(diǎn)遵循主節點(diǎn)的設置。
主機通過(guò)串口對信道參數進(jìn)行配置,配置過(guò)程如下:
①配置信道之前要進(jìn)行系統復位,執行ANT_ResetSystem();
②分配信道,執行ANT_AssignChannel();
③配置信道ID,執行ANT__SetChannelID()。
同樣,各從機也按照主機配置步驟對從機進(jìn)行信道參數配置,設置自己的信道號、信道類(lèi)型、網(wǎng)絡(luò )號等。
3.3 節點(diǎn)配置
ANT協(xié)議中,通信節點(diǎn)建立連接的過(guò)程稱(chēng)為節點(diǎn)配對的過(guò)程。ANT協(xié)議提供兩層配對控制,即信道ID和配對比特。
對于信道ID,只有相同的或兼容的信道ID才允許配對。
對于信道比特,信道ID參數中“設備類(lèi)型”字段的最高位規定為ANT的“配對比特”。當從節點(diǎn)對僅知曉部分信道ID參數時(shí),該比特的設置才對配對結果有影響。ANT協(xié)議規定,具有兼容的信道ID參數且配對比特的設置也相同的節點(diǎn)才能實(shí)現配對。
如果信道ID的所有數據域都是已知的,將不需要配對比特,因為接收者已經(jīng)準確地知道要和哪個(gè)發(fā)送者連接,當使用配對比特并且信道ID的數據域至少一個(gè)是wild card時(shí),期望和另一方建立通信的兩個(gè)節點(diǎn)在連接過(guò)程中配對比特必須處于同一狀態(tài)。
3.4 打開(kāi)信道,發(fā)送數據
當用戶(hù)想遙控家電時(shí),主機執行數據發(fā)送。主機有輸入按鍵1、2等(代表信道1、信道2)來(lái)選擇信道,當有按鍵輸入時(shí),主機從休眠模式快速蘇醒,快速完成數據傳輸任務(wù)。另還有發(fā)送按鍵“SEND”,用來(lái)調用發(fā)送數據函數。
執行過(guò)程如下:
①打開(kāi)信道,調用ANT_OpenChannel();
②發(fā)送數據,調ANT_SendBroadcastData()。
例如通過(guò)按鍵“1”打開(kāi)1信道,主程序調用ANT_OpenChannel(1)一>SerialData0xA4,0x01,0x4B, 0x01,0xEF),即調用ANT_OpenChannel(1)將產(chǎn)生串行數據(0xA4,0x0l,0x4B,0x01,0xEF),然后把這些串行數據以比特的形式發(fā)送到ANT模塊的接收緩存。ANT協(xié)議自動(dòng)移去0xA4、0X01、0x4B、0xEF,即第4個(gè)數據0x01為有效數據,放在接收緩存,觸發(fā)接收中斷。本文引用地址:http://dyxdggzs.com/article/157999.htm
4 液晶模塊接口與鍵盤(pán)接口設計
按鍵用于數據輸入。本設計使用獨立式按鍵,電路簡(jiǎn)單,每個(gè)按鍵接通一條輸入數據線(xiàn),這樣按鍵工作不會(huì )影響其他I/O口。這里用3個(gè)按鍵舉例,介紹電路使用查詢(xún)方式。
按鍵1:“CHl”,輸入信道“1”。
按鍵2:“CH2”,輸入信道“2”。
按鍵3:“SEND”,發(fā)送數據。
LCD作為人機交互界面,通過(guò)按鍵輸入顯示選擇的信道(CHl/CH2),通過(guò)按鍵輸入信道數,執行打開(kāi)信道函數ANT_OpenChannel()。如打開(kāi)信道1,執行ANT_OpenChannel(1)。主機處于查詢(xún)接收狀態(tài),主機尋找匹配信道的節點(diǎn),然后建立連接,等待數據的傳輸。點(diǎn)“SEND” 按鍵,執行發(fā)送數據消息函數ANT_SendBroad-castData()發(fā)送數據。每次打開(kāi)信道和發(fā)送數據消息成功都有LED指示。
當主機沒(méi)有數據發(fā)送時(shí),主機MCU置SLEEP為高,使主機進(jìn)入休眠狀態(tài),進(jìn)入省電模式,以達到省電節能的目的。圖4為軟件實(shí)現流程圖。
結語(yǔ)
本設計方案中的智能家居系統利用無(wú)線(xiàn)網(wǎng)路芯片nRF24APl傳輸數據,硬件電路簡(jiǎn)單。芯片內嵌ANT協(xié)議,協(xié)議結構簡(jiǎn)易,使用方便,成本較低,超低功耗,軟件設計合理,使用穩定可靠,效率高,而且節點(diǎn)易擴展。這不僅在智能家居方面,還在體育娛樂(lè )、遠程控制系統、醫療工業(yè)自動(dòng)化及其他新興無(wú)線(xiàn)應用領(lǐng)域,都具有推廣價(jià)值和廣闊的市場(chǎng)前景。
評論