1. 逻辑设备类型
协调器(coordinator),路由器(router),终端设备(end-device)
•ZigBee 协调者---coord为协调者节点*–每各ZigBee网络必须有一个.–初始化网络信息.
协调器是一种特殊的路由器(待确认)
•ZigBee 路由器---router为路由节点*–路由信息
•ZigBee 终端节点---rfd为终端节点*–没有路由功能–低价格
2 . 2.4GHz射频信道分为16个独立信道。
3. 绑定
应用设备之间信息流的控制机制。
有直接绑定(OTA)、间接绑定、直接绑定(通过串口)
4. 配置文件profile 应用程序框架
5. 端点endpoint 每个ZigBee设备支持多达240个端点
6. NWK
寻址
地址类型:ZigBee设备有一个64位IEEE长地址 (MAC地址)
通常用一个16位短地址表识
网络地址分配 由协调器完成
相关参数:5 max_depth 网络的最大深度
6 Max_children 路由器或协调器节点连接子节点最大个数
20 Max_router 路由器或协调器处理的具有路由能力的子节点最大个数
它是max_children的子集
数据包传送 单点unicast 多点multicast 广播broadcast
路由:经过路由器的每个数据帧寻找一条最佳传输路径,并将该数据有效地传送到目的节点。
F8wconfig.cfg配置路由
看了下面就不用纠结了。
配置文件(profile):Zigbee协议的配置文件是对逻辑组件及其相关接口的描述,是面向某个应用类别的公约、准则.通常没有程序代码与配置文件相关联.
属性(attribute):设备之间通信的每一种数据像开关的状态或温度计值等皆可称为属性.每个属性可得到唯一的ID值.
簇(cluster):多个属性的汇集形成了簇,每个簇也拥有一个唯一的ID.虽然个体之间传输的通常是属性信息,但所谓的逻辑组件的接口指的却是簇一级的操作,而非属性一级.
终端(endpoint):每个支持一个或多个簇的代码功能块称为终端.不同的设备通过它们的终端及所支持的簇来进行通信.
Cluster: is a container for one or more attributes. (一个或更多属性的集合)
Attribute: a data entity which represents a physical quantity or state.(反映物理特性或状态的一个数据实体)
Cluster是逻辑设备之间的事务关系Cluster定性
Attribute则是某种事务关系的具体特例Attribute定量
Endpoint是一个逻辑设备(个人理解为入口地址)。而一个Endpoint可以包含多个Cluster,每个Cluster包含不同的属性,这就是用来更加细分的了,Endpoint之间依据“事务关系”(cluster)通讯.
一个节点除了64位的IEEE地址,16位的网络地址,每个节点还提供了8位的应用层入口地址(端点:EndPoint),对应于用户应用对象。端点0为ZDO接口,端点I至240供用户自定义应用对象使用,端点255为广播地址,端点241—254保留为将来使用。
每一个应用都对应一个配置文件(Profile)。配置文件内容包括:设备ID(Device ID),事务ID(Cluster ID),属性ID(Attribute ID),及AF使用何种服务类型等信息。在zigbee协议中,一个配置文件中允许最多2^16个设备(16位表示),2^8个事务,每个事务支持最多约2^16个属性。
例:由zigbee联盟给出的HomeControlLighting,是针对家庭灯控应用的配置文件,灯设备和按钮设备便是其中两种设备类型,点灯即是一项方法,灯状态便是该项事件的其中一个属性。
一个设备可以有240个终端(EP1-EP240),每一个终端必须有一个终端描述符endPointDesc(终端描述符里包括一个简单描述符SimpleDescriptionFormat),都用结构体来描述。
typedef struct
{
byte endPoint; //终端号1-240
byte *task_id; //任务ID指针
SimpleDescriptionFormat_t *simpleDesc; //简单描述符!!!
afNetworkLatencyReq_t latencyReq; //noLatencyReqs
} endPointDesc_t; //终端描述符
typedef struct
{
byte EndPoint; //终端号1-240