ESP8266如何设置低功耗?功耗控制

释放双眼,带上耳机,听听看~!

ESP8266如何设置低功耗?功耗控制
在某些时候我们设计的产品可能不具备持久供电的环境,那通常会采用锂电池、干电池一类的轻便型的非持久性电源。当遇到这种情况时,产品的续航能力可能就会成用户评估产品的一个重要指标,加大电池容量当然是最为直接的方案,但是这也意味着提高产品的生产成本。那增加产品续航能力的另一个方案就是原自产品自身——降低不必要的能源消耗。

ESP8266有一个非常实用的低功耗运行模式 – 睡眠模式。

ESP8266系列产品的睡眠模式共有以下几种可选:

No-sleep

打开芯片所有的功能使所有功能处理长期持久的工作状态,此时芯片的功耗将处于最大状态。显然,这并不是一种推荐的用法,除非ESP8266芯片要处理长时间的实时性任务(此场景在真实的产品应用中并不多见)。

Modem-sleep

Modem-sleep是ESP8266的默认睡眠方式且仅工作于Station模式(即中继器模式 AP),而且只有连接到路由器后才会生效。

当ESP8266以AP方式连接到路由器且运行于Modem-sleep模式时,它会在两次DTIM Beacon间隔内关闭WIFI电路以达到省电效果,在下次Beacon到来前自动唤醒。睡眠时间由路由器的DTIM Beacon时间决定。睡眠的同时ESP8266可以保持与路由器的WI-FI连接,并通路由器接受来自手机或者服务器的交互信息。

一般路由器的DTIM Beacon间隔为100ms~1,000ms

Light-sleep

Light-sleep的工作模式与Modem-sleep相似,而不同的是除了关闭WI-FI模块电路以外,在该模下还会关闭时间并暂停内部CPU,从而达到比Modem-sleep模式更低的功耗。

Light-sleep模式可用于需要保持与路由器的连接,可以实时响应路由器发来的数据的场合。并且在未接收到命令时,CPU可以处于空闲状态。比如WI-FI开关的应用,大数据时间CPU是空闲的,直到收到控制命令,CPU才需要进行GPIO的操作。

Deep-sleep

Deep-sleep则是最狠的一种省电模式了,但此模式下ESP8266将会关闭除GPIO状态外的所有的电路,此时ESP8266几乎就处于假死状态,其电流的消耗仅仅为20uA!

而事实上ESP8266并不会持续地维持这种深度睡眠状态,而是在一个指定间隔内关闭所有其它电路,当达到指定时间间隔后ESP8266将会自动重新启动一次,这个最大时间间隔为 4,294,967,295 µs 约合71分钟,其实也真的算得上睡得够久了。但这种模式非常适合于那种对时间间隔要求很长的场合,例如最长见的温度湿度检测,河水水位检测等。

要启用Deep-sleep模式不能单单通过固件控制而需要进行跳线,具体办法就是将D0(GPIO16)与RST脚相连。只要RST脚处于低电平状态时就会引发ESP8266重启,而Deep-sleep的真正实现方法就是在固件所指定的时间间隔内向GPIO16输出低电平引发芯片的重启,以达到唤醒的效果。
ESP8266如何设置低功耗?功耗控制

以下是在固件内引发Deep-sleep的代码:

void setup() {
  Serial.begin(115200);
  Serial.setTimeout(2000);

  // Wait for serial to initialize.
  while(!Serial) { }
  
  Serial.println("I'm awake.");

  Serial.println("Going into deep sleep for 20 seconds");

  // 一但遇到以下方法ESP就会进入deepSleep状态
  ESP.deepSleep(20e6); // 20e6 is 20 microseconds
}

void loop() {
}

下表为三种模式的具体对比:

 

给TA打赏
共{{data.count}}人
人已打赏
Nodemcu/ESP8266Nodemcu/ESP8266-进阶动态

ESP8266 for arduino 如何连接到阿里云物联网平台(AliYun)

2020-5-27 9:22:36

兑换项目动态

多功能通讯工具

2021-2-16 20:37:39

34 条回复 A文章作者 M管理员
  1. ZreDays

    学习功耗控制

  2. 末世之王

    这个很重要,省电,加油,不错

  3. 末世之王

    日常打卡

  4. 智能家居

    打卡

  5. raikay

    日常打卡

    • Luca

      加油加油

  6. 清

    。。。。。。。

  7. 吴越

    BUCUO HA

  8. 蓬莱望月

    good

  9. 蘑菇猎人

    学习功耗控制

  10. 造梦者

    精彩!

  11. 阳仔

    小白前来学习

  12. A4171

    很适合小白

  13. cyqand

    学习学习

  14. 健身的森

    学习学习

  15. 七两半

    评论吧

  16. 网砖码

    ????

  17. 启蒙者

    谢谢提供,学习参考

  18. 小糊涂仙

    谢谢

  19. 萌芽

    谢谢

  20. xiao新

    打卡

  21.  6249

    赞一个,厉害

  22. hulaiye

    学习学习

  23. 文又七

    xuexiyixia

  24. justtesting

    打卡

  25. zpchen

    学习了,谢谢!

  26. 哈哈哈

    打卡

  27. Ray

    學習省電方式

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
'); })();