美文网首页
ESP32连接wifi

ESP32连接wifi

作者: using__ | 来源:发表于2022-02-24 01:42 被阅读0次
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/gpio.h"
#include "sdkconfig.h"
#include "esp_wifi.h"
#include <esp_wifi_types.h>
#include "nvs_flash.h"

#define ESP_WIFI_SSID   "xjzgc2"
#define ESP_WIFI_PASS   "xjzgcmm2"

void app_main(void)
{
    esp_err_t ret_nvs = nvs_flash_init();
    printf("ESP_NVS_STA: %d\n",ret_nvs);
    //一、初始化
    //创建一个LwIP 核心任务,并初始化 LwIP 相关工作。
    //ESP_ERROR_CHECK(esp_netif_init());
    esp_err_t ret_netif = esp_netif_init();
    printf("ESP_NETIF_STA: %d\n",ret_netif);
    //创建一个系统事件任务,并初始化应用程序事件的回调函数。该回调函数唯一的动作就是将事件中继到应用程序任务中。
    //ESP_ERROR_CHECK(esp_event_loop_create_default());
    esp_err_t ret_eventloop = esp_event_loop_create_default();
    printf("ESP_EVELOOP_STA: %d\n",ret_eventloop);
    //创建有 TCP/IP 堆栈的默认网络接口实例绑定 station 
    esp_netif_create_default_wifi_sta();
    //创建 Wi-Fi 驱动程序任务,并初始化 Wi-Fi 驱动程序。
    wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT();
    //ESP_ERROR_CHECK(esp_wifi_init(&cfg));
    esp_err_t ret_wifi = esp_wifi_init(&cfg);
    printf("ESP_WIFI_STA: %d\n",ret_wifi);
    //printf("初始化完成!\n");
    //二、配置
    //设置wifi模式
    //ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_STA));
    esp_err_t ret_wifimode = esp_wifi_set_mode(WIFI_MODE_STA);
    printf("ESP_WIFIMODE_STA: %d\n",ret_wifimode);

    wifi_config_t wifi_config = {
        .sta = {
            .ssid = ESP_WIFI_SSID,
            .password = ESP_WIFI_PASS,

            .threshold.authmode = WIFI_AUTH_WPA2_PSK,
            .pmf_cfg = {
                .capable = true,
                .required = false
            },
        },
    };
    //ESP_ERROR_CHECK(esp_wifi_set_config(ESP_IF_WIFI_STA,&wifi_config));
    esp_err_t ret_wificonf = esp_wifi_set_config(ESP_IF_WIFI_STA,&wifi_config);
    printf("ESP_WIFICONF_STA: %d\n",ret_wificonf);
    //三、启动 Wi-Fi 驱动程序。
    //ESP_ERROR_CHECK(esp_wifi_start());
    esp_err_t ret_wifistart = esp_wifi_start();
    printf("ESP_WIFISTART_STA: %d\n",ret_wifistart);
    //printf("ESP_WIFI_START_STA: %d\n",esp_t1);

    //进行wifi连接
    esp_err_t esp_t2 = esp_wifi_connect();
    printf("ESP_WIFI_CONNECT_STA: %d\n",esp_t2);
}

相关文章

网友评论

      本文标题:ESP32连接wifi

      本文链接:https://www.haomeiwen.com/subject/ozoalrtx.html