Zigbee 协议栈网络管理
ZigBee 協(xié)議棧網(wǎng)絡(luò)管理? 主要是對新加入的設(shè)備節(jié)點的設(shè)備管理。每個 CC2530 芯片出廠時候都有一個全球唯一的 32 位 MAC地址。當(dāng)時當(dāng)設(shè)備連入網(wǎng)絡(luò)中的時候,每個設(shè)備都能獲得由協(xié)調(diào)器分配的16 位短地址,協(xié)調(diào)器默認地址(0x0000)。很多時候網(wǎng)絡(luò)就是通過短地址進行管理。
?修改點播信息發(fā)送函數(shù)
void SampleApp_SendPointToPointMessage( void ) {uint8 device; //設(shè)備類型變量if ( SampleApp_NwkState == DEV_ROUTER )device=0x01; //編號1表示路由器 else if (SampleApp_NwkState == DEV_END_DEVICE)device=0x02; //編號2表示終端 elsedevice=0x03; //編號3表示出錯if ( AF_DataRequest( &Point_To_Point_DstAddr, //發(fā)送設(shè)備類型編號&SampleApp_epDesc,SAMPLEAPP_POINT_TO_POINT_CLUSTERID,1,&device,&SampleApp_TransID,AF_DISCV_ROUTE,AF_DEFAULT_RADIUS ) == afStatus_SUCCESS ){}else{// Error occurred in request to send. }}修改完成后系統(tǒng)設(shè)備自動檢測自己燒寫的類型,然后發(fā)送對應(yīng)的編號。路由器編號為 1,終端編號為 2。
數(shù)據(jù)接收方面,我們對接收到的數(shù)據(jù)進行判斷,區(qū)分路由器和終端設(shè)備。然后在數(shù)據(jù)包中取出 16 位短地址。通過串口打印出來 。短地址在數(shù)據(jù)包里的存放位置。依次是 pkt--- srcAddr---shortAddr。
接收函數(shù)
將修改后的程序分別以協(xié)調(diào)器、路由器、終端的方式下載到 3 個 或以上設(shè)備,協(xié)調(diào)器連接到 PC 機。上電后每個設(shè)備往協(xié)調(diào)器發(fā)送自身編號,協(xié)調(diào)器通過串口打印出來。
可以利用同樣的方法可以將 MAC 地址、 PANID 等讀取出來?;蛘咦孕性O(shè)定預(yù)定義節(jié)點編號進行網(wǎng)絡(luò)管理
轉(zhuǎn)載于:https://www.cnblogs.com/tianxxl/p/10244785.html
總結(jié)
以上是生活随笔為你收集整理的Zigbee 协议栈网络管理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GPS 模块个人使用经验总结
- 下一篇: 添加内核驱动模块(2)(mydriver