物联网之Zigbee系统开发二(环境搭建)

内容概要

IAR安装

新建一个工程

工程设置

流水灯实验

IAR安装:IAR下载链接:https://pan.baidu.com/s/1cCwnrj8suZ2GpUEjLQsQaA 密码:y9k7

IAR是瑞典IAR Systems公司研发的一款微处理器开发集成开发环境。

IAR集成环境适用于大量的8位,16位,32位的微处理器和微控制器,熟练的使用IAR有效提高用户的开发效率,节省时间。

注:使用注册机时Product选项应该选择下图方框中的选项

IAR安装与使用

安装步骤:

1、找到安装软件EW8051-EV-Web-8101,双击;

2、在弹出的对话框选择next点击;

3、继续next;

4、在弹出的对话框选择I accept.....点击next。

此时安装的IAR未破解,是试用版,编译的工程是有大小限制的,超过32K的程序不能编译。想要编译更大的程序需要购买正版软件。

新建一个工程

1、打开IAR集成开发环境,单机菜单栏的project,在弹出的菜单里选择Creat New Project

2、在弹出的窗口选中Empty project,再点击ok,如下图:

3、选择保存工程的位置和工程名

4、新建一个文件

5、写一个流水灯的代码(代码是事先准备好的,暂时不必深究)并将文件保存为led.c

led.c

#include "iocc2530.h"
#define LED1 P1_0 //对应ZigBee数据采集节点的D7
#define LED2 P1_1 //对应ZigBee数据采集节点的D8
#define LED3 P1_4 //对应ZigBee数据采集节点的D9
#define LED_ON 0 //板子LED为低电平点亮
#define LED_OFF 1
/*LED用到的io初始化*/
void led_init(void)
{
  P1SEL &= ~(1<<0); //功能设置寄存器,设置为普通io口
  P1DIR |= (1<<0); //设置为输出模式
  LED1 = LED_OFF; //默认关灯
  P1SEL &= ~(1<<1);
  P1DIR |= (1<<1);
  LED2 = LED_OFF;
  P1SEL &= ~(1<<4);
  P1DIR |= (1<<4);
  LED3 = LED_OFF;
}
/*延时*/
void delay(unsigned int time)
{
  unsigned int i, j;
  for(i = 0; i < time; i++)
    for(j = 0; j < 10000; j++);
}
/*主函数*/
int main(void)
{
  led_init();
  while(1)
  {
    LED1 = LED_ON;
    delay(10);
    LED1 = LED_OFF;
    delay(10);
    LED2 = LED_ON;
    delay(10);
    LED2 = LED_OFF;
    delay(10);
    LED3 = LED_ON;
    delay(10);
    LED3 = LED_OFF;
    delay(10);
  }
}

6、将新建的文件添加进工程

7、选中led.c并添加进工程

8、保存Workspace(保存工作空间,可以命名为led,生成 .eww 文件,以后要打开这个工程只需要点击这个文件即可

工程设置

1、首先我们右键点击工程,选中“Options…”

2、选中 General Options->Target->Device,并添加下图路径中的 CC2530F256.i51

3、保证 General Options->Target 的设置和下图保持一致。

4、保证Linker->Config 的设置和下图保持一致。

5、选中 Debugger->Setup按下图标识配置。

6、然后单击 OK 按钮即可完成所有的配置工作。

编译工程

此时在 IAR 集成开发环境的左下角会弹出 Message 窗口。这里包含了编译后的警告及错误信息。

仿真器调试与下载

仿真器选用SmartRF04EB,使用之前需安装驱动。

将仿真器连接上PC端和开发板,打开上一步建立的LED工程,将其下载致开发板。

接下来,我们可以选择对程序进行调试,或者结束调试。下图红色方框框起来的就是调试区域。

    Break:终止运行

    Reset:复位

    Stop Debugging:退出调试器

    Step Over:单步执行一条C语句或汇编指令,不跟踪进入C函数或者汇编语言子程序

    Step Into:跟踪执行一条C语句或汇编指令,跟踪进入C函数或者汇编语言子程序

    Step Out:启动C函数或汇编语言子程序从当前位置开始执行,并返回到调用该函数或子程序的下一语句

    Next Statement:直接运行到下一条语句

    Run to Cursor:从当前位置运行到光标指定处

    Autostep:弹出对话框用于设定自动单步执行的方法

    Refresh:更新存储器、寄存器、观察和局部变量窗口的显示信息

这时我们应该可以看到板子上的三盏 LED 灯流动了起来,好了,IAR 的使用我们就说到这里,更多的使用技巧还希望用户自己多多摸索。

流水灯实验

1.查找硬件原理图:

2.操作P1端口需要配置的寄存器:

3.关键代码:    

    P1SEL &= ~(1 << 0); //功能设置寄存器,设置为普通 I/O 口     

    P1DIR |= (1 << 0); //设置为输出模式     

    LED1 = LED_OFF; //默认关灯     

   P1SEL &= ~(1 << 1);     

    P1DIR |= (1 << 1);     

    LED2 = LED_OFF;     

    P1SEL &= ~(1 << 4);     

    P1DIR |= (1 << 4);     

    LED3 = LED_OFF;

猜你喜欢

转载自blog.csdn.net/weixin_39148042/article/details/81417123