ESP8266 arduino 睡眠模式+唤醒

测试硬件:ESP8266 arduino 睡眠模式+唤醒_第1张图片 

唤醒功能需要飞线,把RST跟GPIO16连接在一起。

如图:ESP8266 arduino 睡眠模式+唤醒_第2张图片

唤醒原理:定时器到时间后gpio16发出一个电平信号到RST引脚,使8266复位。

测试代码:

#include 
#define WLAN_SSID       "sky"
#define WLAN_PASS       "00000000"

void setup() {
  Serial.begin(115200);
  delay(10);
  pinMode(LED_BUILTIN, OUTPUT); 
  
  // Connect to WiFi access point.
  Serial.println(); Serial.println();
  Serial.print("Connecting to ");
  Serial.println(WLAN_SSID);

  WiFi.begin(WLAN_SSID, WLAN_PASS);
  while (WiFi.status() != WL_CONNECTED) {
    digitalWrite(LED_BUILTIN, LOW);
    delay(500);
	digitalWrite(LED_BUILTIN, HIGH);
	delay(500);
    Serial.print(".");
  }
  Serial.println();

  Serial.println("WiFi connected");
  Serial.println("IP address: "); Serial.println(WiFi.localIP());

  
}
void loop() {
  
      ESP.deepSleep(10 * 1000000);//10秒
  }

效果:连接上wifi之后进入睡眠,10秒后会唤醒。

这个开发板连接上wifi之后电流(5v)100ma,睡眠后也有30ma,可能是外围器件的损耗。

参考资料:http://www.yfrobot.com/thread-11978-1-1.html

https://www.esp8266.com/wiki/doku.php?id=esp8266_power_usage

你可能感兴趣的:(ESP)