1、从零开始学习 Zstack 之 1Zstack 情况:本人采用的是 TI 的 Zstack1.4.3 协议,据说这个需要 IAR7.30B 及以上版本,而目前市面上又没有破解,所以用的人很少,这也是我的机会!呵呵!(傻笑有点多,关键是 WORD 里没有表情符号,不能正常表达我此时的心情!)正式开始:开始之前在说一句:从 TI 网站上下载的 Zstack 的方法就不介绍了。否则就是从-1 开始了而不是从 0 开始了-我是这么觉得的!第一步:安装 Zstack从 TI 官方网站上下载的 Zstack 为:swrc072c.zip,我想这个压缩包大家都认识。解压之后为:ZStack- CC2430-
2、1.4.3.exe 文件。这个安装文件大家都会了。默认安装路径为:C:Texas InstrumentsZStack-1.4.3。安装之后在 C:Texas InstrumentsZStack-1.4.3目录下有各 PDF 文档为:Getting Started Guide CC2430.pdf,不用多说,这个肯定是要看的。既然把它放到这么前面,说明它是入门中的入门文档。下面就简单介绍下这个文档:1、 介绍了安装 ZStack-CC2430-1.4.3.exe 需要的硬件软件条件:需要电脑、操作系统为 Windows 2000 或 Windows XP。至于更高或更低版本的本人没有尝试。2、
3、讲了安装流程。这个有点多余了,这年月哪个有电脑的没有安装上百上千次的软件啊?但是需要强调的是安装路径-默认就好!3、 接下来就是让我们看的第一个文档为:Start-Programs-Texas Instruments-ZStack-1.4.3-Z-Stack Users Guide,既然让我看我就来看看这个文档! 第二步:Z-Stack 用户指导这个文档的更新时间为:2007 年 12 月 21 日-应该还是比较新的版本。由于本人英文的却有限,就不翻译了,浏览一遍,把大概意思说下就可以了:1、 介绍1.1、 适用范围本文档适用于 CC2430ZigBee 开发板-CC2430ZDK。2、产品包
4、描述(TI 提供的 CC2430ZDK 工具包)2.1、安装包内容这个就是上面提到的的 ZStack-CC2430-1.4.3.exe 安装之后的所有内容了。说白了就是包含 Zstack 开发所需要的所有软件和文档资料等。2.2、开发板介绍两块 SmartRF04EB 评估版,每个都可以用于 CC2430EM 评估模块。如图 1-1 所示:Figure 1: Chipcon SmartRF04EB Evaluation Board with CC2430EM5 块 CC2430DB 评估板,如图 1-2 所示:Figure 2: Chipcon CC2430DB Development Boa
5、rd10 个 SOC_BB 评估板,每个都可以用于 CC2430EM 或 CC2431EM。如图 1-3 所示:Figure 3: Chipcon SOC_BB Battery Board2.3、电缆也就是包含开发包所需要的电缆,如 RS232 串口线,USB 线等等附属配件。3、安装配置3.1、主机配置一台个人计算机-也就是电脑哈。我想玩嵌入式的应该都有,而现今不过时的配置就可以:下面是最低配置? .NET 1.1 架构? Windows XP Service Pack 1 (i 如果是 Windows XP)? 1 个串口(也就是 RS232 接口)s? 1 USB 接口个人认为要求已经相
6、当低了,如果你的电脑没有这配置,个人强烈建议马上扔掉!不过如今笔记本电脑很少有串口的,所以建议使用台式电脑,而且装机的时候一定要把串口引出,否则就比较麻烦了!3.2、目标板需求其实也是开发环境需求- IAR EW8051。目前需要的版本为 7.30B 及以上。4、产品安装过程4.1、安装 Z-Stack这个也就是安装 ZStack-CC2430-1.4.3.exe 的过程。4.2、IAR 安装一般来说安装选择默认路径,但是自定义路径也不会出问题的。注意 IAR 版本 7.30B 及以上版本才可以运行 1.4.3 协议。4.3、设备 IEEE 地址每个 CC2430DB, CC2430EM,和
7、CC2431EM 都已经排列了一个唯一的 64 位物理地址(IEEE 地址),这个地址已经写到了 CC2430 内部 FLASH 里面,在 CC2430DB, CC2430EM,和 CC2431EM 板的底部有这个地址标签。这个地址被写入到 FLASH 的 0x1FFF8 地址中,注意这个地址也可以更改的,通过些 FLASH软件,一般 0xFFFFFFFFFFFFFFFF 地址被认为是无效地址。5、配置并试用 Z-Stack5.1、配置 Z-Stack这个详见 5.3 节。5.2、逻辑类型这里主要是介绍了 ZIGBEE 协议中的三种设备类型:? ZigBee 协调者(ZC):这个设备被配置为初
8、始化并建立一个 PAN 网络? ZigBee 路由器(ZR):该设备被配置为加入一个存在的网络,可以加入一个协调求或路由器,然后允许其他设备加入它,在网络中路有数据信息。? ZigBee 终端节点 (ZED):该设备被配置为加入一个存在的网络,可以加入一个协调求或路由器。5.3、建立样品应用设备:SampleApp基本上就是采用 SampleApp 应用中的 Demo 例子来演示整个流程,就是采用一个协调器和一个或多个路由器来形成一个 ZigBee 网络演示。在该例子中主要通过 SmartRF04EB 板上的某些跳线来完成设备类型的选型,当然这个方法在程序中是需要判断哪个按键被拉低或拉高,对于
9、做个设计的来说应该是相当好理解的。申明:由于本人很穷,所以没钱买 TI 原装开发包,当然也就没有上面提到的硬件,本人采用的是某家公司(为了避免广告,这里就不说明了)的硬件系统。5.4、建立一个 SampleLight 协调器设备至于提到的硬件连接这里一律省略。无疑:首先要打开对应工程,如图 1-4 所示:图 1-4在工作窗口中选择 DemoEB,如图 1-5 所示:图 1-5然后选择工程菜单(Project)下的全部编译(Rebuild All)选项,如图 1-6 所示:图 1-6然后选择工程菜单(Project)下的调试(Debug)选项,如图 1-7 所示:图 1-7下载完之后就可以退出调
10、试状态,通过选中调试菜单下的停止调试选项,如图 1-8 所示:图 1-8按照此种方法下载至少两个 CC2430EM 模块,就可以进行 Demo 演示了。6、 Z-Stack 示范略至于详细的示范流程,这里先不说了,因为本人采用的硬件与原装有点差异,即使按照这个方法下载仍然不能演示,因为我这个不能用跳线来选择设备类型。所以我必须进入程序把跳线判断程序进行简单必要的修改才能演示。该文档介绍的演示结果及现象都是基于 CHIPCON 原厂评估板。7. PanID 和通道(Channel)选择ZigBee 协议规范规定,一个 14 位的个域网标志符(PAN ID)来标识唯一的一个网络。Z-Stack 可
11、以用两种方式由用户自己选择其 PAN ID,当 ZDAPP_CONFIG_PAN_ID 值设置不为0xFFFF 时,那么设备建立或加入网络的 PAN ID 由 ZDAPP_CONFIG_PAN_ID 指定;如果设置ZDAPP_CONFIG_PAN_ID 为 0xFFFF;那么设备就将建立或加入它发现网络中的“最好”的网络。关于这里提到的“最好”的网络,我觉得可能是有些参数评估,只不过这里没有详细的介绍,在后续文档中应该有介绍的。在 2.4G 频段上,IEEE 802.15.4/ZIGBEE 规范规定了 16 各频道。用户可以通过选择DEFAULT_CHANLIST 不同的值可以选择不同的频道,其频道如图 1-9 所示。改协议默认频道为 0xB 及 0x00000800。图 1-9DEFAULT_CHANLIST 和 ZDAPP_CONFIG_PAN_ID 都作为 IAR IDE 中的编译选项可以进行设置,在应用文件中的ProjectsToolsCC2430DB 目录下的 f8wConfig.cfg 文件中有相应设置,如图 1-10 所示。