ZStack版本:Z-Stack 3.0.2
下载和调试器:SmartRF04EB
IDE开发软件:IAR Embedded Workbench IDE - 8051 10.20.1
开发平台:基于TI-CC2530的任意厂家的
在进行Z-Stack 3.0.2协议栈的项目开发前,先来了解一下Z-Stack 3.0.2协议栈安装后的目录结构:如下图所示:
1、 Accessories目录
该目录下放置的是我们安装协议栈完成后,所勾选安装的两个工具文件,一个是OtaServer,用来进行无线应用程序升级。一个是SerialBootTool,用来进行串口启动。这两个工具在此不过描述,当使用时再讲。
2、Components目录
Components
|- bsp CC2530芯片未使用,CC2538芯片的驱动代码。
|- driverlib CC2530芯片未使用,CC2538芯片的驱动库相关代码。
|- hal 硬件平台的抽象层,开发板相关的信息和硬件功能实现。
|- mac 802.15.4物理协议的实现所需要头文件, TI公司未给出具体的源代码,而是以库文件的形式存在.\Projects\zstack\Libraries文件夹给出
|- mt TI Z-tools调试功能所需要的源文件
|- osal 操作系统相关的文件
|- service 寻址服务和数据服务所需要的文件以及效验相关文件
|- stack 该文件是最核心的部分,是ZigBee协议栈具体实现部分,在其下又分为了af(应用框架),bdb(基本设备行为),gp(绿色电源),nwk(网络层),sapi(简单应用接口)、sec(安全)、sys(系统头文件),zcl(ZigBee簇库),zdo(ZigBee设备对象)等9个文件夹
|- zmac文件夹包含了Z-Stack MAC 导出层文件
这些文件中,其中mac和zstack两个文件夹是整个zstack的核心所在。TI只提供了.h文件,即只提供了所谓的接口调用,而不能查看具体的源代码。而其他子文件夹中,有很多是开源的,比如说osal文件夹,是TI的Zstack小型操作系统的资源文件所在,在其中可以看见不光提供了.h调用,甚至还提供了诸如Osal_timer.c各模块的源文件和Osal.c主源文件。
3、Documents目录
4
Documents文件夹包含了TI官方API接口介绍文档和一些开发相关的文档,是使用协议栈进行开发的宝典,是需要认真阅读的。
4、Projects目录
Projects
|-tools 无线升级相关的应用程序
|-zstack
|–HomeAutomation IT提供的家庭自动化例程,基于CC2530EB等开发板。
|–ZNP 即Zigbee and Processor,即CC2530+MCU的解决方案。
|–Libraries 库文件,TI 的MAC和Zstack是不开源的,在Compoents文件夹中仅提供了.h文件供调用,而库文 件.lib就在这里,Libraries文件夹中
|-OTA 无线升级设计实例
|-Tools 存放设备的配置文件,例如信道,设备类型,网络扫描间隔时间等。
|-Utilities 工具类,还未使用到
|-ZMain 程序的入口函数,板块共性函数定义
5、Tools目录
Tools目录下主要存放一个Z-Tool工具,该工具可以通过串口往Zigbee发送命令,但是要注意的是,要是用Z-Tool功能,zigbee必须开启MT功能和相关的功能的宏定义。