ESP32連接wifi

#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);
    //一、初始化
    //創(chuàng)建一個(gè)LwIP 核心任務(wù),并初始化 LwIP 相關(guān)工作。
    //ESP_ERROR_CHECK(esp_netif_init());
    esp_err_t ret_netif = esp_netif_init();
    printf("ESP_NETIF_STA: %d\n",ret_netif);
    //創(chuàng)建一個(gè)系統(tǒng)事件任務(wù),并初始化應(yīng)用程序事件的回調(diào)函數(shù)。該回調(diào)函數(shù)唯一的動(dòng)作就是將事件中繼到應(yīng)用程序任務(wù)中。
    //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);
    //創(chuàng)建有 TCP/IP 堆棧的默認(rèn)網(wǎng)絡(luò)接口實(shí)例綁定 station 
    esp_netif_create_default_wifi_sta();
    //創(chuàng)建 Wi-Fi 驅(qū)動(dòng)程序任務(wù),并初始化 Wi-Fi 驅(qū)動(dòng)程序。
    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");
    //二、配置
    //設(shè)置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);
    //三、啟動(dòng) Wi-Fi 驅(qū)動(dòng)程序。
    //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);

    //進(jìn)行wifi連接
    esp_err_t esp_t2 = esp_wifi_connect();
    printf("ESP_WIFI_CONNECT_STA: %d\n",esp_t2);
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容