国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

啟明云端分享|ESP32-S3 Smartconfig一鍵配網教程

啟明云端 ? 2021-09-16 10:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

物聯網時代技術開始規模化服務于民眾,方便快捷顯得尤為重要,smartconfig一鍵配網便是一個典型案例。智能家居/家電現階段還處于普及階段,由于家庭wifi網絡的普及,目前普遍采用wifi與路由器完成連接,與手機/云端進行數據交互智能硬件,如智能插座,智能空調,智能空氣凈化器,智能燈泡,智能門鎖由于不具備人機交互界面,不能像電腦一樣的搜索/選擇指定路由器,輸入連接SSID和密碼的界面,所以必須先解決正確連接路由問題。


1.開發環境:
esp-idf版本 :master
esp-idf環境:ESP-IDF開發環境搭建
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32c3/get-started/index.html

注:官方暫時沒有s3的安裝教程,可以參照32系列其他方式選擇master分支即可。
配網例程:esp-idf\examples\wifi\smart_config


2.硬件需求
Esp32-s3 開發板一塊
Usb數據線一條


3.一鍵配網(SmartConfig)連接過程:
1)ESP32 設備進入初始化狀態,開啟混監聽所有網絡數據包。
2)手機連上 WiFi,開啟 APP 軟件,輸入手機所在 WiFi 密碼,請求配網,發送UDP廣播包。
3)ESP32 通過 UDP 包(長度)獲取配置信息捕捉到路由 SSID 和 PASSWD,連接路由器。


4. 配網APP
樂鑫官方:配網APP
https://www.espressif.com/zh-hans/support/download/apps
根據自己的手機系統選擇相應的APP

poYBAGFCsU2AVTaLAACT7nMRE24579.png

例程分析:

//在event_handler中,通過獲取不同的時間執行相對應的操作。
staticvoidevent_handler(void*arg,esp_event_base_tevent_base,
int32_tevent_id,void*event_data)
{
if(event_base==WIFI_EVENT&&event_id==WIFI_EVENT_STA_START){
xTaskCreate(smartconfig_example_task,"smartconfig_example_task",4096,NULL,3,NULL);
}elseif(event_base==WIFI_EVENT&&event_id==WIFI_EVENT_STA_DISCONNECTED){
esp_wifi_connect();//開始連接WiFi
xEventGroupClearBits(s_wifi_event_group,CONNECTED_BIT);
}elseif(event_base==IP_EVENT&&event_id==IP_EVENT_STA_GOT_IP){
xEventGroupSetBits(s_wifi_event_group,CONNECTED_BIT);
}elseif(event_base==SC_EVENT&&event_id==SC_EVENT_SCAN_DONE){
ESP_LOGI(TAG,"Scandone");
}elseif(event_base==SC_EVENT&&event_id==SC_EVENT_FOUND_CHANNEL){
ESP_LOGI(TAG,"Foundchannel");
}elseif(event_base==SC_EVENT&&event_id==SC_EVENT_GOT_SSID_PSWD){
ESP_LOGI(TAG,"GotSSIDandpassword");

smartconfig_event_got_ssid_pswd_t*evt=(smartconfig_event_got_ssid_pswd_t*)event_data;
wifi_config_twifi_config;
uint8_tssid[33]={0};
uint8_tpassword[65]={0};
uint8_trvd_data[33]={0};
bzero(&wifi_config,sizeof(wifi_config_t));
memcpy(wifi_config.sta.ssid,evt->ssid,sizeof(wifi_config.sta.ssid));
memcpy(wifi_config.sta.password,evt->password,sizeof(wifi_config.sta.password));
wifi_config.sta.bssid_set=evt->bssid_set;

if(wifi_config.sta.bssid_set==true){
memcpy(wifi_config.sta.bssid,evt->bssid,sizeof(wifi_config.sta.bssid));
}
memcpy(ssid,evt->ssid,sizeof(evt->ssid));
memcpy(password,evt->password,sizeof(evt->password));
ESP_LOGI(TAG,"SSID:%s",ssid);
ESP_LOGI(TAG,"PASSWORD:%s",password);
if(evt->type==SC_TYPE_ESPTOUCH_V2){
ESP_ERROR_CHECK(esp_smartconfig_get_rvd_data(rvd_data,sizeof(rvd_data)));
ESP_LOGI(TAG,"RVD_DATA:");
for(inti=0;i<33;?i++)?{
printf("%02x",rvd_data[i]);
}
printf("\n");
}
ESP_ERROR_CHECK(esp_wifi_disconnect());
ESP_ERROR_CHECK(esp_wifi_set_config(WIFI_IF_STA,&wifi_config));
esp_wifi_connect();
}elseif(event_base==SC_EVENT&&event_id==SC_EVENT_SEND_ACK_DONE){
xEventGroupSetBits(s_wifi_event_group,ESPTOUCH_DONE_BIT);
}
}
staticvoidinitialise_wifi(void)
{
ESP_ERROR_CHECK(esp_netif_init());//初始化底層TCP/IP堆棧
s_wifi_event_group=xEventGroupCreate(); //創建事件組
ESP_ERROR_CHECK(esp_event_loop_create_default());//創建默認事件循環
esp_netif_t*sta_netif=esp_netif_create_default_wifi_sta();//創建默認WIFISTA在初始化錯誤的情況下,這個APl中止
assert(sta_netif);
wifi_init_config_tcfg=WIFI_INIT_CONFIG_DEFAULT();
ESP_ERROR_CHECK(esp_wifi_init(&cfg));//初始化WiFi
//首先調用esp_event_loop_create_default()創建默認事件循環。
//之后使用esp_event_handler_register()將事件處理程序注冊到系統事件循環。
ESP_ERROR_CHECK(esp_event_handler_register(WIFI_EVENT,ESP_EVENT_ANY_ID,&event_handler,NULL));
ESP_ERROR_CHECK(esp_event_handler_register(IP_EVENT,IP_EVENT_STA_GOT_IP,&event_handler,NULL));
ESP_ERROR_CHECK(esp_event_handler_register(SC_EVENT,ESP_EVENT_ANY_ID,&event_handler,NULL));
ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_STA)); //將ESP32wifi設置為sta模式
ESP_ERROR_CHECK(esp_wifi_start()); //根據配置啟動WiFi為sta
}

