关于微功耗的问题,大家是如何做的?

2019-07-21 06:35发布

我最近做了一个小东东,
利用NRF24L01接收主机采集的数据,
然后根据数据情况输出声光报警,
这个声光报警器我想利用电池供电,
用的是某宝号称功耗最小的硬币般大小的C8T6核心板,
但工作电流也有30mA以上,
加上NRF24L01等,正常工作电流就有近50mA,
用3.7V的18650电池供电,感觉撑不了一天,
我想请教一下,
这个50mA的电流正常吗?
接收数据的频度差不多1分钟一次,
我需要让MCU进入休眠模式,
然后接收到数据后,中断唤醒吗?
如果让MCU进入休眠模式,
NRF24L01应该处于接收模式吧?那如何降低NRF24L01的功耗呢?
大家一般是如何做的呢?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
24条回答
warship
2019-07-22 08:09
进入STOP模式的方法在这里分享一下:
1、初始化时打开电源管理的RCC时钟
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);

2、NRF24L01接收到数据并处理完成之后,进入STOP模式
PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI);

3、NRF24L01再次接收到数据会产生外部中断,唤醒MCU
在中断服务程序开始处恢复系统时钟

一周热门 更多>