CC2530按键唤醒睡眠

合集下载

单元一 CC2530开发入门

单元一  CC2530开发入门

物联网应用的精彩未来有待你的参与
Thanks
任务二 IAR开发环境的搭建
(2)参数设置 3)Debugger 设置
在Debugger→Setup→Driver选项选择为Texas Instruments。
任务二 IAR开发环境的搭建
(3)第一个项目 新建一个C文件,在File→New→File选项并保存。请务必添 加“.c”扩展名,否则会以文本文件存档。右击刚创建的工 程,在弹出的快捷菜单中选择Add→Add test.c。
任务二 IAR开发环境的搭建
Linker→Extra Output 勾选 “Generate extra output file” 在Output file选项中 勾选 “Override default”将保存输出文 件格式改为后缀名为.hex文件;在Format选项中将“Output format”选择为“intel-extended”
任务二 IAR开发环境的搭建
(2)参数设置 1)General Options 设置
在 General Options→Target 选项中 ,Device 选择为 CC2530F256。
任务二 IAR开发环境的搭建
(2)参数设置 2)Linker设置
Linker→Output 选项是关于输出文件格式的设置。勾选 “Allow C-SPT-specific extra output file”即可实现 IAR的在线调试。
任务三 烧写hex文件
Erase(擦除) Erase and program(擦除和编程) Erase,program and verify(擦除、编程和验证) Append and verify(追加和验证) Verify against hex-file(验证Hex十六进制文件) Read flash into Hex file (读入Hex十六进制文件)

基于CC2530的温湿度监测系统

基于CC2530的温湿度监测系统

基于CC2530的温湿度监测系统1系统设计思路及整体结构本文的温湿度监测系统是利用ZigBee无线通讯技术为基础,采用CC2530芯片为核心设计的无线传感系统。

在现实中所应用的温湿度监测系统通常需要一个或多个路由器节点和至少一个或多个终端设备,往往是一个非常庞大的ZigBee 无线网络系统,具有非常复杂的网络结构,但是由于在实验环境下,节点数量、制作成本、技术能力等多方面因素,无法构成像现实中的大型无线网络,目前只能实现点对点的温湿度监测和数据传输来模拟现实中的温湿度监测ZigBee网络。

本文中所设计的温湿度监测系统采用点对点通信的模式,可以理解为简化的星型拓扑网络,由一个协调器和一个终端节点组成。

协调器具有无线收发通信部分、处理器部分、与PC机通信的串口部分和电源供电部分。

终端节点与协调器相比不具有串口通信部分而是增加了温湿度采集传感器部分。

当需要温湿度采集时,协调器向终端节点发送控制命令,终端节点通过温湿度传感器DS18B20进行温湿度的采集,之后终端节点将采集的温湿度数据通过无线发送给协调器,由协调器对温湿度数据进行处理后通过串口将温湿度数据传输给PC机,通过上位机软件对温湿度数据进行显示、分析、存储等处理。

由于ZigBee的特点是低功耗,因此本设计中为使节点满足低功耗要求,终端节点还能进入休眠模式,采用定时器唤醒模式每10秒唤醒一次,以最大限度的降低功耗。

系统总体方案图,如图3.1所示。

图3.1 系统总体方案图2系统硬件设计2.1 ZigBee开发套件本设计所用ZigBee开发套件由节点(底板和核心板)2套、仿真器1个、10pin排线1条、USB线2条、2db天线2条和DS18B20温湿度传感器1个构成。

此开发套件具有以下特点:①设计小巧,布局合理。

底板尺寸5*5cm,核心板尺寸2.5*2.5cm;②采用底板加核心板的设计,便于更换模块或板载天线模块;③板上接口资源丰富,传感器即插即用;④板载USB转串口电路,方便笔记本以及没有串口的电脑用户;⑤传输距离远;⑥具备USB高速下载功能,支持IAR集成开发环境;ZigBee开发套件节点底板实物图,如图3.2所示。

