ESP32連上無線基地台(AP)並獲取AP資訊
ESP32連上無線基地台(AP)
實驗說明:
用 ESP32內建Wi-Fi連到基地台,程式使用while()迴圈
並以WiFi.staus()判斷是否已連線,如果正在連線,會印出
".",如回傳為否,每隔0.5秒會再進入回迴圈掃描附近
配對的基地台,直到連線成功為跳出迴圈並印出"已連線
成功"字樣。
連線中
已連線
程式碼
#include <WiFi.h> ———套用WiFi庫
const char *ssid = "基地台名稱";
const char *password = "基地台密碼";
void setup(){
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED){ ———判斷是否已連線
delay(500);
Serial.print(".");
}
Serial.println("已連線到Wi-Fi基地台");
}
void loop(){
}
獲取AP資訊
相關函式請參閱-ESP32函式筆記本
基本上和上面程式碼一樣,只是多套用了取得網路相關的資訊
,每個能連上網路的設備都會有這些相關訊息,例如電腦,在
終諯機輸入ipconfig就會出現下圖:
那麼ESP32同樣可做為網路設備來說也是會有這些資訊將程式碼上傳後即會取得相關的資訊
#include <WiFi.h>
const char *ssid = "基地台名稱";
const char *password = "基地台密碼";
void setup(){
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println("已連上WiFi");
Serial.print("我的IP位址");
Serial.println(WiFi.localIP());
Serial.print("子遮罩網路: ");
Serial.println(WiFi.subnetMask());
Serial.print("閘道網路: ");
Serial.println(WiFi.gatewayIP());
Serial.print("DNS位址: ");
Serial.println(WiFi.dnsIP());
}
void loop(){
}
留言
張貼留言