ESP8266 rst cause: 2 是什么意思?

有时你会看到类似这样的消息

esp8266_boot_log.txt
 ets Jan  8 2013,rst cause:2, boot mode:(3,6)

load 0x4010f000, len 3460, room 16
tail 4
chksum 0xcc
load 0x3fff20b8, len 40, room 4
tail 4
chksum 0xc9
csum 0xc9
v0007e100
~ld
7

在 ESP8266 串行线上。

rst cause: 2 表示 ESP 从固件使用以下命令重启

esp_restart_example.cpp
ESP.restart();

通常这样的重启是有意的。在你的固件中查找 ESP.restart() 调用。识别哪个 ESP.restart() 调用导致重置并不简单。我建议在每次调用 ESP.restart() 之前插入描述重置原因的 Serial.println() 语句,例如:

esp_restart_with_serial.cpp
Serial.println("由于 Wifi 未连接而重置...");
ESP.restart();

Check out similar posts by category: Electronics, ESP8266/ESP32, PlatformIO