CC2530基础实验操作说明

CC2530基础实验操作说明

在液晶上显示一串字符 Welcome to ES 在液晶上显示一个 unsigned char 类型的数据(数据自动自增,动态显示) 在液晶上显示一个 unsigned int 类型的数据(数据自动自增,动态显示) 注意:需要在本店铺购买液晶模块。 程序功能:实现在液晶上显示不同大小的数字,英文和中文字符。 效果图:
实验步骤:使用 USB 线连接计算机和 ZigBee 模块,打开串口调试助手,设 置好参数,把程序通过仿真器下载到无线模块并运行。
实验结果: 模块一上电向电脑发送 Hello,Welcome to ES,当接收到电脑的数据(abc# 方式发送,#为结束符),把接收到的数据发回电脑。 注意:使用串口调试助手请将波特率设定为 115200,并选择合适,串口号,
断数据值,点亮相应的 LED。 8. 与 PC 进行串口通信 (接收电脑发送过来的数据并发送回电脑) 实验目的:学习串口参数的设置,并使用串口发送数据和用中断接收计算机
发送过来的数据。使用串口 0,波特率设定为 115200。
易思开发工作室 ES Technology

温度值,显示在液晶上。 实验步骤:连接液晶模块,把程序通过仿真器下载到无线模块并运行。 实验结果: 每隔一段时间采样芯片内部的温度传感器的数据值,把数据转换成温度值并显示
易思开发工作室 ES Technology

在液晶上,每采样一次数据,蓝色 LED 状态改变一次 效果图:
易思开发工作室 ES Technology

实验结果: 当检接收到电脑发送的数据为 0x01,改变第一个黄色 LED 的显示状态; 当检接收到电脑发送的数据为 0x02,改变第二个黄色 LED 的显示状态; 当检接收到电脑发送的数据为 0x03,改变第蓝色 LED 的显示状态; 注意:使用串口调试助手请将波特率设定为 115200,并选择合适,串口号,

CC2530简要中文数据手册

CC2530简要中文数据手册

2.4-GHz IEEE 802.15.4 和ZigBee 应用的真正片上系统解决方案• RF/布局–适应2.4-GHz IEEE 802.15.4 的RF 收发器–极高的接收灵敏度和抗干扰性能–可编程的输出功率高达4.5 dBm–只需极少的外接元件–只需一个晶振,即可满足网状网络系统需要–6-mm × 6-mm 的QFN40 封装–适合系统配置符合世界范围的无线电频率法规:ETSI EN 300 328 和EN 300440(欧洲),FCC CFR47 第15 部分(美国)和ARIB STD-T-66(日本)• 低功耗–主动模式RX(CPU 空闲):24 mA–主动模式TX在1dBm(CPU空闲):29 mA–供电模式1(4 µs 唤醒):0.2 mA–供电模式2(睡眠定时器运行):1 µA–供电模式3(外部中断):0.4 µA–宽电源电压范围(2 V–3.6 V)• 微控制器–优良的性能和具有代码预取功能的低功耗8051 微控制器内核–32-、64-或128-KB 的系统内可编程闪存–8-KB RAM,具备在各种供电方式下的数据保持能力–支持硬件调试• 外设–强大的5 通道DMA–IEEE 802.5.4 MAC 定时器,通用定时器(一个16 位定时器,一个8 位定时器)–IR 发生电路–具有捕获功能的32-kHz 睡眠定时器–硬件支持CSMA/CA–支持精确的数字化RSSI/LQI–电池监视器和温度传感器–具有8 路输入和可配置分辨率的12 位ADC–AES 安全协处理器–2 个支持多种串行通信协议的强大USART–21 个通用I/O 引脚(19× 4 mA,2×20 mA)–看门狗定时器• 开发工具–CC2530 开发套件–CC2530ZigBee®开发套件–用于RF4CE的CC2530 RemoTI™开发套件–SmartRF™软件–数据包嗅探器–可用的IAR 嵌入式工作台应用• 2.4-GHz IEEE 802.15.4 系统• RF4CE 远程控制系统(需要大于64-KB闪存)• ZigBee 系统(256-KB 闪存)• 家庭/楼宇自动化• 照明系统• 工业控制和监控• 低功耗无线传感网络• 消费型电子• 医疗保健请注意这一个重要标志,它与是否可用、标准保修有关,用在德州仪器半导体产品的关键应用中,并且出现在本数据手册末的免责条款。

CC2530学习路线-基础实验-GPIO按键控制LED灯亮灭(2)

CC2530学习路线-基础实验-GPIO按键控制LED灯亮灭(2)

CC2530学习路线-基础实验-GPIO按键控制LED灯亮灭(2)⽬录1.前期预备知识1.1 新⼤陆Zigbee模块按键电路图由上图可知,Zigbee模块的SW1按钮连接在P1.2端⼝上,当SW1导通,P1.2电平从3.3V被拉低接地。

所以P1.2输⼊模式为下拉输⼊.1.2 CC2530相关寄存器寄存器名称寄存器作⽤寄存器描述P1 (0x90)*控制端⼝1的⾼低电平端⼝1.通⽤I/O。

可以通过SFR位寻址P1SEL(0xF4)端⼝1 8个⼦端⼝的功能选择P1SEL的8个bit分别代表 => P1.7~P1.0的功能选择.值为 0:代表通⽤I/0(GPIO)功能.值为 1 : 代表外设功能P1DIR(0xFE)端⼝1 输⼊输出选择P1DIR的bit定义同P1SEL;值为 0:代表从外部输⼊信号⾄CC2530;值为 1:代表从CC2530输出信号⾄外部P1INP (0xF6)端⼝1 输⼊模式选择P1INP定义为P1.7~P1.2的I/O输⼊模式。

其中P1.0和P1.1是没有上拉/下拉功能。

值为 0:上拉/下拉。

值为 1:三态(⾼电平、低电平、⾼阻态)P2INP (0xINP)端⼝2 输⼊模式及其它端⼝选择P2INP⽐较特殊,因为P2端⼝引出的引脚只有3个,所以P2INP还有其它功能。

bit 0 ~ 4 : P2.4~P2.0的输⼊模式。

0 : 上拉/下拉; 1:三态bit 5 : 设置端⼝0上拉/下拉选择。

对端⼝P0上⾯的所有引脚设置为上拉/下拉输⼊ 0 : 上拉; 1: 下拉bit 6 : 同bit 5功能,但是是设置端⼝1上所有引脚bit 7 : 同bit5功能,但是是设置端⼝2上的所有引脚P1IEN(0x8D)端⼝1 中断屏蔽端⼝P1.7~P1.0的中断使能(也就是说中断是否Enable*(打开))0 : 中断禁⽤1 : 中断使能PICTL(0x8C)端⼝中断控制 P0ICON(bit0)端⼝0、1、2输⼊模式下的中断配置。

单片机技术与应用08_CC2530电源管理应用

单片机技术与应用08_CC2530电源管理应用

OSC:CLKCONSTA.OSC 反映当前的设置。
TICKSPD[2:0]:注意TICKSPD 可以设置为任意值,但是结果受OSC设置的限制,即如果OSC=1且 TICKSPD=000,TICKSPD 读出001 且实际TICKSPD 是16 MHz。
CLKSPD:结果受OSC设置的限制,即如果OSC=1且CLKSPD=000,CLKSPD读出001且实际CLKSPD是 16 MHz。还要注意调试器不能和一个划分过的系统时钟一起工作。当运行调试器,当OSC=0, CLKSPD的值必须设置为000,或当OSC=1设置为001。
1 : 16 MHz RCOSC
定时器标记输出设置。不能高于OSC 位设置的系统时钟
5:3 TICKSPD[2:0]
001
R/W
000 : 32 MHz 011 : 4 MHz
001 : 16 MHz 100 : 2 MHz
010 : 8 MHz 101 : 1 MHz
110 :500 kHz 111 :250 kHz
2、相关寄存器
睡眠模式控制寄存器SLEEPCMD

名称
复位 R/W
描述
禁用32 kHz RC振荡器校准。 7 OSC32K_CALDIS 0 R/W 0:使能32 kHz RC振荡器校准。
1:禁用32 kHz RC振荡器校准。
6:3
-
000 0 R0 保留
2
-
1 R/W 保留。总是写作1。
1:0
MODE[1:0]
R 保留
状态位,表示上一次复位的原因。如果有多个复位,
寄存器只包括最新的事件。
R
00:上电复位和掉电探测。 01:外部复位。
10:看门狗定时器复位。

(完整版)cc2530常用寄存器讲解

(完整版)cc2530常用寄存器讲解一.CC2530控制外设的基本方法(通用I/O口)CC2530的I/O控制口一共有21个,分成3组,分别是P0、P1和P2;由上面的对照表可以看出LED1所对应的I/O口为P1_0,LED2所对应的I/O口为P1_1,LED3所对应的I/O口为P1_4,LED4所对应的I/O为P0_1。

相对应的常用SFR有:P1DIR(P1方向寄存器,P0DIR同理):0:输入1:输出P0SEL(P1SEL相同):各个I/O口的功能选择,0为普通I/O功能,1为外设功能寄存器的设置:将控制寄存器的某一位置1:例:P1DIR |= 0X02;解释:”|=“表示按位或运算,0X02为十六进制数,转换成二进制数为0000 0010,若P1DIR原来的值为0011 0000,或运算后P1DIR的值为0011 0010。

根据上面给出的取值表可知,按位与运算后P1_1的方向改为输出,其他I/O口方向保持不变。

将控制寄存器某一位清0:例:P1DIR &= ~0X02;解释:”&=“表示按位与运算,”~“运算符表示取反,0X02为0000 0010,即~0X02为1111 1101。

若P1DIR原来的值为0011 0010,与运算后P1DIR的值为0011 0000。

二.通过中断控制LED,如何捕获一个外部中断和CC2530捕获外部中断后的处理流程D5为USB D+中断状态标志,当D+线有一个中断请求未决时设置该标志,用于检测USB挂起状态下的USB恢复事件。

当USB控制器没有挂起时不设置该标志。

波特率由U0GCR中的低5位和U0BAUD决定,例如:U0GCR |= 9;U0BAUD |= 59;以上代码将波特率设为19200。

五.系统电源管理,外部中断睡眠唤醒PCON(0x87) Bit0. 系统电源模式控制寄存器,置1将强制系统进入SLEEPCMD所指定的电源模式,所有中断信号都可以清除此置位。

CC2530-Zigbee 开发平台使用说明书V2.1(红色主板)

CC2530/Zigbee开发平台 使用说明书V2.1希望微控工作室/2012年6月11日目 录1 产品组成 (1)2 产品特点 (1)3 应用领域 (3)4 XWWK-CC2530A模块与ZigBee协议 (3)4.1 Zigbee概述 (3)4.2 ZigBee的技术特点 (4)4.3 Zigbee组成及自组网 (5)4.4 XWWK-CC2530A模块与ZigBee2007/PRO协议 (5)4.5 XWWK-CC2530A模块 (7)5使用方法 (8)5.1 CC2530A模块专用主板 (8)5.2 CC2530A模块终端节点的供电 (10)5.2 CC2530A模块与仿真器的连接 (11)6、仿真调试 (11)6.1 安装仿真器USB 驱动程序 (11)6.2 点对点测试程序操作范例 (12)6.3 IAR 7.51工程设置 (14)1 产品产品组成组成组成开发平台开发平台主要由XWWK-CC2530A 模块、专用主板、仿真器、供电底板以及天线、数据线等配件组成,同时,赠送大量软件、代码以及资料等。

2 2 产品产品产品特点特点特点XWWK-CC2530A 模块 是用于2.4-GHz IEEE 802.15.4、ZigBee 和RF4CE 应用的一个真正的片上系统(SoC )解决方案。

模块结合了领先的RF 收发器的优良性能,业界标准的增强型8051 CPU 、 8KB RAM 、256K 闪存。

模具有不同的低功耗运行模式,使得它尤其适应超低功耗要求的系统,且模式切换时间极短。

特点见下表单元 特点说明 真正的片上Soc片内集成8051 微控制器 + 2.4GHzRF 收发器 + 大量片内外设电源电压范围宽(2.0~3.6V );6mm×6mm 的QFN40 封装只需极少的外接元件8051 微控制器 增强型8051 CPU,精简指令集,频率32M,单指令周期。

CC2530F256,大容量Flash8-KB RAM,具备在各种供电方式下的数据保持能力 支持多种中断响应RF收发器 兼容2.4-GHz IEEE 802.15.4 的RF收发器极高的接收灵敏度和抗干扰性能(-97dBm)可编程的输出功率高达4.5 dBm适合系统配置符合世界范围的无线电频率法规:ETSI EN 300 328 和EN 300440(欧洲),FCC CFR47 第15 部分(美国)和ARIB STD-T-66(日本)片内外设 多个定时器:MAC 定时器,通用定时器(一个16 位定时器,一个8 位定时器)强大的5 通道DMAIR 发生电路睡眠定时器,低功耗设计使用。

CC2530简介

• XDATA:外部数据存储空间,通常需要4-5个CPU指令周期 来访问。这一存储空间是64KB。访问XDATA 存储器慢于访 问DATA,因为CODE 和XDATA 存储空间共享CPU 内核上 的一个通用总线。
• SFR:寄存器存储空间,可以直接被一个CPU指令访问。这 一存储空间含有128字节。对于地址是被8 整除的SFR 寄存 器,每一位还可以单独寻址。
位定时器,一个8位定时器) IR发生电路(IR 中断) 具有捕获功能的32-kHz睡眠定时器 硬件支持CSMA/CA(载波侦听多路访问/冲突避免) 支持精确的数字化RSSI/LQI(链路质量指示 ) 电池监视器和温度传感器 21个通用I/O引脚 看门狗定时
8
CC2530的外设(2)
这里。 SFR 寄存器映射到地址区域(0x7080–0x70FF)。 闪存信息页面(2 KB)映射到地址区域(0x7800–0x7FFF)。这
是一个只读区域,包含有关设备的各种信息。 XDATA 存储空间(0x8000–0xFFFF) 的较高32KB 是一个只读的
闪存代码区( XBANK),可以使用 MEMCTR.XBANK[2:0]位映射到任何一个可用的闪存区。 闪存存储器SRAM 和寄存器到XDATA 的映射允许DMA 控制器
SFR寄存器:特殊功能寄存器(SFR)控制8051CPU内核和/或外设的 一些功能。许多8051CPU内核的SFR和标准的8051SFR 相同。但是有 一些控制功能的另外的SFR,是标准8051 中所没有的。另外的SFR 用 于和外设单元以及RF 收发器接口。
24
寄存器名称
P0