//創建事件組s_wifi_event_group=xEventGroupCreate();,觸發相關事件則置標志位,在任務中循環檢測標志位處理相應事件。
//smartconfig_example_task任務中,獲取CONNECTED_BIT和ESPTOUCH_DONE_BIT表示連接上AP和SmartConfig配置完成。
staticvoidsmartconfig_example_task(void*parm)
{
EventBits_tuxBits;
ESP_ERROR_CHECK(esp_smartconfig_set_type(SC_TYPE_ESPTOUCH)); //設置SmartConfig的協議類型
smartconfig_start_config_tcfg=SMARTCONFIG_START_CONFIG_DEFAULT();
ESP_ERROR_CHECK(esp_smartconfig_start(&cfg));//開始smartconfig一鍵配網
while(1){
uxBits=xEventGroupWaitBits(s_wifi_event_group,CONNECTED_BIT|ESPTOUCH_DONE_BIT,true,false,portMAX_DELAY);
if(uxBits&CONNECTED_BIT){
ESP_LOGI(TAG,"WiFiConnectedtoap");
}
if(uxBits&ESPTOUCH_DONE_BIT){
ESP_LOGI(TAG,"smartconfigover");
esp_smartconfig_stop(); //配網結束,釋放esp_smartconfig_start占用的緩沖區。
vTaskDelete(NULL);
}
}
}
voidapp_main(void)
{
ESP_ERROR_CHECK(nvs_flash_init());//初始化NVS分區
initialise_wifi(); //初始化WiFi為sta模式,等待APP進行配網
}


配網操作流程:
1.搭建esp-idf環境
2.編譯smart_config例程
1) 設置target為S3 idf.py set-target esp32s3
2) 編譯工程 idf.py build

pYYBAGFCsZqAe7aYAACCG6S5tTk156.png

