乐鑫技术交流
直播中

张浩

7年用户 1088经验值
私信 关注
[问答]

ESP8266EX连接到WIFI AP时,是否需要执行一些特殊程序?

ESP8266EX处于 STAtiON 模式。我正在使用 0.9.2 SDK 和 lubuntu 来构建。

1.当模块上电后首次连接到WIFI AP时,一切正常。
2. 当我关闭我的 WIFI AP 时,模块检测到并开始在内部重新连接......
3. 当我重新打开我的 WIFI AP 时,模块会重新连接并检测到它已连接,并且它再次获得了 IP。一切都很好。
4. 现在,~59 秒后,模块失去 WIFI 连接并重新连接。这种情况会永远发生......

有人试过这个吗?ESP8266EX重新连接到 WIFI AP 时,是否需要执行一些特殊程序?也许需要清除一些内部计时器?

回帖(1)

郭中

2024-7-15 17:04:44
以下是一些建议和解决方案:

1. 确保您的ESP8266EX固件是最新的。您提到使用的是0.9.2 SDK,这是一个较旧的版本。建议您升级到较新的版本,如2.2.1或更高版本。

2. 检查您的代码,确保在连接到WIFI AP时正确设置了连接参数。例如,您可以使用以下代码片段:

```c
struct station_config config;
os_memset(&config, 0, sizeof(struct station_config));

// 设置SSID和密码
os_memcpy(config.ssid, "您的SSID", 32);
os_memcpy(config.password, "您的密码", 64);

// 设置连接模式
config.bssid_set = 0;
config.auto_connect = 1;

// 连接到WIFI AP
station_set_config(&config);
station_connect();
```

3. 检查您的代码,确保在连接到WIFI AP后正确处理了连接状态。您可以使用以下代码片段来检查连接状态:

```c
bool connected = false;

while (1) {
    if (wifi_station_get_connect_status() == STATION_GOT_IP) {
        connected = true;
        // 已连接到WIFI AP,执行您的代码
    } else {
        if (connected) {
            // 断开连接,尝试重新连接
            wifi_station_disconnect();
            connected = false;
        }
    }
    os_delay_us(100000);
}
```

4. 如果问题仍然存在,您可以尝试重置ESP8266EX模块。这可以通过以下代码片段实现:

```c
// 重置ESP8266EX模块
system_restart();
```

5. 检查您的WIFI AP设置,确保没有其他问题导致连接不稳定。例如,检查信道、加密方式等。


举报

更多回帖

发帖
×
20
完善资料,
赚取积分