開發板購買連接windows
https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.50111deb2Ij1As&ft=t&id=626366733674網絡
開發板簡介
開發環境搭建 windows
源碼示例:
0_Hello Bug (ESP_LOGX與printf) 工程模板/打印調試輸出
1_LED LED亮滅控制
2_LED_Task 使用任務方式控制LED
3_LEDC_PWM 使用LEDC來控制LED實現呼吸燈效果
4_ADC_LightR 使用ADC讀取光敏電阻實現光照傳感
5_KEY_Short_Long 按鈕長按短按實現
6_TouchPad_Interrupt 電容觸摸中斷實現
7_WS2812_RMT 使用RMT實現RGB_LED彩虹變色示例
8_DHT11_RMT 使用RMT實現讀取DHT11溫溼度傳感器
9_SPI_SDCard 使用SPI總線實現TF卡文件系統示例
10_IIC_ADXL345 使用IIC總線實現讀取ADXL345角度加速度傳感器
11_IIC_AT24C02 使用IIC總線實現小容量數據儲存測試
12_IR_Rev_RMT 使用RMT實現紅外遙控接收解碼(NEC編碼)
13_IR_Send_RMT 使用RMT實現紅外數據發送(NEC編碼)
14_WIFI_Scan 附近WIFI信號掃描示例
15_WIFI_AP 建立軟AP示例
16_WIFI_AP_TCP_Server 在軟AP模式下實現TCP服務端
17_WIFI_AP_TCP_Client 在軟AP模式下實現TCP客戶端
18_WIFI_AP_UDP 在軟AP模式下實現UDP通信
19_WIFI_STA 建立STA站模
20_WIFI_STA_TCP_Server 在站模式STA下實現TCP服務端
21_WIFI_STA_TCP_Client 在站模式STA下實現TCP客戶端
22_WIFI_STA_UDP 在站模式STA下實現UDP通信
23_LVGL_Test LVGL圖形庫簡單示例
app
AP 模式介紹
接入點(AP)是一種提供 Wi-Fi 網絡訪問的設備,並將其鏈接到有線網絡的裝置。ESP32除了不具備與有線網絡的接口外,還能夠提供相似的功能。這種操做模式稱爲軟接入點(soft-AP)。能夠同時鏈接到soft-AP的最大站數能夠設置4,默認爲4。
當ESP32單獨處於AP模式下時,能夠被認爲是一個沒法訪問外網的局域網WiFi路由器節點,它能夠接受各種設備的鏈接請求。並能夠和鏈接設備進行TCP、UDP鏈接,實現數據流。在局域物聯網的設計中能夠承擔數據收發節點的做用。
tcp
1、編寫代碼
先引用必要頭文件函數
#include <stdio.h> #include "esp_system.h" #include "esp_spi_flash.h" #include "esp_wifi.h" #include "esp_event_loop.h" #include "esp_log.h" #include "esp_err.h" #include "nvs_flash.h" #include "esp_event.h"
定義AP的參數oop
#define WIFI_AP_SSID "HelloBug" // WIFI 網絡名稱 #define WIFI_AP_PAS "12345678" // WIFI 密碼 #define WIFI_AP_MAXCON 1 // 最大站鏈接數 最多隻能被4個station同時鏈接,這裏設置爲只能被一個station鏈接 #define WIFI_AP_AUTH WIFI_AUTH_WPA_WPA2_PSK
主函數測試
void app_main() { ESP_LOGI(TAG, "APP Start......"); ESP_ERROR_CHECK( nvs_flash_init() ); tcpip_adapter_init(); ESP_ERROR_CHECK(esp_event_loop_init(event_handler, NULL)); // 建立默認事件循環 wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT(); ESP_ERROR_CHECK(esp_wifi_init(&cfg)); // 使用默認wifi初始化配置 wifi_config_t wifi_config = { // 配置AP參數 .ap = { .ssid = WIFI_AP_SSID, .ssid_len = 0, .max_connection = WIFI_AP_MAXCON, .password = WIFI_AP_PAS, .authmode = WIFI_AP_AUTH, }, }; ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_AP)); // 設置工做模式爲AP模式 ESP_ERROR_CHECK(esp_wifi_set_config(ESP_IF_WIFI_AP, &wifi_config));// 設置AP配置 ESP_ERROR_CHECK(esp_wifi_start()); // 開啓WIFI }
WIFI事件處理函數ui
// wifi事件處理函數 static esp_err_t event_handler(void *ctx, system_event_t *event) { switch (event->event_id){ case SYSTEM_EVENT_AP_START: ESP_LOGI(TAG,"wifi_softap_start"); break; case SYSTEM_EVENT_AP_STACONNECTED: ESP_LOGI(TAG,"wifi_softap_connectted"); break; case SYSTEM_EVENT_AP_STADISCONNECTED: ESP_LOGI(TAG,"wifi_softap_disconnectted"); break; default: break; } return ESP_OK; }
2、下載測試
打開ESP-IDF Command Prompt編碼
cd命令進入此工程目錄spa
cd F:\ESP32_DevBoard_File\15_WIFI_AP
查看電腦設備管理器中開發板的串口號
執行idf.py -p COM9 flash monitor從串口9下載並運行打開口顯示設備調試信息 Ctrl+c退出運行
手機打開WIFI設置,便可看到有一個HelloBug的WIFI,下圖打印信息是鏈接和斷開鏈接的效果