无线传感网络实训|实验5.3 Zstack无线收发实验
发布者:唯众
布时间:2020-12-01 14:32:06
点击量:
从本节开始,我们就进入了ZigBee协议栈的程序开发。开始本节内容之前,先对协议栈的基本内容做个讲解。ZigBee无线传感器网络涉及电子、电路、通信、射频等多学科的知识,这对于入门级学习来说,无形中增加了学习难度,很多读者看协议、射频电路……学了半年甚至更长的时间,但是连基本的点对点通信都无法实现,更别说ZigBee网络应用了。基于此原因,本章采用一种新学习思路,快速帮大家 理解、使用 ZigBee 协议栈。先进行 ZigBee 无线网络通信的学习和实验,有了感性认知后再看 ZigBee协议栈视频、射频、天线等知识,看完后再实验一遍加深印象,用此法会起到事半功倍的效果,经过多名初学者学习所积累总结出的经验,希望对您有所帮助。
另外,由于协议栈的代码量太大,本节开始不再粘贴大量代码了,只对重要部分进行截取讲解。请大家自己打开工程文件参考本教程内容进行学习。
1.实验目的
1)、ZigBee协议栈简介
2)、如何使用ZigBee协议栈
3)、ZigBee协议栈的安装、编译与下载
4)、协议栈无线收发控制蜂鸣器
5)、协议栈工作流程
2.实验设备
硬件:PC机一台、ZIGBEE网关、ZIGBEE节点、仿真器一个)
软件:2000/XP/win7系统,IAR8.10集成开发环境
3.ZigBee协议栈简介
什么是ZigBee协议栈呢?它和ZigBee协议有什么关系呢?协议是一系列的通信标准,通信双方需要共同按照这一标准进行正常的数据发射和接收。协议栈是协议的具体实现形式,通俗点来理解就是协议栈是协议和用户之间的一个接口,开发人员通过使用协议栈来使用这个协议的,进而实现无线数据收发。下图展示了ZigBee无线网络协议层的架构图。ZigBee的协议分为两部分,IEEE802.15.4定义了PHY(物理层)和MAC介质访问层)技术规范;ZigBee联盟定义了NWK(网络层)、APS(应用程序支持子层)、APL(应用层)技术规范。ZigBee协议栈就是将各个层定。
4.如何使用ZigBee协议栈
协议栈是协议的实现,可以理解为代码,函数库,供上层应用调用,协议较底下的层与应用是相互独立的。商业化的协议栈就是给你写好了底层的代码,符合协议标准,提供给你一个功能模块给你调用。你需要关心的就是你的应用逻辑,数据从哪里到哪里,怎么存储,处理;还有想要的网络;当你想从一个设备发数据到另一个设备时,调用无线数据发送函数;当然,接收端就调用接收函数;当你的设备没事干的时候,你就调用睡眠函数;要干活的时候就调用唤醒函数。所以当你做具体应用时,不需要关心协议栈是怎么写的,里面的每条代码是什么意思。除非你要做协议研究。每个厂商的协议栈有区别,也就是函数名称和参数可能有区别,这个要看具体的例子、说明文档。怎么使用ZigBee协议栈?举个例子,用户实现一个简单的无线数据通信时的一般步骤:组网:调用协议栈的组网函数、加入网络函数,实现网络建立与节点的加入。
发送:发送节点调用协议栈的无线数据发送函数,实现无线数据发送。
接收:接收节点调用协议栈的无线数据接收函数,实现无线数据接收。
至于调用该函数后,如何初始化硬件进行数据发送等工作,用户不需要关心,ZigBee协议栈己经将所需要的工作做好了,我们只需要调用相应的API函数即可,而不必关心具体实现细节。看起来是不是很简单呢,是不是有动手试试的冲动。先别急还要先安装ZigBee协议栈才能进行开发调试呢?
5.ZigBee协议栈的安装、编译与下载
解压“ZStack-CC2530-2.3.0-1.4.0协议栈安装文件.rar”解压得到.exe文件,双击进行安装,路径你可以选择默认,同样你也可以选择你想要安装的位置。也许有人就困惑了,装完之后不是应该有个桌面图标的么?其实所谓的安装协议栈只是把一些文件解压到你安装的目录下。好了,协议栈是安装好了,可是怎么用它呢?装了肯定要用啊是吧,别急,我们先来看看这个协议栈的目录:Components,顾名思义这个是放我们的库的文件夹,里面放了一些我们用到的ZDO,driver,hal,zcl等库的代码Documents,这个不用说大家都知道是放TI的开发文档的,里面很多都是讲述协议栈的API的有空时可以看看Projects,这个文件夹放的是TI协议栈的例子程序,一个个例子程序都是以一个个project的形式给我们的,学好这些例子程序里面的一两个,基本可以完成ZigBee无线通信了。
上一篇:无线传感网络实训|实验5.2 BasicRF通信质量检测实验
下一篇:无线传感网络实训|实验5.3 Zstack无线收发实验之代码学习