首页 > 国际新闻

ESP8266模块睡眠模式

文章作者:来源:www.guiavv.com时间:2020-03-08



当我们用电池给静电除尘器模块供电时,为了省电。当我们想在实践中应用它时,这个问题需要解决。

解决这个问题的方法是使用esp模块的睡眠模式

睡眠模式类型

有三种不同的睡眠模式:调制解调器睡眠、轻度睡眠和深度睡眠。下表显示了各种模式之间的差异(ESP8266数据表中的信息)。

enter description here

esp低功耗解决方案官方文档

我们可以看到wifi在所有三种睡眠模式下都是关闭的。这意味着需要持续wifi连接的应用场景在许多情况下不适用。

深度睡眠模式只能打开时钟。其他一切都关闭了。深度睡眠也是最节能的,只有20 μ a。

调制解调器睡眠通常用于需要中央处理器功率的应用。一个应用的例子是需要实时脉宽调制灯的中央处理器控制。

调制解调器睡眠通常用于需要中央处理器功率的应用。一个应用的例子是需要实时脉宽调制灯的中央处理器控制。

当不需要持续的wifi连接并且需要保持应用程序时,降低功耗非常有用。

这种模式的控制是通过控制wifi来实现的。

WIFi . ForcesleepBegin();//Wifi关闭

delay();

WIFi . ForcesleepWake();//Wifi on

需要进入睡眠模式时使用第一条语句

需要醒来时使用第二条语句。

可以在循环中使用。

sample

void loop(){

data();

延迟(200);

Serial.println(“现在要睡觉”);

WIFi . ForcesleepBegin();//Wifi关闭

延迟(1000 * 10);//睡眠10秒钟

WIFi . forcesleepWake();//无线上网

串口打印(“唤醒”);

仍然可以循环睡眠。

data()函数用于获取传感器的值,并使用mqtt发送

信息。看到获得的值后,esp模块进入睡眠模式,并在睡眠10秒后醒来。再次重复该操作。

仍然可以循环睡眠。

Light sleep

lightsleep。

仍然可以循环睡眠。

通话可以使用light _ sleep()

void light _ sleep(){

wifi _ station _ disconnect();

wifi_set_opmode_current(空模式);

wifi _ fpm _ set _ SLEEP _ type(LIGHT _ SLEEP _ T);

wifi _ fpm _ open();//启用强制睡眠

GPIO _ PIN _ wake up _ enable(GPIO _ ID _ PIN(2),GPIO _ PIN _ INTR _ LOLEVEL);

wifi _ fpm _ do _ sleep(0x fffffff);//尽可能长时间睡眠

这里设置的睡眠时间是最长的。唤醒并通过按钮将GPIO2接地。

您可以通过调整睡眠时间定期发送数据。

仍然可以循环睡眠。

和MQTT

传入代码后将GPIO16与rst连接起来。

有功耗要求,如果发送值不频繁,可以使用睡眠模式,并且在深度睡眠模式下不会执行其中的程序数据。有两种实现相当于关闭。

第一个是定时器唤醒,这可以理解为在时间转换机

传入代码后将GPIO16与rst连接起来。

enter description here

调用函数ESP . DeepSleep(30e 6);(单位用户)

启用电潜泵模块进入深度睡眠模式30秒。

达到30s后,GPIO16将唤醒

最大睡眠持续时间为4,294,967,295 μs,大约为71分钟

esp01使用定时来实现睡眠模式不是很好。需要连接一个非常小的引脚

enter description here。第二种方法是通过外部触发器

enter description here

使用电潜泵深度睡眠(0)唤醒;

长期深度睡眠状态

当按钮被按下时,RST有一个低信号,它会醒来。醒来后,该语句将再次休眠,直到按下下一个按钮。

esp01s与

enter description here

reference code

reference esp 8266 Deep sleep with arduinide(NodMCu)

reference ESP 8266 Deep sleep Mode

reference ESP 8266

Supplement

对dht11获得的温度值进行轻度睡眠模式测试

获得的值可能由于模块原因而不准确,因为每次获得的初始化值可能有问题。(目前还不确定是否与轻度睡眠有关)

更多的学习课程

电潜泵开发和学习基础知识

基础知识包括电潜泵模块和mqtt协议的理解,arduino IDE代码编写等。介绍

esp系列模块

介绍和使用MQTT协议

使用基于arduino IDE开发方法的mqtt esp模块

esp模块AT命令刷固件

esp模块睡眠模式使用

esp8266-01s介绍和使用

esp8266-12f介绍和使用

NodeMcu介绍和使用

esp开发基于esp8266的IOT应用程序模块和其他基于现实国际应用场景和要求的模块应用

FRID访问控制系统基于FRID arduino中继电磁锁

esp32-cam捕获视频流图像处理

基于步进电机的自动窗帘控制esp8266 mqtt

室内温度和湿度基于DHT 11 Esp8266 mqtt

CCS 811 esp 8266 mqtt获取室内空气质量

基于红外模块的智能遥控esp 8266 mqtt

智能多级照明基于ws2812 esp8266 mqtt

智能多模式大气灯基于ws2812 esp8266 mqtt

基于mp3player esp8266 mqtt的智能语音广播系统