在ESP32深度睡眠中,Wi-Fi连接状态不会自动保留,因为硬件会断电。要快速恢复,必须手动保存以下关键变量到RTC内存(RTC_DATA_ATTR):1)Wi-Fi配置结构体(wifi_config_t),包括SSID、密码、认证模式等;2)IP地址信息(tcpip_adapter_ip_info_t),含IP、网关、子网掩码;3)连接句柄或接口索引(如esp_netif_t*指针,但需注意指针在重启后无效,应保存接口编号);4)若使用TLS,需保存会话票据(session ticket)以跳过握手。实操建议:使用RTC_DATA_ATTR声明这些变量,并在唤醒后调用esp_wifi_set_config()和esp_netif_set_ip_info()恢复,同时启用Wi-Fi快速连接(esp_wifi_set_ps(WIFI_PS_NONE)减少延迟)。注意,RTC内存容量有限(约8KB),需精简数据,避免保存大缓冲区。
mcuku 阿沐 · 2026-08-27