P1
P2
寄存器名称
for(d=0; d<30000; d++); // 延时 BLED = ~BLED; // 电平反向,LED闪烁 } }

CC2530简介


CC2530的典型应用
输入输出匹配:当使用单极子的一个不平衡天线,需要用一个巴伦来对性能 进行优化,我们可以采用低成本分立电感或电容来实现,这里主要运用 C262,L261,C252,L252. 如果使用了诸如折叠偶极子这样的平衡天线,巴伦可以忽略。
1.8V片上稳压器:用以提供1.8V的数字逻辑电压,采用这一个稳压器要求用一 个去耦电容C401来获得稳定运行效果。
➢ ADC:支持7到12位的分辨率,带宽范围为7-30kHz,在DC与音频转换时,能够 使用8个输入通道。
➢ AES加密/解密内核:CC2530用128位的AES算法进行加密或解密数据,从而保 证了ZigBee网络层和应用层的安全要求。
➢ USART0和USART1分别被配置为一个主从或一个UART,其功能是为RX和TX提供 双缓冲,以及硬件流控制。
➢ 调试接口:用于内部电路调试,具有两线串形接口 ➢ I/O控制器:负责所有的通用的I/O引脚
无线设备
CC2530具备一个IEEE802.15.4兼容无线收发 器,其中的RF内核控制模拟无线模块,另 外它还提供了一个连接外部设备的端口, 从而可以发出命令和读取状态,操纵各执 行电路的事件顺序。同时无线设备还包括 数据包过虑模块和地址识别模块。
10
dbm
125

