ZigBee组播通信原理
来源:互联网 发布:dota地精工程师知乎 编辑:程序博客网 时间:2024/05/19 19:33
组播通信原理
组播通信:在Zigbee网络,模块可以分组来标记,发送的模块如果组号和网络里面标记模块的组号相对应,那么这些模块就可以
拿到这些无线数据包。
组播的特点:
1,分组中的编号是两个字节(即组号是两个字节)
2,组号必须和已经定义了的端点相关联。
即:组都是和模块里已经定义了的端点相关联,如果我们说一个模块标记为组0x01,那么这个模块里面至少有一个定义了的
端点与这个和组(0x01)相关联
3,发送模块必须指明发送给哪个组,哪个端点,簇编号,原则上,只要当接收模块的这三个参数匹配上了,才能拿到和处理这样
一个无线数据包。
4,组标记中,同一个模块下的定义的一个组,可以关联多个可用的端点,同一个端点也可以关联多个组。
代码示例:
#define SAMPLEAPP_FLASH_CLUSTERID 2 //簇编号#define SAMPLEAPP_FLASH_GROUP 0x0001 //组编号afAddrType_t SampleApp_Flash_DstAddr; //组播// Setup for the flash command's destination address - Group 1SampleApp_Flash_DstAddr.addrMode = (afAddrMode_t)afAddrGroup;//注意这里发送模式为组播SampleApp_Flash_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;SampleApp_Flash_DstAddr.addr.shortAddr = SAMPLEAPP_FLASH_GROUP;//注意这里是接收模块的组编号endPointDesc_t SampleApp_epDesc;SampleApp_epDesc.endPoint = SAMPLEAPP_ENDPOINT;//模块的端点SampleApp_epDesc.task_id = &SampleApp_TaskID;//指明数据由接收方的哪一个任务来处理SampleApp_epDesc.simpleDesc = (SimpleDescriptionFormat_t *)&SampleApp_SimpleDesc;SampleApp_epDesc.latencyReq = noLatencyReqs;afRegister( &SampleApp_epDesc );//绑定aps_Group_t SampleApp_Group;SampleApp_Group.ID = 0x0001; //接收模块的组编号osal_memcpy( SampleApp_Group.name, "Group 1", 7 );aps_AddGroup( SAMPLEAPP_ENDPOINT, &SampleApp_Group );//把组跟端点关联,一定要端点关联uint8 SampleApp_TransID = 0; //发送成功的帧条数,由底层负责更新uint8 buffer[3];uint16 flashTime = 856;//组播的数据buffer[0] = (uint8)(SampleAppFlashCounter++);buffer[1] = LO_UINT16( flashTime );buffer[2] = HI_UINT16( flashTime );if ( AF_DataRequest( &SampleApp_Flash_DstAddr, &SampleApp_epDesc, SAMPLEAPP_FLASH_CLUSTERID, 3, buffer, &SampleApp_TransID, AF_DISCV_ROUTE, AF_DEFAULT_RADIUS ) == afStatus_SUCCESS ){}
代码很简单,有以下几点需要说明一下:
1,在使用上广播没有什么区别,仅仅是地址模式、地址内容不一样
2,可以调用aps_RemoveGroup方法解除关联。
2,协调器用到了组,要引入#include "aps_groups.h" 头文件。
0 0
- ZigBee组播通信原理
- Zigbee网络中单播、组播、广播通信
- Zigbee单播、组播、广播网络通信
- IPv4组播通信原理
- ZigBee CC2530 Z-Stack 21 组播通信
- ZigBee绑定通信原理
- ZigBee组播通讯
- ZigBee单播通信原理、串口配置 (对于理解收发数据的过程非常重要)
- ZigBee MAC地址通信原理
- zigbee单播、组播、广播
- AF_DataRequest zigbee单播、组播、广播
- zigbee单播、组播、广播
- zigbee单播、组播、广播
- zigbee单播、组播、广播
- zigbee 广播 组播 单播
- zigbee单播、组播、广播
- Zigbee单播、组播、广播使用
- Zigbee组播的实现
- scala高级编程
- 您的设计模式——代理模式【Proxy Pattern 】
- Android关于Theme.AppCompat相关问题的深入分析
- 博客搬家,感觉简书更加适合
- 利用NIFI将kafka日志文件成功至HDFS
- ZigBee组播通信原理
- 【LeetCode】292. Nim Game
- 插件化开发-动态加载
- String、StringBuffer、StringBuilder区别
- 一句代码叫你实现高仿qq的侧滑菜单
- Ubuntu下制作U盘启动盘
- js编写list控件(参照网上原型用法)
- 对语法和语义的理解
- Java备忘录//12-20