cc5230

更新时间:2023-11-23 13:39:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Zigbee入门指导(一)——基于CC2430的Zigbee开发环境的建立

2010-05-20 11:56 3457人阅读 评论(5) 收藏 举报

Zigbee入门指导(一)

——基于CC2430的Zigbee开发环境的建立

logiclimit

写在前面的话:临近毕业,把之前做过的一些项目的内容加以整理,和大家一起分享,请高手指教,欢迎同辈间交流,希望后来者能少走一些弯路。Zigbee入门指导源于大三时的课程设计《无线心电采集系统》中的Zigbee网络部分。Zigbee入门指导预定为三篇,分为:1、开发环境的建立;2、运行Zigbee例程;3、基于Zigbee的一主多从的数据采集系统,大概在一个月内整理完毕。文章版权为原创者logiclimit所有,转载时请注明出处。 Zigbee是一种近距离低功耗低速率无线网络,使用免费的2.4GHz频段,主要用于无线传感器网络、智能家居等方面。很多公司都推出了自己的Zigbee芯片和模块,我使用的是基于Ti公司CC2430,由无线龙公司生产的Zigbee模块,使用的Zigbee协议栈版本为TI_ZStack-1.4.3-1.2.1(对应标准的Zigbee 2006)。本篇主要讲述其开发环境的建立方面的内容。使用的开发环境为:windows7、IAR 8051 7.30B。需要指出的是,Ti目前主推的是其CC2530模块,使用IAR 8051 7.50版本,支持Zigbee 2006 pro及Zigbee 2007,由于笔者没有CC2530及IAR 8051 7.50,故无法保证本文中的内容适用于CC2530及相关的开发环境和协议栈。之前开发时使用的操作系统是Win XP,故本文所说的内容同样适用于win XP系统。本文已假定读者了解IAR软件和cc2430单片机功能的使用,具有一定的C语言基础和嵌入式开发经验。

由于之前只有一个学期时间,还要完成相关模拟采集电路的设计,故Zigbee部分只完成网络的建立、数据的收发及控制的内容,稍显粗鄙,请勿见笑。

一、安装IAR 8051 7.30B

使用管理员权限运行安装程序EW8051-EV-730B.exe,根据提示输入相应的注册码,完成相关的安装。

二、安装Ti的Zigbee协议栈

从Ti官网下载到其Zigbee协议栈压缩包swrc073d.zip,解压后安装。Windows 7下无法完成安装,根据之前在WinXP安装的经验,此安装程序生成一个名为

的目录,此目录下有Zigbee协议栈和相关的文档和例程,故可以在WinXP的虚拟机中完成安装,之后拷贝到Win7中即可。

三、安装Packet Sniffer

在进行Zigbee开发时,可以使用一个下载器和模块组成嗅探器(sniffer),相关信号的读取和显示使用Ti的Packet Sniffer软件完成,从Ti的网站上下载swrc045j.zip,解压后安装。Packet Sniffer监控的不仅是Zigbee的数据包,监控的是所有IEEE 802.15.4的无线数据包。程序的界面如图1所示

图1

四、安装SmartRF Flash Programmer

如同网卡的MAC地址,不同的Zigbee模块使用不同的IEEE地址(实用产品必须要向IEEE申请相关的地址),使用SmartRF Flash Programmer可以为zigbee模块烧写程序及IEEE地址,读出模块中的程序。从Ti的网站上下载swrc044f.zip,解压后安装。还有一个名为IEEE Address Program Software,只能读写IEEE地址,在swrc063.zip中,若安装了SmartRF Flash Programmer,无需安装IEEE Address Program Software。SmartRF Flash Programmer的程序界面如图2所示

图2

五、 初识协议栈目录

的目录结构如图3,主要有

四个目录,中是相关的开发文档,中是两个开发辅助工具ZOAD和Z-Tool,ZOAD用于空中下载,Z-Tool可用于观察网络状态、串口输出内容显示等。与用户关系最大的是存放的硬件驱动代码,根据实际使用的开发板或产品的不同,cc2430的引脚功能配置不同,要修改、增加相关的驱动代码。中有多个例程用以学习Ti Zigbee的开发,提供了不同的程序框架,用户可以以相关的例程为模板创建自己的工程。

对于硬件驱动代码对于不同的外设,除了定时器、AD等CC2430内部的外设不用自己编写驱动外,对于按键、LED、LCD要根据实际的连接要重写。一般情况下,不同厂商都采取了核心模块+扩展板的设计,各家厂商不同点在于扩展板的不同,Ti原厂的扩展板也分为DB和EB两种。各厂商在设计时都会对Ti的开发板有所参考,就我所用的无线龙开发板而言,其与Ti的CC2430EB最为相似,故之后使用的例程均为修改版的EB板例程。 对于中的文档(包括其中的目录),初学者至少应阅读过以下几篇《Z-Stack Developer's Guide _F8W-2006-0022_》、《Z-Stack Sample Applications (F8W-2006-0023)》、《HAL Driver API _F8W-2005-1504_》、《Z-Stack Sample Application For CC2430DB_F8W-2007-0017_》、《Create New Application For The CC2430DB_F8W-2005-0033_》。 图3

六、请自行尝试下的例程

虽说本教程的目的之一是使后来者能少走一些弯路,但个人主动探索的学习精神也是必不可少的,建议读者到网上搜寻Ti及无线龙的开发板原理图,对比其同异(实际上,笔者最初就只有三个模块,自行制作了扩展板)。尝试下载下的例程,看看能否运行。

Zigbee入门指导(二)——运行Zigbee例程

2010-06-20 17:214391人阅读评论(6)收藏举报

Zigbee入门指导(二)

——运行Zigbee例程

logiclimit

在Zigbee入门指导(一)中讲解了基于CC2430的Zigbee开发环境的搭建,安装完Ti的协议栈后,里面有多个例程,帮助用户入门及作为自己工程的基本框架。在Zigbee入门指导(二)中,我们将通过演示执行相关的例程,了解Zigbee应用的启动流程(不是Zigbee网络的启动流程),了解运行一个自定义Zigbee工程所要作的软件方面的改动和工程选项的配置。所用的开发套件为无线龙的套件。

一、修改HAL

HAL及所谓的Hardware Abstration Layer,通俗的了解即为开发板的硬件驱动,由于所用的是无线龙的开发板,与Ti的原装开发板有差异,需要对协议栈自带的HAL进行修改。HAL文件存放在目录中,里面有三个目录,中定义的与外设无关的硬件操作,存放的是头文件,而存放的是目标文件,里面根据目标板的不同分为。所用的无线龙的开发板和CC2430EB最为相似,故修改中的内容。按键操作几乎在每个例程中都会用到,故此处以按键驱动的修改为例,演示HAL的修改。

先了解下Ti和无线龙扩展板的不同之处。Ti的CC2430EB原理图在Ti文档SWRU133.pdf(位于SWRU133.zip中)。Page29是按键电路的原理图,如图1

本文来源:https://www.bwwdw.com/article/d4ct.html

Top