使用NodeMCU無線終端模式連接WiFi,並在串口打印出相關信息。ESP8266有三種工作模式,分別爲:AP,STA,AP混合STA,下面簡單說一下這三種工作模式:
AP模式
AP是 Access Point的簡稱,提供無線接入服務,提供數據訪問,允許其它無線終端接入,簡單來說就是和路由器在多數情況下的工作模式相同,能讓手機或者接入。
STA模式
STA是Station的簡稱,類似於無線終端,STA本身並不接受無線的接入,它可以連接到AP,簡單來說就是和手機連接WIFI熱點的工作狀態相同,可以連接其它的熱點(手機或者路由器)。
AP混合STA模式
AP混合STA模式就是既可以連接到其它的WIFI熱點,也可以讓別的無線終端連接,這兩個過程能同時進行。
程序:
/*
NodeMCU無線終端模式連接WiFi
本示例程序用於演示如何使用NodeMCU無線終端模式連接WiFi
*/
#include <ESP8266WiFi.h> // 本程序使用ESP8266WiFi庫
const char* ssid = "tsy_B5AC58"; // 連接WiFi名(此處使用tsy_B5AC58爲示例)
// 請將您需要連接的WiFi名填入引號中
const char* password = "12345678"; // 連接WiFi密碼(此處使用12345678爲示例)
// 請將您需要連接的WiFi密碼填入引號中
void setup() {
Serial.begin(9600); // 啓動串口通訊
WiFi.begin(ssid, password); // 啓動網絡連接
Serial.print("Connecting to "); // 串口監視器輸出網絡連接信息
Serial.print(ssid); Serial.println(" ..."); // 告知用戶NodeMCU正在嘗試WiFi連接
int i = 0; // 這一段程序語句用於檢查WiFi是否連接成功
while (WiFi.status() != WL_CONNECTED) { // WiFi.status()函數的返回值是由NodeMCU的WiFi連接狀態所決定的。
delay(1000); // 如果WiFi連接成功則返回值爲WL_CONNECTED
Serial.print(i++); Serial.print(' '); // 此處通過While循環讓NodeMCU每隔一秒鐘檢查一次WiFi.status()函數返回值
} // 同時NodeMCU將通過串口監視器輸出連接時長讀秒。
// 這個讀秒是通過變量i每隔一秒自加1來實現的。
Serial.println(""); // WiFi連接成功後
Serial.println("Connection established!"); // NodeMCU將通過串口監視器輸出"連接成功"信息。
Serial.print("IP address: "); // 同時還將輸出NodeMCU的IP地址。這一功能是通過調用
Serial.println(WiFi.localIP()); // WiFi.localIP()函數來實現的。該函數的返回值即NodeMCU的IP地址。
}
void loop() {
}
串口效果(IP 地址使用你們自己的進行連通性測試):
連通性測試(ping +ip地址):
通信正常。