RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SoftAP模式簡介 SoftAP配網(wǎng)步驟詳細(xì)說明

嵌入式技術(shù) ? 來源:嵌入式技術(shù) ? 作者:嵌入式技術(shù) ? 2022-05-30 09:05 ? 次閱讀

Wi-Fi 配網(wǎng),指由外部向 Wi-Fi 設(shè)備提供 SSID 和密碼(PSW),讓 Wi-Fi 設(shè)備可以連接指定的熱點(diǎn)或路由器,并加入后者所建立的 Wi-Fi 網(wǎng)絡(luò)
對于具備豐富人機(jī)界面包括屏幕/鍵盤的設(shè)備,例如電腦手機(jī),可以直接輸入 SSID/PSW 進(jìn)行連接。
對于不具備豐富人機(jī)交互界面的物聯(lián)網(wǎng) Wi-Fi 設(shè)備,例如智能燈、掃地機(jī)器人等,則可以借助手機(jī)等智能設(shè)備,以某種配網(wǎng)方式將 SSID/PSW 傳遞該設(shè)備。

1. SoftAP模式簡介

設(shè)備備通過 softAP 方式創(chuàng)建一個(gè) Wi-Fi 熱點(diǎn),手機(jī)連接該熱點(diǎn),再通過數(shù)據(jù)通道例如 TCP/UDP 通訊,將目標(biāo) Wi-Fi 路由器的 SSID/PSW 傳遞該設(shè)備,設(shè)備獲取后,即可連接 Wi-Fi 路由器從而連接互聯(lián)網(wǎng)。同時(shí),為了對設(shè)備進(jìn)行綁定,手機(jī) App 可以利用該 TCP/UDP 數(shù)據(jù)通道,將后臺提供的配網(wǎng) Token 發(fā)送給設(shè)備,并由設(shè)備轉(zhuǎn)發(fā)至物聯(lián)網(wǎng)后臺,依據(jù) Token 可以進(jìn)行設(shè)備綁定。本文檔主要指導(dǎo)您如何使用softAP 方式配網(wǎng)開發(fā)。

2.SoftAP配網(wǎng)步驟

1.騰訊連連小程序進(jìn)入配網(wǎng)模式后,則可以在物聯(lián)網(wǎng)開發(fā)平臺服務(wù)獲取到當(dāng)次配網(wǎng)的 Token。

2.配置WiFi 模式位softAP 配網(wǎng)模式。

3.小程序按照提示依次獲取 Wi-Fi 列表,輸入家里目標(biāo)路由器的 SSID/PSW,再選擇設(shè)備 softAP 熱點(diǎn)的 SSID/PSW。

4.手機(jī)連接設(shè)備 softAP 熱點(diǎn)成功后,小程序作為 UDP 客戶端會連接 Wi-Fi 設(shè)備上面的 UDP 服務(wù)(默認(rèn) IP 為192.168.4.1端口8266)。

5.小程序給設(shè)備 UDP 服務(wù),發(fā)送目標(biāo) Wi-Fi 路由器的 SSID/PSW 以及配網(wǎng) Token。

6.如果2秒之內(nèi),未收到設(shè)備回復(fù),則重復(fù)步驟5,UDP 客戶端重復(fù)發(fā)送目標(biāo) Wi-Fi 路由器的 SSID/PSW 及配網(wǎng) Token。(如果重復(fù)發(fā)送5次,都沒有收到回復(fù),則認(rèn)為配網(wǎng)失敗,Wi-Fi 設(shè)備有異常)

7.如果步驟5收到設(shè)備回復(fù),則說明設(shè)備端已收到 Wi-Fi 路由器的 SSID/PSW 及 Token,正在連接 Wi-Fi 路由器,并上報(bào) Token。此時(shí)小程序會提示手機(jī)也將連接 Wi-Fi 路由器,并通過 Token 輪詢物聯(lián)網(wǎng)后臺,來確認(rèn)配網(wǎng)及設(shè)備綁定是否成功。

7.設(shè)備端在成功連接 Wi-Fi 路由器后,需要通過 MQTT 連接物聯(lián)網(wǎng)后臺,并將小程序發(fā)送的配網(wǎng) Token。

3.硬件設(shè)置與WIFI接入

1.登錄騰訊云平臺,進(jìn)入交互開發(fā),選擇配網(wǎng)引導(dǎo)。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

