Az alábbi példa bemutatja, hogyan konfigurálható az ESP8266, hogy soft hozzáférési pont módban fusson, hogy a Wi-Fi állomások csatlakozhassanak hozzá. A soft-AP által létrehozott Wi-Fi hálózatot a konfiguráció során beállított SSID azonosítja. A hálózatot jelszóval lehet védeni. A hálózat nyitott is lehet, ha a konfiguráció során nincs beállítva jelszó.
A soft-AP beállítása ESP8266-tal pár sornyi kóddal elvégezhető.
#include <ESP8266WiFi.h>
void setup()
{
Serial.begin(115200);
Serial.println();
Serial.print("Setting soft-AP ... ");
boolean result = WiFi.softAP("ESPsoftAP_01", "pass-to-soft-AP");
if(result == true)
{
Serial.println("Ready");
}
else
{
Serial.println("Failed!");
}
}
void loop()
{
Serial.printf("Stations connected = %d\n", WiFi.softAPgetStationNum());
delay(3000);
}
A boolean result = WiFi.softAP("ESPsoftAP_01", "pass-to-soft-AP")
sorban található pass-to-soft-AP
-ot módosítsa valamilyen értelmes jelszóra, és töltse fel a vázlatot. Nyissa meg a soros monitort, és látnia kell:
Setting soft-AP ... Ready
Stations connected = 0
Stations connected = 0
...
Ezután vegye elő mobiltelefonját vagy számítógépét, nyissa meg az elérhető hozzáférési pontok listáját, keresse meg az ESPsoftAP_01
-et, és csatlakozzon hozzá. Ennek tükröződnie kell a soros monitoron új csatlakoztatott állomásként:
Stations connected = 1
Stations connected = 1
...
Ha van egy másik Wi-Fi állomása, csatlakoztassa azt is. Ellenőrizze újra a soros monitort, ahol most két állomást kell jelentenie.
A vázlat kicsi, így az elemzés nem lehet nehéz. Az első sorban az ESP8266WiFi könyvtárat csatoljuk:
#include <ESP8266WiFi.h>
Az ESPsoftAP_01
hozzáférési pont beállítása a következő végrehajtással történik:
cpp boolean result = WiFi.softAP("ESPsoftAP_01", "pass-to-soft-AP");
Ha ez a művelet sikeres, akkor a result
true
lesz, vagy false
lesz, ha nem. Ennek alapján Ready
vagy Failed!
a következő if - else
feltételes utasítással lesz kinyomtatva.
Egyszerűbbé tehetjük ezt a vázlatot? Igen! Megtehetjük az alternatív if - else
utasítás használatával, az alábbiak szerint:
WiFi.softAP("ESPsoftAP_01", "pass-to-soft-AP") ? "Ready" : "Failed!"
Ez az utasítás Ready
vagy Failed!
üzenetet ad vissza! a WiFi.softAP(...)
eredményétől függően. Így jelentősen lerövidíthetjük vázlatunkat anélkül, hogy a funkcionalitáson változtatnánk:
#include <ESP8266WiFi.h>
void setup()
{
Serial.begin(115200);
Serial.println();
Serial.print("Setting soft-AP ... ");
Serial.println(WiFi.softAP("ESPsoftAP_01", "pass-to-soft-AP") ? "Ready" : "Failed!");
}
void loop()
{
Serial.printf("Stations connected = %d\n", WiFi.softAPgetStationNum());
delay(3000);
}
Szerintem ez egy nagyon ügyes kódrészlet. Ha ? :
a feltételes operátor új számodra, javaslom, hogy kezdd el használni és tedd rövidebbre és elegánsabbra a kódodat.
Az ESP8266WiFi könyvtár megkönnyíti az ESP8266 soft hozzáférési ponttá alakítását.
Miután megpróbálta a fenti vázlatot, nézze meg a WiFiAccessPoint.ino webhelyet következő lépésként. Bemutatja, hogyan lehet elérni a soft-AP módban működő ESP-t webböngészőből.
Az ESP modul soft-AP módban történő kezeléséhez szükséges funkciók listáját a Soft Access Point Class dokumentációban találja.
© Copyright 2017, Ivan Grokhotkov Revision 02c1a502. Fordította: Maczák András