首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Esp32 Wifi驱动程序SoftAP+Sta模式。设置配置接口?

Esp32 Wifi驱动程序SoftAP+Sta模式。设置配置接口?
EN

Stack Overflow用户
提问于 2021-02-18 10:45:28
回答 1查看 644关注 0票数 1

esp_wifi_set_config方法需要一个wifi_interface_t类型的接口参数。

我的配置是从esp32示例页面上的两个示例中合并而成的,其中包含了相应的配置参数。但是我不确定我应该从上面传递什么样的接口模式来设置配置。我想要一个WIFI_IF_AP_STA之类的。

代码语言:javascript
复制
wifi_config_t wifi_config = {
    .ap = {
        .ssid = ESP_AP_WIFI_SSID,
        .ssid_len = strlen(ESP_AP_WIFI_SSID),
        .channel = ESP_AP_WIFI_CHANNEL,
        .password = ESP_AP_WIFI_PASS,
        .max_connection = AP_MAX_STA_CONN,
        .authmode = WIFI_AUTH_WPA_WPA2_PSK
    },
    .sta = {
        .ssid = ESP_STA_WIFI_SSID,
        .password = ESP_STA_WIFI_PASS,
     .threshold.authmode = WIFI_AUTH_WPA2_PSK,

        .pmf_cfg = {
            .capable = true,
            .required = false
        },
    },
};
ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_APSTA));
ESP_ERROR_CHECK(esp_wifi_set_config(
    **WHAT DO I PUT HERE? [WIFI_IF_STA : WIFI_IF_AP]
    , &wifi_config));
ESP_ERROR_CHECK(esp_wifi_start());
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-18 15:15:35

首先,请注意,wifi_config_t不是一个包含两个成员的结构。这是一个联合,这意味着您可以存储AP或STA配置,但不能同时存储。因此,您需要创建两个不同的配置结构,每个模式一个。

至于您的混淆,根据示例这里,您调用esp_wifi_set_config()两次-一次用于AP,一次用于STA。

代码语言:javascript
复制
wifi_config_t ap_config = {
    .ap = {
        .ssid = ESP_AP_WIFI_SSID,
        .ssid_len = strlen(ESP_AP_WIFI_SSID),
        .channel = ESP_AP_WIFI_CHANNEL,
        .password = ESP_AP_WIFI_PASS,
        .max_connection = AP_MAX_STA_CONN,
        .authmode = WIFI_AUTH_WPA_WPA2_PSK
    }
};
wifi_config_t sta_config = {
    .sta = {
        .ssid = ESP_STA_WIFI_SSID,
        .password = ESP_STA_WIFI_PASS,
        .threshold.authmode = WIFI_AUTH_WPA2_PSK,
        .pmf_cfg = {
            .capable = true,
            .required = false
        }
    }
};

...
ESP_ERROR_CHECK(esp_wifi_set_config(WIFI_IF_AP, &ap_config));
ESP_ERROR_CHECK(esp_wifi_set_config(WIFI_IF_STA, &sta_config));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66258365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档