nRF24LE1低功耗应用详解
迅通科技有限公司
http://www.freqchina.com
主要内容
1、nRF24LE1的低功耗工作模式
2、nRF24LE1的唤醒源
3、nRF24LE1进入低功耗模式前I/O设置
4、nRF24LE1减少功耗的编程技巧
5、nRF24LE1功耗测试及计算方法
1、nRF24LE1的低功耗工作模式
1.1、深度休眠模式
1.2、存储器维持,定时器关闭模式
1.3、存储器维持,定时器开启模式
1.4、寄存器维持,定时器关闭模式
1.5、寄存器维持,定时器开启模式
1.6、待机模式
1.1.1、深度休眠模式说明
处理器处于深度休眠状态。此模式唤醒将导致系统复位。它是所有省
电工作模式中功耗最低的。可通过设置寄存器PWRDWN = 0x01;进入
此模式。进入此模式后,只能由外部引脚唤醒。在唤醒后,第一时间要
对I/O口进行开锁操作。可通过设置OPMCON = 0x00;进行开锁。若唤
醒引脚使用高电平唤醒,则此引脚要下拉(可使用内部下拉或外接下拉
电阻),否则若唤醒引脚使用低电平唤醒,则此引脚要上拉(可使用内
部上拉或外接上拉电阻)。
进入深度休眠模式方法如下:
I/O口处理;
OPMCON |= 0x02;
PWRDWN = 0x01;
//进入低功耗之前,要对I/O进行设置
//I/O状态锁存
//进入深度睡眠模式,唤醒会导致复位
1.1.2、深度休眠模式使用背景
唤醒信号由外部提供,唤醒后允许系统复
位的条件下,应使用此省电模式。
1.2.1、存储器维持,定时器关闭模式说明
处理器处于休眠状态,唤醒将导致系统复位,但存储器(IRAM和
SRAM)的数据被保存下来。功耗要比深度休眠模式稍高一些。可通过
设置寄存器CLKLFCTRL = 0x07;PWRDWN = 0x02;进入此模式。进
入此模式后,只能由外部引脚唤醒。在唤醒后,第一时间要对I/O口进行
开锁操作。可通过设置OPMCON = 0x00;进行开锁。若唤醒引脚使用
高电平唤醒,则此引脚要下拉(可使用内部下拉或外接下拉电阻),否
则若唤醒引脚使用低电平唤醒,则此引脚要上拉(可使用内部上拉或外
接上拉电阻)。
//进入低功耗之前,要对I/O进行设置
进入存储器维持,定时器关闭模式方法如下:
I/O口处理;
CLKLFCTRL = 0x07; // CLKLF关闭
OPMCON |= 0x02; //I/O状态锁存
PWRDWN = 0x02; //进入存储器维持,定时器关闭模式,唤醒会导致复
位
1.2.2、存储器维持,定时器关闭模式使用背景
唤醒信号由外部提供,唤醒后允许系统复
位,但需保存存储器(IRAM和SRAM)的数
据的条件下,应使用此省电模式。
1.3.1、存储器维持,定时器开启模式
处理器处于休眠状态,唤醒将导致系统复位,但存储器(IRAM和SRAM)的数
据被保存下来。功耗要比存储器维持,定时器关闭模式稍高一些。可通过设置寄
存器CLKLFCTRL = 0x01;PWRDWN = 0x03;进入此模式。进入此模式后,可
由外部引脚唤醒,RTC2定时TICK唤醒,看门狗复位唤醒或者引脚上的电平比较
器TICK唤醒。在唤醒后,第一时间要对I/O口进行开锁操作。可通过设置
OPMCON = 0x00;进行开锁。若唤醒引脚使用高电平唤醒,则此引脚要下拉
(可使用内部下拉或外接下拉电阻),否则若唤醒引脚使用低电平唤醒,则此引
脚要上拉(可使用内部上拉或外接上拉电阻)。
进入存储器维持,定时器开启模式方法如下:
I/O口处理;
CLKLFCTRL = 0x01; // CLKLF开启
OPMCON |= 0x02; //I/O状态锁存
PWRDWN = 0x03; //进入存储器维持,定时器开启模式,唤醒会导致复位
//进入低功耗之前,要对I/O进行设置