WiFi站點(Station)和接入點(Access Point)
WiFi是由無線接入點AP(Access Point) 、站點(Station)等組成的無線網絡。 Station (STA)是指每個連接到無線網絡中的終端; 接入點 (AP)是無線網絡的創(chuàng)建者,是網絡的中心節(jié)點
ESP8266模組支持STA、AP、STA+AP三種工作模式
- STA模式:ESP8266模塊通過路由器連接互聯網,PC或手機通過互聯網實現對設備的遠程控制
- AP模式:ESP8266模塊作為熱點,PC或手機直接與模塊通訊,實現局域網無線控制
- STA+AP模式:兩種模式的共存,既可以通過路由器連接到互聯網,通過互聯網控制設備; 也可以作為WiFi熱點,供其他WiFi設備連接。 實現了局域網和廣域網的無縫切換
下面將介紹如何使用ESP8266 SDK開發(fā)WiFi的Station和AP連接
1. Station連接
WiFi Station入網流程如下圖示:
實現步驟如下:
在ESP8266_RTOS_SDK目錄下新建station文件夾,把LED燈實驗中的led目錄下所有文件拷貝到該文件夾中
使用Source Insight編輯器,編輯和瀏覽代碼; 新建工程,并將station和include文件夾下的文件添加到工程中; 在led燈程序基礎上,在user_main.c文件中的user_init()函數下添加如下代碼
user_init(void)
{
printf("SDK version:%s\\n", system_get_sdk_version());
Led_init();
wifi_set_opmode(STATION_MODE); //配置WiFi為Station模式
struct station_config *config = (struct station_config *)
zalloc(sizeof(struct station_config));//動態(tài)的分配內存空間
sprintf(config->ssid,SSID);
sprintf(config->password,PASSWORD);
wifi_station_set_config(config); //配置設置到寄存器里面
free(config); //釋放動態(tài)分配的內存
wifi_station_set_auto_connect(TRUE);//啟動wifi的一鍵連接
xTaskCreate(ATaskLed, "LED", 256, NULL, 2, NULL);
}
回到ESP8266編譯器中,在station文件夾下,運行gen_misc.sh文件,依次確認配置(Y/1/2/3/4),編譯完成后,燒寫bin文件到ESP8266
打開串口助手,模組復位后,串口輸出相關信息后,模塊顯示連接到無線網絡中,并獲取到路由分配的IP
2. AP連接
WiFi AP入網流程如下圖示:
實現步驟如下:
在ESP8266_RTOS_SDK目錄下新建ap文件夾,把LED燈實驗中的led目錄下所有文件拷貝到該文件夾中
使用Source Insight編輯器,編輯和瀏覽代碼; 新建工程,并將ap和include文件夾下的文件添加到工程中; 在led燈程序基礎上,在user_main.c文件中的user_init()函數下添加如下代碼
user_init(void)
{
printf("SDK version:%s\\n", system_get_sdk_version());
Led_init();
wifi_set_opmode(SOFTAP_MODE); //設置為AP模式
struct softap_config *config = (struct softap_config *)
zalloc(sizeof(struct softap_config));
wifi_softap_get_config(config); //獲取當前參數
sprintf(config->ssid,SSID); //傳入自己定義的網絡名稱
sprintf(config->password,PASSWORD); //傳入自己定義的網絡密碼
config->authmode = AUTH_WPA_WPA2_PSK;//授權加密方式
//設置網絡名稱長度為0,表示網絡名稱字符串中遇到'\\0'時結束
config->ssid_len = 0;
config->max_connection = 4; //設置最大連接數
wifi_softap_set_config(config); //設置到寄存器
free(config); //釋放動態(tài)存儲
xTaskCreate(ATaskLed, "LED", 256, NULL, 2, NULL);
}
回到ESP8266編譯器中,在ap文件夾下,運行gen_misc.sh文件,依次確認配置(Y/1/2/3/4),編譯完成后,燒寫bin文件到ESP8266
燒寫bin文件到ESP8266后,打開串口助手,模組復位后,串口輸出相關信息,用手機連接AP,獲取到AP分配的地址
-
無線網絡
+關注
關注
6文章
1462瀏覽量
66605 -
WIFI
+關注
關注
81文章
5370瀏覽量
207353 -
編譯器
+關注
關注
1文章
1654瀏覽量
49844 -
SDK
+關注
關注
3文章
1063瀏覽量
47631 -
ESP8266
+關注
關注
51文章
964瀏覽量
46822
發(fā)布評論請先 登錄
ESP8266緩存AP后,是否會自動連接到任何緩存的AP?
ESP8266EX連接到WIFI AP時,是否需要執(zhí)行一些特殊程序?
esp8266 AP STA連接丟失的原因?
WIFI_AP_STA軟AP只有STATION連接時才工作是為何?
ESP8266_SDK_User_Manual_Version 1.4
ESP8266中文版SDK編程手冊
esp8266,tcp通信實例詳解

ESP8266 SDK開發(fā)環(huán)境搭建初級教程

基于ESP8266芯片方案的WIFI開發(fā)板的詳細介紹和使用說明資料概述

ESP8266(NodeMCU)無線終端模式連接WiFi

ESP8266 wifi模塊開發(fā)匯總

ESP8266連接手機

使用ESP8266-01制作WIFI遙控小車(一)

評論