zoukankan      html  css  js  c++  java
  • zigbee 中ZDO的理解

    ---恢复内容开始---

    ZigBee

        物理层:主要进行无线数据的收发,同时定义了无线传输的信道以及频率。

         MAC层:使用CSMA-CA机制接入到无线信道,负责传输信标帧,保持同步和提供可靠的传输机制

         网络层:主要负责网络的建立以及网络地址的分配,网络拓扑结构,网络的路由管理。

         应用层:应用支持子层,ZDO层,应用框架层、

                     应用支持子层:绑定及绑定维护

                      zigbee设备对象层;为定义网络的节点的角色,以及网络服务。ZDO通过端点0可以使应用程序和zigbee协议栈的其他层进行通信。

         一个端点对应一个任务,一个任务都有唯一的任务号及任务处理函数,ZDO_RegisterForZDOMsg()在相应的任务中注册事件,并且每一个事件只能被成功的注册一次。注册的实质是将注册的信息通过ZDO_Msg_t的形式加入到链表中,其中zdoMsgCBs保留链表的头指针。

        无线数据的发送和接收:1.发送端:先将无线数据包发送到下层,直到物理层,物理层将数据包一无线电波的形式发送出去 。

                                                2.接收端:当有无线数据包到来时,节点的最下层,也就是物理层将接收到这个无线数据包,然后层层上传,直到应用层。(数据包在到达应用层之前就已经被解析完成了。不用关注怎样解析数据包)

          ZDO是一个特殊的应用层的端点(Endpoint),ZDO占用每个节点(node)的0终端(Endpoint0)。它是应用层其他端点与应用子层管理实体交互的中间件。应用程序通过端点0可以与zigbee堆栈的其他层通信,所有端点都使用应用支持子层(APS)提供服务、

          一个任务可以有16个事件,而每一个事件可以有256个消息,从0x00-0xff。其中SYS_EVENT_MSG是系统的事件,KEY_CHANGE应该是属于SYS_EVENT_MSG事件下的消息,其实这样说不是很准确,它只是包括在传递的消息中,表现的形式还是一个事件,但是它不属于一个任务中16个事件之一,本质上还是SYS_EVENT_MSG下的子事件。

          ZDO的配置叫做ZDP(ZigBee设备配置ZigBee Device Profile)ZDP可以被应用终端(application end points)和ZigBee节点访问。

    ---恢复内容结束---

  • 相关阅读:
    == 和 equals 的区别是什么?
    String 类的常用方法都有那些?
    报表工具对比选型系列—多样性数据源支持度
    报表工具选型对比系列
    报表工具选型对比系列
    web 端怎么实现套打发票、快递单等套打票据功能?
    如何集成一个第三方报表,权限怎么控制
    BI 报表工具如何与 springBoot 框架集成
    在报表中可以使用 ECharts 做图形展现吗?
    Tableau 等常见 BI 工具能集成到 java 项目中吗
  • 原文地址:https://www.cnblogs.com/F-beifeng/p/9748199.html
Copyright © 2011-2022 走看看