物联网基于cc2530和zigbee 实验一CC2530开发环境与基础开发

实验一CC2530开发环境与基础开发

1 实验目的
 掌握在IAR8.20环境下创建工程和工程配置;
 掌握CC2530单片机的I/O口的基本使用和UART外设的配置;
 理解BasicRF工程的射频发送和接收。
2 实验内容
 在IAR8.20环境下创建工程,编写程序实现按键控制LED亮灭,并进行工程配置、编译和下载;
 在BasicRF工程中添加串口功能,配置UART寄存器,实现串口的接收和发送;实现两台电脑的串口射频无线数据传输。
3 查看CC2530模块和底板的硬件电路设计原理图,用查询的方式完成以下实验现象:按键控制LED的亮灭,具体效果可以自由发挥。写出关键实验代码。

/***********************************************************************************
  Filename: light_switch.c

  Description:  This application function either as a light or a
  switch toggling the ligh. The role of the
  application is chosen in the menu with the joystick at initialisation.

  Push S1 to enter the menu. Choose either switch or
  light and confirm choice with S1.
  Joystick Up: Sends data from switch to light

***********************************************************************************/
/*******************************************************************************
*文件名   : light_switch.c
*实现功能 : 基于BasicRF的无线light_switch
*实验平台 : Zigbee 开发板
*硬件连接 : LED1 P1_0 
             LED2 P1_1
             LED3 P1_4
             KEY1 P0_4
             KEY2 P0_5

*******************************************************************************/
/***********************************************************************************
* INCLUDES
*/
#include <hal_lcd.h>
#include <hal_led.h>
#include <hal_joystick.h>
#include <hal_assert.h>
#include <hal_board.h>
#include <hal_int.h>
#include "hal_mcu.h"
#include "hal_button.h"
#include "hal_rf.h"
#include "util_lcd.h"
#include "basic_rf.h"
#include <ioCC2530.h>

/***********************************************************************************
* CONSTANTS
*/
// Application parameters
#define RF_CHANNEL                25      // 2.4 GHz RF channel

// BasicRF address definitions
#define PAN_ID                0x2007
#define SWITCH_ADDR           0x2520
#define LIGHT_ADDR            0xFFFF
#define APP_PAYLOAD_LENGTH        1
#define LIGHT_TOGGLE_CMD          0

// Application states
#define IDLE                      0
#define SEND_CMD                  1

// Application role
#define NONE                      0
#define SWITCH                    1
#define LIGHT                     2
#define APP_MODES                 2

#define State_Send 0
#define State_Receive 1
#define uint unsigned int 
#define uchar unsigned char
/***********************************************************************************
* LOCAL VARIABLES
*/
static uint8 pTxData[APP_PAYLOAD_LENGTH];
static uint8 pRxData[APP_PAYLOAD_LENGTH];
static basicRfCfg_t basicRfConfig;

// Mode menu
static menuItem_t pMenuItems[] =
{
   
#ifdef ASSY_EXP4618_CC2420
  // Using Softbaugh 7-seg display
  " L S    ", SWITCH,
  " LIGHT  ", LIGHT
#else
  // SRF04EB and SRF05EB
  "Switch",   SWITCH,
  "Light",    LIGHT
#endif
};

static menu_t pMenu =
{
   
  pMenuItems,
  N_ITEMS(pMenuItems)
};


#ifdef SECURITY_CCM
// Security key
static uint8 key[]= {
   
    0xc0
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
无线传感器网络是目前研究的热门领域,它集成 了多门学科的知识,应用领域广泛,因此深受国际社会 的关注。 在 21 世纪里,无线传感器网络技术是具有 较大影响力技术中的一个热门技术,也是无线通信技 术中的一个新领域,它结合了多种技术的特点,如分布 式信息处理技术、嵌入式计算机技术以及无线网络通 信技术等 。 鉴于传感器网络技术的研究及应用价 值,许多部门、机构、学校等对其开始了基础理论和关键技术的研究,而通过无线方式对环境现场的数据进 行实时采集、传输和后台监控是大量挑战性的研究课 题之一。 无线数据采集是利用无线数据采集模块或设备, 将工业现场的传感器输出的电压、电流等物理量进行 实时采集和处理。 传统的数据采集系统一般采用事先 布线以及人工的方式采集设备的各项数据,而随着生 产力技术的发展,工业生产中的生产设备分布越来越 分散,分布的地域也越来越广,对处于高温和高压等恶 劣环境下的设备进行现场数据采集和维护是比较困难 和危险的,需要投入大量的人力成本和财力资源,这些 状况在很大程度上制约着企业的发展和生产效益的提 高。 对于最新的无线传感器网络技术 Zigbee 而言,它 采用了无线传输方式来构建相应的无线传感器网络, 能够较好地解决人工及有线方式存在的问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值