3.燒錄到開發板
idf.py flash
多個設備需添加串口號(idf.py -p PORT [-b BAUD] flash)

poYBAGFCsb2Aa2blAAB2jAcmheU291.png

4.開啟監視窗口
idf.py monitor (idf.py-pPORTmonitor)
出現下面的打印就可以用APP進行配網

poYBAGFCsdKAJvN1AACYgnDPgwM145.png

5.打開EspTouch APP (配網APP)
1)手機連接到WiFi (目前ESP32系列只支持2.4G頻段)
2)輸入WiFi密碼
3)點擊確認,配網成功會顯示開發板的IP

pYYBAGFCseqAJT1uAACcbPJG7uw062.png

6.一鍵配網成功
日志輸出如下,成功獲取到WiFi的賬號密碼
并連接到此WiFi,smartconfig停止

pYYBAGFCsgqAW51HAAFW-K7pkMQ023.png
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    ESP32-S3系列】AD35-S3(AI紅色桌寵)上手指南

    AD35-S3是深圳市啟明云端有限公司推出的基于ESP32-S3-WROOM-1的新代桌寵,有豐富的外設接口外,適用于AIoT領域的多種應
    的頭像 發表于 02-26 18:05 ?105次閱讀
    【<b class='flag-5'>ESP32-S3</b>系列】AD35-<b class='flag-5'>S3</b>(AI紅色桌寵)上手指南

    ESP32-S3系列】AD35-S3(AI紅色桌寵)規格書

    AD35-S3是深圳市啟明云端有限公司推出的基于ESP32-S3-WROOM-1的新代桌寵,有豐富的外設接口外,適用于AIoT領域的多種應
    的頭像 發表于 02-10 18:33 ?171次閱讀
    【<b class='flag-5'>ESP32-S3</b>系列】AD35-<b class='flag-5'>S3</b>(AI紅色桌寵)規格書

    ESP32-S3系列】WT0132S3-AI-1模組規格書

    概述WT0132S3-AI-1系列模組(以下簡稱“WT0132S3-AI-1”)是深圳市啟明云端有限公司推出的基于樂鑫ESP32-S3系列芯
    的頭像 發表于 02-03 18:14 ?148次閱讀
    【<b class='flag-5'>ESP32-S3</b>系列】WT0132<b class='flag-5'>S3</b>-AI-1模組規格書

    ESP32-S3系列】WT0132S3-AI-1模組產品介紹

    概述WT0132S3-AI-1系列模組(以下簡稱“WT0132S3-AI-1”)是深圳市啟明云端有限公司推出的基于樂鑫ESP32-S3系列芯
    的頭像 發表于 01-22 18:05 ?241次閱讀
    【<b class='flag-5'>ESP32-S3</b>系列】WT0132<b class='flag-5'>S3</b>-AI-1模組產品介紹

    為什么AI陪伴玩具都愛用ESP32-S3?這就科普

    、開發生態等維度,結合實際案例,剖析其成為行業“爆款”的原因。 ? ESP32-S3的核心技術特性 1. 雙核高性能處理器 ? 雙32位Xtensa? LX7內核:主頻高達240MHz,支持實時多任務處理(如語音識別、網絡通信、本地邏輯運算同時運行)。 ? 內置SRA
    的頭像 發表于 12-05 14:05 ?88次閱讀

    VSCode + ESP-IDF環境下給ESP32-S3項目添加頭文件

    VSCode + ESP-IDF環境下給ESP32-S3項目添加頭文件
    的頭像 發表于 11-28 07:27 ?2297次閱讀

    我家魚缸能感知光!塊樂鑫科技ESP32-S3開發板就能實現環境光監測!代碼開源!啟明云端樂鑫代理

    科技ESP32-S3開發板,我竟在家實現了魚缸水質監測自由?!代碼開源!啟明云端樂鑫代理本期我們將聚焦于植物生長的關鍵要素——光照,進步開發智能環境光監測功能。植物健康生長離
    的頭像 發表于 11-26 18:04 ?359次閱讀
    我家魚缸能感知光!<b class='flag-5'>一</b>塊樂鑫科技<b class='flag-5'>ESP32-S3</b>開發板就能實現環境光監測!代碼開源!<b class='flag-5'>啟明</b><b class='flag-5'>云端</b>樂鑫代理

    ESP32-S3

    學習ESP32-S3 ,推薦使用什么IDE,學習資料般咋哪找
    發表于 11-13 10:56

    低成本開源!用樂鑫科技ESP32-S3開發板輕松驅動無刷電機,保姆級教程來了!

    ESP32S3NANO控制電機即可自動獲取ESP32-S3NANO開發板驅動無刷電機源代碼百度盤鏈接!硬件準備本次我們采用啟明云端自研
    的頭像 發表于 11-06 18:03 ?805次閱讀
    低成本開源!用樂鑫科技<b class='flag-5'>ESP32-S3</b>開發板輕松驅動無刷電機,保姆級教程來了!

    樂鑫科技ESP32-S3開發板單色LED,竟能玩出這么多花樣!代碼開源,速來白嫖!

    從閃爍到呼吸,從流水到追逐,文掌握所有LED特效技巧本文將帶領大家從零開始,使用ESP32-S3開發板實現多種單色LED效果控制。無論你是剛入門的小白,還是有定經驗的開發者,都能輕松復刻這些炫酷
    的頭像 發表于 10-23 18:02 ?2198次閱讀
    樂鑫科技<b class='flag-5'>ESP32-S3</b>開發板<b class='flag-5'>配</b>單色LED,竟能玩出這么多花樣!代碼開源,速來白嫖!

    ESP32-S3的MicroPython開發環境搭建

    本文通過搭建Thonny IDE開發環境,了解了如何給ESP32-S3燒錄MircoPython固件和MircoPython應用程序。
    的頭像 發表于 09-11 16:02 ?1629次閱讀
    <b class='flag-5'>ESP32-S3</b>的MicroPython開發環境搭建

    【新品】ESP32-S3-NORA模組自帶Wi-Fi/BLE,板載陶瓷天線

    啟明云端新品發布WT0132S3-NORA模組,這款模組不僅繼承了樂鑫科技ESP32-S3芯片的卓越性能,更在連接穩定性、安全性和適用性方面實現了全面突破。性能猛獸,雙核狂飆搭載樂鑫
    的頭像 發表于 09-10 18:03 ?1273次閱讀
    【新品】<b class='flag-5'>ESP32-S3</b>-NORA模組自帶Wi-Fi/BLE,板載陶瓷天線

    樂鑫ESP32-S3專為AIoT設計,強化邊緣AI應用方向

    電子發燒友報道(文/李彎彎)樂鑫在最新的財報中表示,公司ESP32-S系列自ESP32-S3芯片開始,強化了邊緣AI方向的應用。ESP32-S3芯片增加了用于加速神經網絡計算和信號處
    的頭像 發表于 09-09 09:20 ?7433次閱讀
    樂鑫<b class='flag-5'>ESP32-S3</b>專為AIoT設計,強化邊緣AI應用方向

    啟明云端ESP32-S3 2.8寸串口屏到手了?如何上手?看這篇!

    【場外插播】ESP32-S32.8寸串口屏、MX1.25-7P線、MX1.25-8P線我們都帶來了,開箱展示如下【競猜繼續】ESP32-S32.8寸串口屏到手還不知道如何上手點屏?不要擔心,我們的上手指南來了!
    的頭像 發表于 07-07 18:04 ?928次閱讀
    <b class='flag-5'>啟明</b><b class='flag-5'>云端</b><b class='flag-5'>ESP32-S3</b> 2.8寸串口屏到手了?如何上手?看這篇!

    ESP8266燒錄與機智云一鍵教程

    ESP8266模塊因其低成本和高性能,廣泛應用于智能家居和工業自動化等領域。機智云平臺提供了一鍵功能,簡化了設備的聯網過程。本教程將詳細介紹如何使用
    的頭像 發表于 05-24 11:04 ?1985次閱讀
    <b class='flag-5'>ESP</b>8266燒錄與機智云<b class='flag-5'>一鍵</b><b class='flag-5'>配</b><b class='flag-5'>網</b>教程