已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#1楼主:【原创】ZigBee学习之17ZStack API解读5文章发表于:2010-02-07 10:43网络层(NWK)网络层为高层提供下面函数功能: 网络管理 地址管理 网络变量和效能函数除了管理功能外,NWK还提供数据服务,只是应用不能访问数据服务。应用需要通过AF数据接口AF_DataRequest()来发送数据。网络管理ZStatus_t NLME_NetworkDiscoveryRequest( uint32 ScanChannels,byte ScanDuration ); 用来请求网络层发现邻居路由器。在加入操作执行网络扫描前应该调用此函数。扫描确认(结果)将以回调函数ZDO_NetworkDiscoveryConfirmCB()返回。推荐用户使用ZDO_StartDevice()来代替此函数。(除非你清楚的知道网络加入过程)ScanChannels -执行发现的通道,2.4GHz条件下只能使用通道11-26(0x07FFF800)ScanDuration -新网络启动前,每个通道被其他网络扫描的时间 BEACON_ORDER_15_MSEC 0 15.36 milliseconds BEACON_ORDER_30_MSEC 1 30.72 milliseconds BEACON_ORDER_60_MSEC 2 61.44 milliseconds BEACON_ORDER_120_MSEC 3 122.88 milliseconds BEACON_ORDER_240_MSEC 4 245.76 milliseconds BEACON_ORDER_480_MSEC 5 491.52 milliseconds BEACON_ORDER_1_SECOND 6 983.04 milliseconds BEACON_ORDER_2_SECONDS 7 1966.08 milliseconds BEACON_ORDER_4_SECONDS 8 3932.16 milliseconds BEACON_ORDER_7_5_SECONDS 9 7864.32 milliseconds BEACON_ORDER_15_SECONDS 10 15728.64 milliseconds BEACON_ORDER_31_SECONDS 11 31457.28 milliseconds BEACON_ORDER_1_MINUTE 12 62914.58 milliseconds BEACON_ORDER_2_MINUTES 13 125829.12 milliseconds BEACON_ORDER_4_MINUTES 14 251658.24 milliseconds BEACON_ORDER_NO_BEACONS 15 No Beacons transmitted 返回值:ZStatus_t -ZComDef.h中定义的状态值ZStatus_t NLME_NwkDiscReq2( NLME_ScanFields_t* fields ); 用来请求网络层发现邻居路由器。用此函数来执行一个网络扫描,但是不加入网络。扫描确认(结果)将以回调函数ZDO_NetworkDiscoveryConfirmCB()返回。回调函数执行以后通过调用NLME_NwkDiscTerm()清除此活动。fields 扫描结构体typedef struct uint32 channels; uint8 duration; NLME_ScanFields_t;void NLME_NwkDiscTerm( void ); ZStatus_t NLME_NetworkFormationRequest( uint16 PanId, uint32 ScanChannels, byte ScanDuration, byte BeaconOrder, byte SupeRFrameOrder, byte BatteryLifeExtension );函数允许上层请求设备构成网络并成为网络中的协调器。执行结果返回回调函数ZDO_NetworkFormationConfirmCB()。推荐用户使用ZDO_StartDevice()来代替此函数。PanId -此设备建立网络所使用的ID,值范围:00x3FFF。如果0xFFFF被使用,则网络层将为网络选择此PanID。如果发现网络的PAN ID相同,则增加PAN ID直到其唯一。BeaconOrder Zigbee 2006中此参数为:BEACON_ORDER_NO_BEACONS.SuperframeOrder Zigbee 2006中此参数为:BEACON_ORDER_NO_BEACONS. BatteryLifeExtension -为TRUE则请求协调器支持电池寿命扩展模式ZStatus_t NLME_StartRouterRequest( byte BeaconOrder, byte SuperframeOrder, byte BatteryLifeExtension );函数允许上层请求设备以路由器功能启动。执行结果返回回调函数 ZDO_StartRouterConfirmCB()。推荐用户使用ZDO_StartDevice()来代替此函数。BeaconOrder Zigbee 2006中此参数为:BEACON_ORDER_NO_BEACONS.SuperframeOrder Zigbee 2006中此参数为:BEACON_ORDER_NO_BEACONS. BatteryLifeExtension -为TRUE则请求协调器支持电池寿命扩展模式ZStatus_t NLME_JoinRequest( uint8 *ExtendedPANID, uint16 PanId, byte Channel, byte CapabilityInfo ); 函数允许上层发送设备加入网络的请求。执行结果返回回调函数 ZDO_JoinConfirmCB()。推荐用户使用ZDO_StartDevice()来代替此函数。ExtendedPANID -想要加入的网络的扩展PAN IDCapabilityInfo -加入设备的操作性能 CAPINFO_ALTPANCOORD 0x01 CAPINFO_DEVICETYPE_FFD 0x02 CAPINFO_Power_AC 0x04 CAPINFO_RCVR_ON_IDLE 0x08 CAPINFO_SECURITY_CAPABLE 0x40 CAPINFO_ALLOC_ADDR 0x80ZStatus_t NLME_ReJoinRequest( void );已加入设备的重新加入。执行结果返回到回调函数ZDO_JoinConfirmCB()ZStatus_t NLME_OrphanJoinRequest( uint32 ScanChannels, byte ScanDuration ); 请求网络层孤儿节点的加入。此函数是一个暗含加入的扫描。执行结果返回到回调函数ZDO_JoinConfirmCB()。推荐用户使用ZDO_StartDevice()来代替此函数。以上的几个函数基本上是被ZDO_StartDevice()的执行所取代了,呵呵!ZStatus_t NLME_PermitJoiningRequest( byte PermitDuration );定义了协调器或路由器在一个固定的周期内如何允许设备加入。PermitDuration -在这个指定的时间(单位为秒)内允许设备关联。0x00和0xff表示分别禁止或允许设备关联。ZStatus_t NLME_DirectJoinRequest( byte *DevExtAddress, byte capInfo );请求协调器或路由器设备的网络层加入一个设备作为其子设备。DevExtAddress -指向设备的IEEE地址ZStatus_t NLME_LeaveReq( NLME_LeaveReq_t* req );请求自己或者其他设备脱离网络,执行此函数不会导致其父节点重新分配设备地址。req 脱离请求数据结构: typedef struct uint8* extAddr; uint8 removeChildren; uint8 rejoin; uint8 silent; NLME_LeaveReq_t; extAddr -要脱离的设备的扩展地址removeChildren -true 子设备也脱离,false只脱离当前设备。目前只能用falserejoin -true 允许设备重新加入网络,false 不允许设备重新加入网络silent true will. false if the。void NLME_RemoveChild( uint8* extAddr, uint8 dealloc ); dealloc true will. false if the.ZMacStatus_t NwkPollReq( byte securityEnable );手动发送一个MAC数据请求(此函数只适用于终设备(end devices)。正常情况下终设备的数据检测(poll)由网络层自动处理,应用可以通过调用NLME_SetPollRate()来改变速率,如果速率设为0则可以调用此函数来手动推送数据。securityEnable 设为false. 返回值:ZMacStatus_t is the same as ZStatus_t status values defined in ZComDef.hvoid NLME_SetPollRate( uint16 newRate );(此函数只适用于终设备(end devices)newRate -单位为ms,数据推送到父设备的时间。void NLME_SetQueuedPollRate( uint16 newRate );设置/改变队列推送(poll)速率。(此函数只适用于终设备(end devices),如果一个数据推送产生了数据消息,则数据推送率马上设置到 Queued Poll Rate以排空父设备的队列数据。newRate -有效值为:0x01-0xff,0为禁止队列推送。void NLME_SetResponseRate( uint16 newRate );设置/改变应答推送(poll)速率。(此函数只适用于终设备(end devices),我们可以让应答快一些。newRate -有效值为:0x01-0xff,0为禁止队列推送。地址管理地址管理模块提供底层的地址管理,用户不能直接访问这个模块。APSME_LookupExtAddr和APSME_LookupNwkAddr提供本地地址查找,ZDP_IEEEAddrReq和ZDP_NwkAddrReq提供远程地址查找。byte *NLME_GetExtAddr( void ); 返回指向设备64位IEEE地址的指针。uint16 NLME_GetShortAddr( void ); 返回设备的16位网络地址(短地址)。uint16 NLME_GetCoordShortAddr( void );返回设备父亲的网络地址(16位短地址),注意这个地址不是Zigbee协调器的短地址(总为0x0000)void NLME_GetCoordExtAddr( byte *buf );返回设备父亲的IEEE地址(64位),注意这个地址不是Zigbee协调器的扩展地址ZStatus_t NLME_SetRequest( ZNwkAttributes_t NIBAttribute, uint16 Index, void *Value );设置NIB属性的值。NIBAttribute -只支持nwkProtocolVersion属性ZStatus_t NLME_GetRequest( ZNwkAttributes_t NIBAttribute, uint16 Index, void *Value ); NIBAttribute -只支持如下属性: nwkCapabilityInfo nwkNumNeighborTableEntries nwkNeighborTable nwkNumRoutingTableEntries nwkRoutingTableaddr_filter_t NLME_IsAddressBroADCast(uint16 shortAddress);基于设备性能,这个函数评估参数中提供的地址,决定是否是广播地址shortAddress -要测试的地址addr_filter_t - ADDR_NOT_BCAST 不是一个广播地址 ADDR_BCAST_FOR_ME 是一个广播地址,且这个设备是正确的设备类型 ADDR_BCAST_NOT_ME 是一个广播地址,这个设备是不是正确的目标byte NLME_GetProtocolVersion(); 获得NIB中的协议版本返回值: ZB_PROT_V1_0 1 ZB_PROT_V1_1 2 void NLME_SetBroadcastFilter(byte capabilities); 基于设备的性能设置位掩码,用来处理有效的广播地址capabilities -用来决定设备能处理哪些广播
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年职业教育质量评价体系构建研究报告
- 2026年甘肃医学院引进高层次人才40人备考题库(第一期)及完整答案详解一套
- 2026年湖南怀化沅陵县事业单位招聘35人备考题库含答案详解(黄金题型)
- GB/T 17824.2-2026规模猪场饲养管理规范
- 2026年399道测试题及答案
- 2026年05年数二考研试题答案
- 2026年1995面试题及答案
- 2026年51job公务员笔试题及答案
- 2026年5学位英语考试题及答案
- 2026年58到家测试笔试题目及答案
- 药品广告法专题培训
- 班组安全监督员奖惩制度
- 2025年中医内科学中级考试历年真题及答案
- 炼钢厂防混钢制度规范
- 医务人员反歧视课件培训
- 碳达峰目标下工业企业减排路径与绿色转型发展研究答辩
- 罗森加盟合同范本
- 《社会认知:从大脑到文化》阅读记录
- 《高级育婴员》职业资格通关500题(标准答案版)
- 2017-2022年近6年全国卷高考物理真题分类汇编:热力学定律(含答案)
- 展览搭建中重点与难点分析及解决策略
评论
0/150
提交评论