在 wifi-connect.c 中实现了新的 Wi-Fi 连接管理模块,负责配网、连接及状态上报。 添加了用于 Wi-Fi 配置和状态显示的 HTML 界面。 集成了 NVS 用于存储 Wi-Fi 凭证。 更新了 CMakeLists.txt 以包含新模块的依赖项。 修改了 main.c 以初始化 Wi-Fi 连接管理并等待连接成功。
35 lines
756 B
C
35 lines
756 B
C
#pragma once
|
|
|
|
#include <stdbool.h>
|
|
#include "esp_err.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef enum {
|
|
WIFI_CONNECT_STATUS_IDLE = 0,
|
|
WIFI_CONNECT_STATUS_PROVISIONING,
|
|
WIFI_CONNECT_STATUS_CONNECTING,
|
|
WIFI_CONNECT_STATUS_CONNECTED,
|
|
WIFI_CONNECT_STATUS_FAILED,
|
|
WIFI_CONNECT_STATUS_TIMEOUT,
|
|
} wifi_connect_status_t;
|
|
|
|
typedef struct {
|
|
bool has_config;
|
|
char ssid[33];
|
|
char password[65];
|
|
} wifi_connect_config_t;
|
|
|
|
esp_err_t wifi_connect_init(void);
|
|
esp_err_t wifi_connect_start(void);
|
|
esp_err_t wifi_connect_stop(void);
|
|
wifi_connect_status_t wifi_connect_get_status(void);
|
|
esp_err_t wifi_connect_get_config(wifi_connect_config_t *config);
|
|
esp_err_t wifi_connect_clear_config(void);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|