2.選擇配網(wǎng)方式為AirKiss協(xié)議配網(wǎng)。點(diǎn)保存后即可生成二維碼。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_centerwatermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

3.微信小程序daunt配網(wǎng)引導(dǎo)。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

4.開始配網(wǎng),配置熱點(diǎn)信息。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

5.開始配網(wǎng),等待配網(wǎng)完成。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

? 6. 配網(wǎng)調(diào)試信息

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDQ1MzY5NA==,size_16,color_FFFFFF,t_70#pic_center

4.程序設(shè)計(jì)

softAP模式配置

/*SoftAP配網(wǎng)*/
u8 ESP8266_SoftAP_MOde(void)
{
    u8 token[]="{"cmdType":2,"productId":"LA57WTHWi2","deviceName":"Smart_123","protoVersion":"2.0"}rn";//連接狀態(tài)信息
    char *p=NULL;
    char data[256];
    char buff[100];
    u8 i=0;
    u32 time1=0,time2=0;
    usart3_cnt=0;
    usart3_flag=0;
    while(1)
    {
        if(usart3_flag)
        {
            usart3_rx_buff[usart3_cnt]='?';
            printf("rx=%s",usart3_rx_buff);
            //+IPD,97,192.168.4.2,52021:{"cmdType":1,"ssid":"wbyq_wifi","password":"12345678","token":"df4a4c90abee98c9a443ae8ffd8cc16b"
            p=strstr((char *)usart3_rx_buff,"+IPD");
            if(p)
            {
                strcpy(data,p);//將接收到的數(shù)據(jù)拷貝一份保存
                p+=strlen("+IPD");
                p+=1;
                while(*p!=',' && *p!='?')p++;
                p++;//跳過字符',',獲取到IP地址起始位置
                i=0;
                //IP地址解析
                while(*p!=',' && *p!='?')
                {
                   buff[i++]=*p++;
                }
                buff[i]='?';
                strcpy((char *)esp8266_info.esp8266_ip,buff);
                //端口號解析
                p++;
                i=0;
                while(*p!=':' && *p!='?')
                {
                   buff[i++]=*p++; 
                }
                buff[i]='?';
                esp8266_info.esp8266_prot=atoi(buff);//字符串轉(zhuǎn)整數(shù)
                //printf("ip=%s:%drn",esp8266_info.esp8266_ip,esp8266_info.esp8266_prot);
                printf("ret:%drn",Esp8266_UDP_SendData((u8*)esp8266_info.esp8266_ip,esp8266_info.esp8266_prot,token));//上報(bào)連接狀態(tài)
            }
           ESP8266_GetData(data,(char *)esp8266_info.esp8266_name,"ssid");//WIFI名
           ESP8266_GetData(data,(char *)esp8266_info.esp8266_key,"password");//密碼
           ESP8266_GetData(data,(char *)esp8266_info.token,"token");//token數(shù)據(jù),需要返回給平臺
//           printf("wifi_name:%srn",esp8266_info.esp8266_name);
//           printf("wifi_key:%srn",esp8266_info.esp8266_key); 
//           printf("wifi_token:%srn",esp8266_info.token);            
           LED1=1;
           return 0;
        }
        Delay_Ms(1);
        time1++;
        time2++;
        if(time2>=100)
        {
           time2=0;
           LED1=!LED1;
        }  
        if(time1>=1000*300)
        {
            LED1=1;
            break;//超時(shí)退出
        }
    }
    return 1;
}

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2909

    文章

    44557

    瀏覽量

    372750
  • WIFI
    +關(guān)注

    關(guān)注

    81

    文章

    5296

    瀏覽量

    203565
