ZigBee协议基本介绍
ZigBee是一种短距离(10~100米)、低速率(20~250Kbps)、底成本、低功耗的无线网络技术,主要用于近离无线通讯。能够做到在数千个微小的传感器之间相互协调实现通讯,这些传感器只需要很少的能力,以接力的方式通过无线电波将数据从一个传感器传送到另一个传感器,节点的发射功率和通讯范围都是有限的。
ZigBee协议栈版本:
ZigBee 2004
ZigBee 2006
ZigBee 2007
ZigBee 2007-pro
ZigBee协议栈底层基于IEEE 802.15.4协议,上层由ZigBee联盟定义网络层、应用层和安全服务层。整体结构如下:

详细结构描述如下图:

不同设备之间同层进行沟通,如下图所示:

在ZigBee协议框架下,设备有三种角色类型和两种设备功能,这三种角色在ZigBee协议和IEEE 802.15.4中称呼不同,具体差别如下图:

在组网能力上,ZigBee网络支持星型网络或者点对点网络,每个设备都具有16位的网络短地址和64位IEEE长地址。
在无线通讯上面,采用免冲突多载波接入(CSMA-CA),有效避免无线电载波之间的冲突,传输可靠性由ZigBee的应答机制来保证。
为了保证ZigBee设备之间通信数据的安全保密性,在MAC层可以采用AES-128位的加密算法,对所传输的信息进行加密处理。
ZigBee传输中总体帧结构如下图:

上层数据作为下层的有效载荷进入下层处理流程,MAC层对数据进行CRC计算,并附加一个MFR校验字段,最后的到PHY层的处理字节。
作为最底层同射频硬件的结构,传输每个域的低位字节先传输,每个字节内部的低位先传输。首先传输的是SHR的最低位四位,其次为SHR的高四位,先通过伪随机码映射成为32位的伪码,然后进行O_QPSK的调制。

码片的映射分组。

进行O_QPSK的调制前的准备。

O_QPSK的调制框图。

ZigBee协议基本介绍的更多相关文章
- zigbee学习之路(十二):zigbee协议原理介绍
一.前言 从今天开始,我们要正式开始进行zigbee相关的通信实验了,我所使用的协议栈是ZStack 是TI ZStack-CC2530-2.3.0-1.4.0版本,大家也可以从TI的官网上直接下载T ...
- ZigBee协议
转载地址http://www.feibit.com/bbs/viewthread.php?tid=140&extra=page%3D1 WSN/Zigbee开源协议栈 1. msst ...
- iOS:核心动画具体的类和协议的介绍
核心动画类:CAAnimation.CAPropertyAnimation.CABasicAnimation.CAKeyframeAnimation.CATransition.CAAnimationG ...
- 基于HTTP 协议认证介绍与实现
导言 一直对http 的头认证有兴趣,就是路由器的那种弹出对话框输入账号密码怎么实现一直不明白,最近,翻了一下http 协议,发现这是一个RFC 2617的实现,所以写篇文章介绍一下吧. Http基本 ...
- Zigbee2007协议中文介绍
Zigbee2007中文介绍ZigBee2007规范定义了ZigBee和ZigBee Pro两个特性集,全新的ZigBee 2007规范建立在ZigBee2006之上,不但提供了增强型的功能而且在某些 ...
- HTTP协议发展介绍
HTTP协议工作于C/S架构上,是万维网服务器传输超文本到本地客户端的一种应用层协议,全称是:Hyper Text Transfer Protocol(超文本传输协议),HTTP是基于TCP/IP通信 ...
- HTTP协议简要介绍
1. 网络基础 TCP/IP 通常使用的网络是在TCP/IP协议簇基础上运作的. HTTP属于它内部的一个子集. TCP/IP分为4个层次, 应用层, 传输层, 网络层, 链路层. (Applicat ...
- 【网络协议】TCP协议简单介绍
本文仅仅是对TCP协议做个简要的介绍. TCP协议,即传输控制协议.与UDP协议同处于传输层,相同使用相同的网络层,但TCP提供了一种可靠的.面向连接的传输数据服务,它会在两个使用TC ...
- arp协议简单介绍
1. 什么是ARP? ARP (Address Resolution Protocol) 是个地址解析协议.最直白的说法是:在IP以太网中,当一个上层协议要发包时,有了该节点的IP地址,ARP就能提供 ...
随机推荐
- 如何快速掌握CSS(各种CSS工具)
CSS中的大量属性难以记忆,通过组合多种CSS工具,可以快速学习常见样式,并提高设计效率.这里给大家推荐一些比较好的在线工具,通过所见即所得图形化界面设计样式,直接得到对应的CSS代码.相比臃肿的集成 ...
- Oracle的trunc和dbms_random.value随机取n条数据
今天在review项目代码的时候看到这样一个问题,有一张号码表,每次需要从这样表中随机取6个空闲的号码,也就是每次取出来的6个号码应该都会有所不同.然后我就看到了这样的SQL select t.* ...
- Q_INVOKABLE与invokeMethod用法全解
在Qt/Qt Quick宏浅议一文中,我们将介绍Qt中经常使用的几个宏: Q_OBJECT, SIGNAL与SLOT, Q_SIGNALS 与 Q_SLOTS, Q_EMIT ,Q_INVOKABLE ...
- Golang学习 - bytes 包
------------------------------------------------------------ 对于传入 []byte 的函数,都不会修改传入的参数,返回值要么是参数的副本, ...
- 21 Free SEO Tools For Bloggers--reference
http://dizyne.net/21-free-seo-tools-for-bloggers/ What do you think is important in a website? Yes, ...
- ganglia安装-yum
centos6.6 x64 root用户 单机一台,集群中需要监控的安装客户端就可以了 Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点.Ganglia的核 ...
- 美国H1B基本情况及相关数据
H-1B是外国人在美国工作的签证,从美国学校毕业之后会有12个月的OPT实习期,在OPT结束之前必须申请到H1B签证才能在实习期结束后继续工作. H1B需要由雇佣你的公司帮你申请,也就是说必须先找到工 ...
- iOS 设计模式之单例
设计模式:单例 一. 单例模式是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例类的特殊类.通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并 ...
- jQuery中each的break和continue
each实质上是一个for循环,那么能不能像普通的for循环那样break和continue呢? 参考http://bevisoft.iteye.com/blog/641195做了个实验,可以的, 代 ...
- 如何解决firefox下window.event的问题
一.在函数中传递event参数 在函数中传递event参数,这样我们就可以兼容IE和FF的event的获取了,如下面的函数: function _test(evt){ var src = evt ...