发送函数AFDataRequest工科.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
发送函数AFDataRequest工科

Z-Stack 中发送数据通过在应用层调用函数void SampleApp_SendFlashMessage( uint16 flashTime )完成,其中flash Time 为发送的数据,这个函数在应用中通过调用 afStatus_t AF_DataRequest( afAddrType_t *dstAddr, endPointDesc_t *srcEP, uint16 cID, uint16 len, uint8 *buf, uint8 *transID, uint8 options, uint8 radius ) 函数完成数据的发送。如果熟悉了其中的每个参数的含义,就可以很灵活的使用发送函数发送自己的数据。 第一个参数 dstAddr,在文件AF.h中,该参数是一个结构体的指针。在该参数中除了指定了网络地址外,还需要指定目的地址的模式参数。 typedef struct { union { uint16 shortAddr; } addr; afAddrMode_t addrMode; //afAddrMode_t是一个枚举类型模式参数 byte endPoint; //指定的端点号端点241—254保留端点 范围 1-240 } afAddrType_t; 下面的是 afAddrMode_t结构体的定义 typedef enum { afAddrNotPresent = AddrNotPresent, //按照绑定表进行绑定传输 afAddr16Bit = Addr16Bit, // 指定目标网络地址进行单薄传输 16位 afAddrGroup = AddrGroup, // 组播传输 afAddrBroadcast = AddrBroadcast //广播传输 } afAddrMode_t; enum { AddrNotPresent = 0, AddrGroup = 1, Addr16Bit = 2, Addr64Bit = 3, // 指定IEEE地址进行单播传输 64位 AddrBroadcast = 15 }; 注意:ZigBee设备有两种类型的地址。一种是64位IEEE地址(物理),即MAC地址,另一种是16位网络地址。 64位地址使全球唯一的地址,设备将在它的生命周期中一直拥有它。它通常由制造商或者被安装时设置。这些地址由IEEE来维护和分配。 16为网络地址是当设备加入网络后由协调器或路由器分配的。它在网络中是唯一的,用来在网络中鉴别设备和发送数据。 第二个参数endPointDesc_t *srcEP,也是一个结构体的指针,源网络地址描述,每个终端都必须要有一个ZigBeezz的简单描述。 typedef struct { byte endPoint; //端点号 byte *task_id; // Pointer to location of the Application task ID. SimpleDescriptionFormat_t *simpleDesc; //设备的简单描述 afNetworkLatencyReq_t latencyReq; //枚举结构必须用 noLatencyReqs 填充 } endPointDesc_t; 目标设备的简单描述结构 typedef struct { byte EndPoint; //EP ID (EP=End Point) uint16 AppProfId; // profile ID(剖面ID) uint16 AppDeviceId; // Device ID byte AppDevVer:4; //Device Version 0x00 为 Version 1.0 byte Reserved:4; // AF_V1_SUPPORT uses for AppFlags:4. byte AppNumInClusters; //终端支持的输入簇的个数 cId_t *pAppInClusterList; //指向输入Cluster ID列表的指针 byte AppNumOutClusters; //输出簇的个数 cId_t *pAppOutClusterList; //指向输出Cluseter ID列表的指针 } SimpleDescriptionFormat_

文档评论(0)

woaitiantian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档