计算机硬件技术基础实验8无线ZigBee组网与传输.docVIP

计算机硬件技术基础实验8无线ZigBee组网与传输.doc

  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文档。上传文档
查看更多
计算机硬件技术基础实验8无线ZigBee组网与传输.doc

实验报告书 课程名: 《计算机硬件技术基础》 题 目: 实验八 无线ZigBee组网与传输 班 级: 软嵌151 学 号: 2015123349 姓 名: 陈正宁 评语: 成绩: 指导教师: 批阅时间: 年 月 实验八 无线ZigBee组网与传输 一、 实验目的 1、 通过实验,了解ZigBee协议的基础知识,裳握在ZXBee CC2530节点板上实现自 组织组网。 2、 学握在zstack协议栈下实现星型网络拓扑的控制方法。 二、 实验原理 1、ZigBee自组织组网。 在进行一系列的初始化操作后程序就进入事件轮询状态。 对于终端节点,若没有事件发生且定义了编译选项POWER_SAVING,则节点进入休 眠状态。协调器是Zigbee三种设备中最重要的一种。它负责网络的建立,包括信道选择, 确定唯一的PAN地址并把信息向网络中广播,为加入网络的路由器和终端设备分配地址, 维护路由表等。Z-Stack中打开编译选项ZDO_COORDINATOR,也就是在IAR开发环境屮 选择协调器,然后编译出的文件就能够启动协调器。具体工作流程是:操作系统初始化函数 osal_start_system 调用 ZDAppInit 初始化函数,ZDAppInit 调用 ZDOInitDevice 函数, ZDOInitDevice 调用 ZDApp_NetworkInit 函数,在此函数中设置 ZDO_NETWORK」NIT 事件,在ZDApp_evenl_loop任务屮对其进行处理。由第一步先调用ZDO_StartDevice启 动网络i|i的设备,再调用NLME_NclworkFormalionRcques(函数进行组网,这一部分涉及网 络层细节,无法看到源代码,在库中处理。 ZDO_NetworkFormationConfirmCB和nwk_Status函数有申请结果的处理。如果成功 则ZDO_NetworkFonnationConfirmCB先执彳亍,不成功则nwk_Slalus先执彳亍。接着,在 ZDO_NetworkFormationConfirmCB 函数屮会设置 ZDO_NETWORK_START 事件。由于第 三步,ZDApp_event_loop任务中会处理 ZDO_NETWORK_START事件,调用 ZDApp_NetworkStarlEvt函数,此函数会返回屮请的结杲。如杲不成功能量阈值会按 ENERGY_SCAN_INCREMENT 增加, 并将 App_event_loop 任务屮的事件 ID 置为 ZDO.NETWORK」NIT 然后跳回第二步执行;如果 成功则设置 ZDO_STATE_CHANGE_EVT 事件让 ZDApp_event_loop 任务处理。 对于终端或路由节点,调用ZDO_StartDevice后将调用函数NLME_Network Discovery Request进行信道扫描启动发现网络的过程,这一部分涉及网络层细节,无法看到源代码, 在库中处理,NLME_Nctwoi*kDiscoveryRequcsl函数执行的结杲将会返回到函数 ZDO_NetworkDiscoveryConfirmCB中,该函数将会返冋选择的网络,并设置事件 ZDO_NWK_DISC_CNF ,在 ZDApp_ProcessOSALMsg 中对该事件进行处理,调用 NLME_JoinRequest加入指定的网络,若加入失败,则重新初始化网络,若加入成功则调用 ZDApp.ProcessNetworkJoin 函数设置 ZDO_STATE_CHANGE_EVT,在对该事件的处理过 程 中 将调用ZDO_UpdateNwkStatus函数,此函数会向用户自定义任务发送事件 ZDO_STATE_CHANGE。 开f指定任务IDI网络状态初化I 指定目的地址I注册应用对獄I结東本实验在 开f 指定任务ID I 网络状态初化 I 指定目的地址 I 注册应用对獄 I 结東 (osal_init_system)函数中。包括了存储空间、定时器、电源管理和 任务初始化.其中用户任务初始化的流程如图所示: 任务ID (taskID)的分配是OSAL要求的,为后续调用事件函 数、定时器函数提供了参数。网络状态在启动的时候需要指定,之后 才能触发ZDO_STATE_CHANGE事件,确定设备的类型。目的地址 分配包括寻址方式,端点号和地址的指定,本实验中数据的发送使用 单播方式。之后设置应用对象的属性,这是非常关键的。由于涉及很 多参数,Z-Stack专门设计了 SimpleDescriptionFormat_t这一结构来方 便设置,其中的成员如下: EndPoint,该节点应用的端点,值在1-240之间,用来接收数据; AppProfld,

文档评论(0)

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

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

1亿VIP精品文档

相关文档