ESP8266是一款低成本、低功耗的Wi-Fi模块,因其强大的功能和易于上手的特性,在物联网项目中得到了广泛应用。ESP8266支持多种WiFi模式,包括AP(热点)模式、STA(客户端)模式和软AP/STA混合模式。本文将详细介绍这三种WiFi模式,并给出从AP、STA到软AP/STA切换的教程。
一、AP模式
AP模式,即Access Point(接入点)模式,ESP8266在此模式下可以作为无线接入点,为其他设备提供Wi-Fi连接服务。
1.1 配置AP模式
要在ESP8266上配置AP模式,可以通过AT指令进行设置。以下是一个简单的示例代码:
#include <ESP8266WiFi.h>
void setup() {
Serial.begin(115200);
delay(10);
// 设置AP模式
WiFi.mode(WIFI_AP);
// 设置AP名称和密码
WiFi.softAP("MyESP8266AP", "12345678");
}
void loop() {
// 每隔一段时间打印连接设备数量
Serial.println(WiFi.softAPgetStationNum());
delay(1000);
}
1.2 连接AP模式下的ESP8266
在另一台设备上,如智能手机或电脑,打开无线网络设置,选择“MyESP8266AP”并输入密码“12345678”即可连接到ESP8266的AP。
二、STA模式
STA模式,即Station(客户端)模式,ESP8266在此模式下可以作为无线客户端连接到其他Wi-Fi网络。
2.1 配置STA模式
以下是一个配置STA模式的示例代码:
#include <ESP8266WiFi.h>
void setup() {
Serial.begin(115200);
delay(10);
// 设置STA模式
WiFi.mode(WIFI_STA);
// 设置Wi-Fi名称和密码
WiFi.begin("MyWiFiSSID", "MyWiFiPassword");
}
void loop() {
if (WiFi.status() == WL_CONNECTED) {
Serial.println("已连接到Wi-Fi");
} else {
Serial.println("未连接到Wi-Fi");
}
delay(1000);
}
2.2 连接STA模式下的ESP8266
在另一台设备上,如智能手机或电脑,打开无线网络设置,选择“MyWiFiSSID”并输入密码“MyWiFiPassword”即可连接到ESP8266的Wi-Fi网络。
三、软AP/STA混合模式
软AP/STA混合模式允许ESP8266同时作为AP和STA工作,既可以连接到其他Wi-Fi网络,也可以为其他设备提供Wi-Fi连接服务。
3.1 配置软AP/STA混合模式
以下是一个配置软AP/STA混合模式的示例代码:
#include <ESP8266WiFi.h>
void setup() {
Serial.begin(115200);
delay(10);
// 设置STA模式
WiFi.mode(WIFI_STA);
// 设置Wi-Fi名称和密码
WiFi.begin("MyWiFiSSID", "MyWiFiPassword");
// 等待连接到Wi-Fi
while (WiFi.status() != WL_CONNECTED) {
delay(500);
}
// 设置AP模式
WiFi.mode(WIFI_AP);
// 设置AP名称和密码
WiFi.softAP("MyESP8266AP", "12345678");
}
void loop() {
// 每隔一段时间打印连接设备数量
Serial.println(WiFi.softAPgetStationNum());
delay(1000);
}
3.2 连接软AP/STA混合模式下的ESP8266
在另一台设备上,如智能手机或电脑,打开无线网络设置,选择“MyESP8266AP”并输入密码“12345678”即可连接到ESP8266的AP。
总结
通过本文的介绍,相信您已经对ESP8266的WiFi模式有了更深入的了解。在实际应用中,您可以根据需求选择合适的WiFi模式,让ESP8266发挥出最大的作用。
