zigbee CC2530 系列教程 1 软件开发平台的搭建

IAR集成开发环境搭建及程序下载调试

相信物联网在近几年的电子产品领域大家都有所耳闻,而zigbee作为无线传输领域中的佼佼者,也将在未来的物联网领域中大显身手,相信对此感兴趣的爱好者都已经摩拳擦掌了,那么在学习了前面章节的关于zigbee概要介绍,大家已经对zigbee有了一个系统而简要的认识,从此章开始我们将要步入实践环节。

首先需要做好前期的准备工作,也就是开发平台的搭建,前面所提到的硬件开发板就是硬平台的搭建,这节就是一个软平台的搭建,嵌入式软件程序的开发平台。随着相关技术的推进与发展,zigbee的协议和协议栈已趋近完善,但是万变不离其宗,选择其中一款适合自己的开发平台即可。

对于大多数电子爱好者而言,对于51内核的单片机都较为熟悉,这就为基于CC2530的zigbee学习奠定了一定的基础,那么编程环境也已IAR为主,IAR 开发最大优势就是能够直接使用 TI 公司提供的协议栈Z-Stack 进行开发,我们只需要调用API接口函数。这里 我们选用ZStack-CC2530-2.5.1a (Zigbee 2007),zigbee协议栈可以用于网络通信软件的开发,用户只需要安装zigbee协议栈即可实现zigbee网络通信的开发。

那么在本章中将着重讲述针对TI公司的CC2530zigbee芯片的开发环境IAR的搭建与在线调试过程,对于有IAR开发经验的用户对于本章内容可以直接略过。

IAR开发环境的安装

对于IAR的安装包大家在网上或者官网都很容易搜到,安装图标如下:

 

双击图中的第一个图标即可出现如下的安装界面

 

点选第一个Install a new instance of this application 软件默认是安装在C盘,接下来一路单击Next即可继续安装,直到出现如下界面,

有经验的软件安装用户都知道这里应该选择第一个选项“I accept the terms of the license agreement”,多少有点强制的意思,因为不选择这个你就无法Next,接下来就比较关键,

这里需要我们填写软件注册用到的license number,对于新手就无从下手了,接下来会有惊喜送上,

这就是你开启这扇大门的钥匙,都为你准备好了,把钥匙插进去一路Next直到最后的“finish”,就完成了IAR软件的安装。

重新建一个工程讲述IAR软件的使用,在你安装的路径中找到IAR软件打开之后的界面如下

IAR Embedded Workbench(又称为EW)的C交叉编译器是一款完整、稳定且很容易使用的专业嵌入式应用开发工具,在上图中的界面单击Project,在弹出的下拉菜单中选择Create  New Project,新建一个工程如图所示:

在弹出的Creat New Project对话框中Tool chain下拉框中选择8051内核,在Project templates选项框中选择 Empty project,然后点击OK即可。

 

接下来按照图中所示的步骤:

1. 新建工程文件夹

2. 输入工程名称

3. 保存工程于工程文件夹中

到此我们就完成了新工程的建立如下

新建的名为example的工程就出现在软件界面中。

接下来我们需要添加文件到该工程项目,选择File——New——File,新建原文件如图所示:

接下来将新建源文件保存为example.c,如图所示:

添加源文件到工程项目中,选择Project——Add Files,或者右键单击工程名选择Add—— Add “example.c”具体操作如图所示

 

同时以上述描述的方式新建源文件example.h,并将其以同样的方式添加到工程项目中,添加完成界面如下所示:

接下来就是在相应的文件中编写用户代码,example.h文件一般是头文件,我们输入以下代码:

#ifndef _EXAMPLE_H_
#define _EXAMPLE_H_
#include<ioCC2530.h>
#define LED P1_0
#define led_on() LED=0
#define led_off() LED=1
extern void led_init(void);
extern void delay(unsigned char time);
#endif

Example.c文件中代码如下
 

#include <iocc2530.h>
#include “example.h”
void led_init(void)
{
    P1SEL&=~(1<<0); //
    P1DIR|=(1<<0); //
    LED=0;
}
void delay(unsigned char time)
{
    unsigned int i,j;
    for(i=0;i<time;i++)
        For(j=0;j<1000;j++);
}

在main.c文件中输入以下代码
 

#include”example.h”
void main(void)
{
    led_init();
    while(1)
    {
        led_on();
        delay(10);
        led_off();
        delay(10);
    }
} 

以上代码较为简单,就是实现LED的延迟闪烁,这里不对语句的实现一一进行解释,在模块化编程中主要对模块的,对于接触过编程的用户都知道,“高内聚低耦合”的原则,模块化编程就是这一原则的具体体现,一般C文件与H文件为一个模块,在H头文件声明模块的对外接口,以便于其他模块或者主函数的调用。

工程设置

由于IAR集成开发环境支持多种处理器,所以工程建立完成需要对其相应的选项进行设置,使其符合我们所使用的处理器。具体操作如下

单击菜单栏上的Project——Option,如下图所示:在弹出的Option for node”CC2530Test”对话框中的第一个选项General Option,在C:\Program Files\IAR Systems\Embedded Workbench 6.0 Evaluation\8051\config\devices\Texas Instruments文件夹下选择我们编程的器件CC2530F256.i51,Data model选择Large。

在Stack/Heap标签,XDATA设置为0x1FF,具体设置界面如下图

选择 Linker—Config—Linker command file 选项。单击图所示按钮,导出配置文件,先向上返回上一级目录,然后打开 TexasInstruments 文件夹,选择 lnk51ew_cc2530F256.xcl(这里是使用CC2530F256 芯片)。

在Output标签下设置输出文件名以及各式,本工程设置为example.hex,如下图所示

Debugger选项下设置Setup——Driver为Texas Instruments,也就是仿真调试驱动文件选择TI的驱动。至此工程的配置工作已经完成。

接下来要做的就是源文件的编译与仿真调试下载

当源文件编辑完成后我们点击下图中的make按钮开始对工程进行编译,接着会在源文件的编辑对话框下方弹出Message对话框,显示编译过程中的错误警告信息如下图

源程序编译完成后,接着需要进行的就是源程序的下载仿真与调试

仿真器驱动安装

将CC Debugger连接到电脑的USB接口,如果你的电脑之前没有安装过SmartRF04EB的驱动,在你电脑的右下角提示栏就会出现提示你安装驱动的对话框,同时在电脑的设备管理器中会出现如下图所示的为止设备提示,

此时双击未安装驱动的设备(红色圆圈内)会弹出安装驱动的相关选项

 

单击更新驱动程序,并选择浏览计算机上的驱动程序软件,这里关键是要注意驱动程序的路径,就是IAR的安装目录

选择好路径之后直接下一步,就会自动安装驱动,安装完成之后的设备在设备管理器中显示如下:

驱动安装完成即可以进行仿真、调试和程序下载。

具体的调试界面如下

实现基于zigbee协议栈的编程设计,在这里就只差一步了,在TI官网下载并安装ZStack-CC2530-2.5.1a (Zigbee 2007)协议栈包即可。

IAR环境下基于ZStack-CC2530-2.5.1a (Zigbee 2007)协议栈的工程建立与软件使用

 

 

发布了118 篇原创文章 · 获赞 51 · 访问量 20万+

猜你喜欢

转载自blog.csdn.net/aa120515692/article/details/104006349