2
kV
500
V
推荐运行条件
最小值
运行环境温度范围,TA -40
最大值 125
单位 ℃
运行供电电压
2
3.6
V
CC2530的电气特性
参数
测试条件
数字稳压器开启,16-MHz RCOSC运行,没有无线模块,晶振或外设活动。 中等CPU活动:正常内存访问,没有RAM访问
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

CC2530 电源模式3(PM3)(外部I/O中断唤醒)
四种电源模式简单描述如下:
/*
说明:程序指定S1为外部中断源唤醒CC2530,每次系统唤醒LED1灯亮,LED2闪烁10下后关闭两LED,进入系统睡眠模式PM3。

系统进入睡觉模式的时候 I/O引脚保持进入PM3之前I/O模式和输出值在PM3下复位
和外部I/O端口中断是仅有的运行模块
*/
#include <iocc2530.h>
/*宏定义*****************************************/
#define uint unsigned int
#define uchar unsigned char
#define gled P1_0
#define rled P1_1
void delay(void){
uint i,j;
for(j = 0;j < 5;j++)
for(i=0;i<15000;i++);
}
//系统工作模式选择函数
void syspowermode(uchar mode){
uchar j;
if(mode < 4)
{
SLEEPCMD &= 0XFC; //将SLEEPCMD的最低两位置0 表示将电源模式设置活动空闲模式
SLEEPCMD |= mode; //设置系统睡眠模式
for(j = 0;j < 4;j++);
PCON = 0X01; //进入睡眠模式
}else
PCON = 0X00; //系统唤醒
}
void initled(void){
P1SEL &= 0XFC; //P1_0,P1_1接口设为通用接口模式
P1DIR |= 0X03; //P1_0,P1_1接口设为输出模式
rled = 1;
gled = 1;
}
//初始化按键为中断输入方式
void initkey(void){
P0SEL &= 0XFD; //P0_1设为通用I/O
P0DIR &= 0XFD; //P0_1设为输入
P0IEN |= 0X02; //P0_1中断使能
IEN1 |= 0X20; //P0中断使能
EA = 1;
P0IFG = 0X00; //清除P0所有中断标志位
}
void main(void){
uchar count = 0;
initled();
initkey();
delay();
while(1)
{
gled = !gled; rled = 1; //绿灯闪烁红灯熄灭
count++;
if(count >= 20)//闪烁20下后
{
count = 0;
rled = 0;
syspowermode(3);//进入PM3
}
delay();
}
}
//P0中断函数
#pragma vector = P0INT_VECTOR
__interrupt void P0_ISR(void)
{
if(P0IFG>0)//P0所有标志位清0
{
P0IFG = 0;
}
P0IF = 0;
syspowermode(4); /*只要发生了外部IO中断,将唤醒设备进入主动模式,故本句可以取消。

*/
}。

相关文档
最新文档