收藏 人收藏

    評論

    相關(guān)推薦

    sram 512k實(shí)現(xiàn)softAP網(wǎng),wifi報(bào)錯的原因?

    采用的是安信可的模塊,sram 512k 程序主要實(shí)現(xiàn)了softAP 網(wǎng),藍(lán)牙gatt server和gatt client,及wifi tcp socket通信 一般運(yùn)行12小時(shí)左右,就會持續(xù)
    發(fā)表于 06-06 06:53

    ESPConfig藍(lán)牙網(wǎng)失敗的原因?如何解決?

    ,小程序截圖如附件所示 求助: 小程序顯示了SoftAP模式網(wǎng)失敗是否由此產(chǎn)生,我該如何切換為STA模式 錯誤信息.png (59
    發(fā)表于 06-11 08:57

    請問ESP32-WROVER-B用作BLE4.2 + Station + SoftAP這種工作模式是否可以共存?

    作為Station進(jìn)行網(wǎng)網(wǎng)失敗3次后轉(zhuǎn)為SoftAP熱點(diǎn)進(jìn)行
    發(fā)表于 07-02 06:18

    ESP8266如何一次使用更多softAP?

    我想一次激活更多ESP8266到 softAP 模式。我發(fā)現(xiàn),只有第一個(gè)激活的 softAP ESP8266才能在無線連接列表中可見。其他人在切換到 SoftAP
    發(fā)表于 07-16 06:47

    ESP-01使固件在SOFTAP STA模式下運(yùn)行遇到的疑問求解

    環(huán)境: 1. ESP-01 模塊 2. SDK開發(fā)包1.2.0版本 3. iPhone 6 和 MacbookPro 作為 wifi 客戶端 我們使固件在 SOFTAP STA 模式下運(yùn)行,其中
    發(fā)表于 07-18 07:53

    ESP8266固件升級,SoftAp 網(wǎng)模式下,支持全球升級

    GAgent 樂鑫 04020029 版本已經(jīng)發(fā)布到機(jī)智云下載中心changelog:1.增加SoftAp 網(wǎng)模式下,支持全球化;2.優(yōu)化設(shè)備發(fā)目前esp8266含以下功能:1.增加
    發(fā)表于 04-28 14:34

    sram512k實(shí)現(xiàn)softAP網(wǎng),運(yùn)行一段時(shí)間后就會報(bào)錯的原因?怎么處理?

    采用的是安信可的模塊,sram 512k程序主要實(shí)現(xiàn)了softAP 網(wǎng),藍(lán)牙gatt server和gatt client,及wifi tcp socket通信一般運(yùn)行12小時(shí)左右,就會持續(xù)報(bào)錯
    發(fā)表于 02-09 08:28

    請問ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?

    ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?
    發(fā)表于 02-10 06:22

    ESP32-C3是否支持matter協(xié)議? 可以通過softap方式網(wǎng)嗎?

    ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?
    發(fā)表于 03-03 08:12

    請問ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?

    ESP32-C3是否支持matter協(xié)議了? 可以通過softap方式網(wǎng)嗎?
    發(fā)表于 03-08 08:18

    全志XR806基于FreeRTOS的SoftAp網(wǎng)實(shí)現(xiàn)

    SoftAp網(wǎng)。相比于其他三種網(wǎng)方式,SoftAp本人之前用的比較多,就想嘗試基于XR80
    發(fā)表于 11-03 10:32

    使用AD和DXP導(dǎo)出SMT坐標(biāo)文件的步驟詳細(xì)說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用AD和DXP導(dǎo)出SMT坐標(biāo)文件的步驟詳細(xì)說明。
    發(fā)表于 10-15 17:01 ?0次下載
    使用AD和DXP導(dǎo)出SMT坐標(biāo)文件的<b class='flag-5'>步驟</b><b class='flag-5'>詳細(xì)說明</b>

    Cadence SPB 17.4的安裝步驟教程詳細(xì)說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是Cadence SPB 17.4的安裝步驟教程詳細(xì)說明。
    發(fā)表于 04-10 08:00 ?0次下載
    Cadence SPB 17.4的安裝<b class='flag-5'>步驟</b>教程<b class='flag-5'>詳細(xì)說明</b>

    使用Keil新建STM32的工程步驟詳細(xì)說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用Keil新建STM32的工程步驟詳細(xì)說明。
    發(fā)表于 06-02 08:00 ?15次下載
    使用Keil新建STM32的工程<b class='flag-5'>步驟</b><b class='flag-5'>詳細(xì)說明</b>

    封裝基板的技術(shù)簡介詳細(xì)說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是封裝基板的技術(shù)簡介詳細(xì)說明包括了:封裝類型與發(fā)展, BGA的分類與基本結(jié)構(gòu), BGA基板的發(fā)展與簡介, BGA封裝的發(fā)展。
    發(fā)表于 07-28 08:00 ?0次下載
    封裝基板的技術(shù)<b class='flag-5'>簡介</b><b class='flag-5'>詳細(xì)說明</b>
    RM新时代网站-首页