全文预览已结束
付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
zigbee单播、组播、广播zigbee单播、组播、广播单播:按照协议栈示例GenericApp中的用法:单播有两种方式一种是绑定传输,一种是直接指定目标地址的单播传输按照如下步骤1.设定发送的目标地址GenericApp_DstAddr.addrMode=(afAddrMode_t)AddrNotPresent;GenericApp_DstAddr.endPoint=0;GenericApp_DstAddr.addr.shortAddr=0;设定发送的目标地址,这里地址模式AddrNotPresent,即按照绑定的方式进行单播,不需要指定目标地址,需要先将两个设备绑定,将两个设备绑定后即可通信还有另外三种传送方式,如下:enumAddrNotPresent=0,/按照绑定表进行绑定传输AddrGroup=1,/组播传输Addr16Bit=2,/指定目标网络地址进行单播传输Addr64Bit=3,/指定IEEE地址进行单播传输AddrBroadcast=15/广播传输;2.注册端点描述符/Fillouttheendpointdescription.GenericApp_epDesc.endPoint=GENERICAPP_ENDPOINT;GenericApp_epDesc.task_id=&GenericApp_TaskID;GenericApp_epDesc.simpleDesc=(SimpleDescriptionFormat_t*)&GenericApp_SimpleDesc;GenericApp_epDesc.latencyReq=noLatencyReqs;/RegistertheendpointdescriptionwiththeAFafRegister(&GenericApp_epDesc);3.在需要发送数据的地方,执行如下代码:if(AF_DataRequest(&GenericApp_DstAddr,&GenericApp_epDesc,GENERICAPP_CLUSTERID,(byte)osal_strlen(theMessageData)+1,(byte*)&theMessageData,&GenericApp_TransID,AF_DISCV_ROUTE,AF_DEFAULT_RADIUS)=afStatus_SUCCESS)/Successfullyrequestedtobesent.else/Erroroccurredinrequesttosend.注意GENERICAPP_CLUSTERID必须为对方的输入cluster,且两方的简单描述符中的profileID必须一致4.在接收设备任务循环中检测AF_INCOMING_MSG_CMD事件:afIncomingMSGPacket_t结构的数据包进行处理afIncomingMSGPacket_t结构如下:typedefstructosal_event_hdr_thdr;uint16groupId;uint16clusterId;afAddrType_tsrcAddr;byteendPoint;bytewasBroadcast;byteLinkQuality;byteSecurityUse;uint32timestamp;afMSGCommandFormat_tcmd;afIncomingMSGPacket_t;其中afMSGCommandFormat_t结构如下:typedefstructbyteTransSeqNumber;uint16DataLength;/NumberofbytesinTransDatabyte*Data;afMSGCommandFormat_t;提取出Data即可-组播:按照SampleApp实验,组播的实现需要如下步骤:1.声明一个组对象aps_Group_tSampleApp_Group;2.对aps_Group_t结构体赋值,示例如下:/Bydefault,alldevicesstartoutinGroup1SampleApp_Group.ID=0x0003;osal_memcpy(SampleApp_G,Group3,7);3.设定通信的目标地址,示例如下:/Setupfortheflashcommandsdestinationaddress-Group1SampleApp_Flash_DstAddr.addrMode=(afAddrMode_t)afAddrGroup;SampleApp_Flash_DstAddr.endPoint=SAMPLEAPP_ENDPOINT;SampleApp_Flash_DstAddr.addr.shortAddr=SAMPLEAPP_FLASH_GROUP;4.注册端点描述符,示例如下:/Fillouttheendpointdescription.SampleApp_epDesc.endPoint=SAMPLEAPP_ENDPOINT;SampleApp_epDesc.task_id=&SampleApp_TaskID;SampleApp_epDesc.simpleDesc=(SimpleDescriptionFormat_t*)&SampleApp_SimpleDesc;SampleApp_epDesc.latencyReq=noLatencyReqs;/RegistertheendpointdescriptionwiththeAFafRegister(&SampleApp_epDesc);5.在本任务里将端点加入到组中,示例如下:aps_AddGroup(SAMPLEAPP_ENDPOINT,&SampleApp_Group);6.按照组播地址向对方发送数据,示例如下:if(AF_DataRequest(&SampleApp_Periodic_DstAddr,&SampleApp_epDesc,SAMPLEAPP_PERIODIC_CLUSTERID,1,(uint8*)&SampleAppPeriodicCounter,&SampleApp_TransID,AF_DISCV_ROUTE,AF_DEFAULT_RADIUS)=afStatus_SUCCESS)else/Erroroccurredinrequesttosend.通信时候,发送设备的输出cluster设定为接收设备的输入cluster,另外profileID设定相同,即可通信7.对数据的处理与单播的实现一样8.若要把一个设备加入到组中的端点从组中移除,调用aps_RemoveGroup即可,示例如下:aps_Group_t*grp;grp=aps_FindGroup(SAMPLEAPP_ENDPOINT,SAMPLEAPP_FLASH_GROUP);if(grp)/Removefromthegroupaps_RemoveGroup(SAMPLEAPP_ENDPOINT,SAMPLEAPP_FLASH_GROUP);广播:按照SampleApp,执行如下步骤即可1.声明afAddrType_t的变量SampleApp_Periodic_DstAddr;2.设定目标地址变量为广播地址,示例如下:SampleApp_Periodic_DstAddr.addrMode=(afAddrMode_t)AddrBroadcast;SampleApp_Periodic_DstAddr.endPoint=SAMPLEAPP_ENDPOINT;SampleApp_Periodic_DstAddr.addr.shortAddr=0xFFFF;3.进行数据发送,示例如下:if(AF_DataRequest(&SampleApp_Periodic_DstAddr,&SampleApp_epDesc,SAMPLEAPP_PERIODIC_CLUSTERID,1,(uint8*)&SampleAppPeriodicCounter,&S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 乙酰氨基酚的药代动力学研究及其个体差异分析-洞察与解读
- 水资源调度算法-洞察与解读
- 茶陵县浣溪镇招聘社区网格员备考题库附答案详解
- 2026年农村集体经济组织管理题库
- 2026学年安徽省淮南市一年级数学期末高分通关思维拓展题附答案详细答案和解析
- 【购物节的兴起研究-以“双十一”为例14000字(论文)】
- 2026年石家庄科技职业学院单招职业倾向性考试题库及参考答案详解1套
- 溆浦县江口镇招聘社区网格员备考题库附答案详解
- 【新教材】2026年春季人教版八年级下册英语 Unit 6 Section A 1a-1d 教案
- 2026年遂宁能源职业学院单招综合素质考试题库附答案详解
- 2026“才聚齐鲁成就未来”山东省财金投资集团有限公司社会招聘20人笔试历年参考题库附带答案详解
- 2026年高考全国Ⅱ卷英语试题(含答案和音频)
- 2026广东农垦胜利农场有限公司招聘后勤工人2人备考题库附答案详解
- 虹口区2026年街道社区工作者及部门编制外聘用人员公开招聘笔试参考题库及答案详解
- 2026春苏教版六年级下册数学期末综合练习卷含答案(三套)
- 收获成长季:总结反思与进步小学主题班会课件
- 水产市场物业合同
- 初级电工技能培训一-电工常用工具
- 卢龙县鑫兴矿业有限公司采矿权出让收益评估报告
- 煤矿班组长培训课件
- LB/T 081-2020温泉旅游水质卫生要求及管理规范
评论
0/150
提交评论