Sadržaj:

ESP8266 i ESP32 sa WiFiManagerom: 10 koraka
ESP8266 i ESP32 sa WiFiManagerom: 10 koraka

Video: ESP8266 i ESP32 sa WiFiManagerom: 10 koraka

Video: ESP8266 i ESP32 sa WiFiManagerom: 10 koraka
Video: Глушилка спаммер на ESP8266 карманный вай-фай джаммер Wi-fi hacking ESP server jammer 2024, Juli
Anonim
Image
Image
PINOUT
PINOUT

Jeste li upoznati sa WiFiManagerom? To je biblioteka koja služi kao upravitelj bežične veze, a s njom imamo lakši način konfiguriranja i pristupne točke i stanice. Primio sam nekoliko prijedloga za raspravu o ovoj temi; pa ću vam danas predstaviti ovu biblioteku i njene funkcije. Takođe ću demonstrirati njegovu upotrebu sa ESP32 i ESP8266.

Korak 1: PINOUT

PINOUT
PINOUT

Ovdje pokazujem PINOUT dva uređaja koja ćemo koristiti:

  • NodeMCU ESP-12E
  • NodeMCU ESP-WROOM-32

Korak 2: WiFiManager

WiFiManager zapravo nije ništa drugo do biblioteka napisana na vrhu WiFi.h za jednostavno upravljanje bežičnim vezama. Upamtite da s njim imamo veće mogućnosti za konfiguriranje i pristupne tačke i stanice. Za način rada stanice konfiguriramo putem portala u pregledniku.

Neke karakteristike:

• Ovisi o automatskom povezivanju

• Inicijalizacija portala za neautomatsku konfiguraciju

• Radi selektivno u dvostrukom načinu rada

Korak 3: Kako to funkcionira

Kako radi
Kako radi
Kako radi
Kako radi

ESP će pokrenuti WiFi konfiguracijski portal kada je povezan i spremit će podatke o konfiguraciji u trajnu memoriju. Nakon toga, konfiguracijski portal će se ponovo pokrenuti samo ako se pritisne dugme u ESP modulu.

Ovdje možete provjeriti tijek konfiguracije i slijediti ovaj korak po korak:

1. Pomoću bilo kojeg uređaja s preglednikom koji podržava WiFi povežite se s novonastalom pristupnom točkom i unesite adresu 192.168.4.1.

2. Na ekranu ćete imati dvije mogućnosti povezivanja na postojeću mrežu:

• Konfigurirajte WiFi

• Konfigurirajte WiFi (bez skeniranja)

3. Odaberite jednu od mreža i unesite lozinku (ako je potrebno). Zatim spremite i pričekajte da se ESP ponovno pokrene.

4. Na kraju pokretanja, ESP se pokušava povezati sa sačuvanom mrežom. Ako to ne možete učiniti, omogućit ćete pristupnu točku.

Korak 4: Biblioteke

Biblioteke
Biblioteke

Dodajte biblioteku "WifiManager-ESP32".

Idite na https://github.com/zhouhan0126/WIFIMANAGER-ESP32 i preuzmite biblioteku.

Raspakirajte datoteku i zalijepite je u mapu biblioteke Arduino IDE -a.

C: / Programske datoteke (x86) / Arduino / biblioteke

Dodajte biblioteku "DNSServer-ESP32".

Idite na https://github.com/zhouhan0126/DNSServer---esp32 vezu i preuzmite biblioteku.

Raspakirajte datoteku i zalijepite je u mapu biblioteke Arduino IDE -a.

C: / Programske datoteke (x86) / Arduino / biblioteke

Dodajte biblioteku "WebServer-ESP32".

Idite na https://github.com/zhouhan0126/WebServer-esp32 vezu i preuzmite biblioteku.

Raspakirajte datoteku i zalijepite je u mapu biblioteke Arduino IDE -a.

C: / Programske datoteke (x86) / Arduino / biblioteke

Bilješka:

Biblioteka WiFiManager-ESP32 već ima postavke koje rade s ESP8266, pa ćemo koristiti samo ovo, umjesto dva WiFiManager liba (po jedan za svaku vrstu čipa).

Kao što ćemo vidjeti kasnije, ESP8266WiFi i ESP8266WebServer su biblioteke koje ne moramo preuzimati, jer već dolaze kada instaliramo ESP8266 u Arduino IDE.

Korak 5: Funkcije

Funkcije
Funkcije
Funkcije
Funkcije
Funkcije
Funkcije

Evo nekoliko funkcija koje nam nudi WiFiManager.

1. autoConnect

Funkcija autoConnect odgovorna je za kreiranje pristupne tačke. Možemo ga koristiti na tri načina.

• autoConnect ("naziv mreže", "lozinka"); - stvara mrežu s definiranim imenom i lozinkom.

• autoConnect ("naziv mreže"); - stvara otvorenu mrežu s definiranim imenom.

• autoConnect (); - stvara otvorenu i automatski imenovanu mrežu s imenom 'ESP' + chipID.

2. startConfigPortal

Funkcija startConfigPortal odgovorna je za kreiranje pristupne tačke bez pokušaja povezivanja na prethodno sačuvanu mrežu.

• startConfigPortal ("naziv mreže", "lozinka"); - stvara mrežu s definiranim imenom i lozinkom.

• startConfigPortal (); - stvara otvorenu i automatski imenovanu mrežu s imenom 'ESP' + chipID.

3. getConfigPortalSSID

Vraća SSID portala (pristupna točka)

4. getSSID

Ovo vraća SSID mreže na koju je povezana.

5. getPassword

Ovo vraća lozinku mreže na koju je povezana.

6. setDebugOutput

Funkcija setDebugOutput je odgovorna za štampanje poruka za otklanjanje grešaka na serijskom monitoru. Ove poruke su već definirane u biblioteci. Dok prolazite kroz funkcije, podaci će se ispisivati.

Prema zadanim postavkama, ova funkcija je postavljena na TRUE. Ako želite onemogućiti poruke, jednostavno postavite funkciju na FALSE.

7. setMinimumSignalQuality

Funkcija setMinimumSignalQuality odgovorna je za filtriranje mreža na osnovu kvalitete signala. Prema zadanim postavkama, WiFiManager neće prikazivati mreže za prijavu ispod 8%.

8. setRemoveDuplicateAPs

Funkcija setRemoveDuplicateAPs odgovorna je za uklanjanje mrežnih duplikata.

Podrazumevano je postavljeno na TRUE.

9. setAPStaticIPConfig

Funkcija setAPStaticIPConfig odgovorna je za postavljanje postavki statičke adrese u načinu pristupne točke.

(IP, GATEWAY, SUBNET)

10. setSTAStaticIPConfig

Funkcija setSTAStaticIPConfig odgovorna je za postavljanje postavki statičke adrese u načinu rada stanice.

(IP, GATEWAY, SUBNET)

Morate dodati naredbu prije automatskog povezivanja !!!

11. setAPCallback

Funkcija setAPCallback odgovorna je za obavještavanje vas da je AP način rada pokrenut.

Parametar je funkcija koja se mora kreirati da bi se označila kao povratni poziv;

12. setSaveConfigCallback

Funkcija setSaveConfigCallback odgovorna je za obavještavanje vas da je nova konfiguracija spremljena i da je veza uspješno završena.

Parametar je funkcija za stvaranje i označava to kao allback.

Morate dodati naredbu prije automatskog povezivanja !!!

Korak 6: Montaža

Montaža
Montaža

Primjer

U našem primjeru stvorit ćemo pristupnu točku s ESP -om (kôd će služiti i ESP8266 i ESP32). Nakon kreiranja pristupne tačke pristupit ćemo portalu putem IP 192.168.4.1 (koji mu je zadani pristup). Dakle, nabavimo dostupne mreže, odaberite jednu i spremite. Od tada će se ESP ponovno pokrenuti i pokušati povezati s njim, a zatim će raditi kao stanica, a ne više kao pristupna točka.

Nakon ulaska u način rada stanice, možete učiniti da se ESP vrati u način pristupne tačke samo pomoću dugmeta.

Korak 7: Kodirajte

Biblioteke

Prvo definirajmo biblioteke koje ćemo koristiti.

Imajte na umu da imamo #if definirane, #else i #endif naredbe. Oni su uslovljeni uključivanjem neophodnih biblioteka koje se odnose na čip. Ovaj dio je izuzetno važan za pokretanje istog koda i na ESP8266 i na ESP32.

#if definirano (ESP8266)

#include // ESP8266 Core WiFi biblioteka #else #include // ESP32 Core WiFi biblioteka #endif

#if definirano (ESP8266)

#include // Lokalni WebServer koji se koristi za posluživanje konfiguracijskog portala

#else

#include // Lokalni DNS poslužitelj koji se koristi za preusmjeravanje svih zahtjeva na konfiguracijski portal (https://github.com/zhouhan0126/DNSServer---esp32)

#endif

#include // Lokalni WebServer koji je služio za opsluživanje konfiguracijskog portala (https://github.com/zhouhan0126/DNSServer---esp32) #include // WiFi konfiguracijska magija (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (ORIGINAL)

Korak 8: Postavljanje

Prilikom postavljanja konfiguriramo naš WiFiManager na najjednostavniji način. Definirajmo povratne pozive i kreirajmo mrežu.

const int PIN_AP = 2;

void setup () {Serial.begin (9600); pinMode (PIN_AP, INPUT); // deklarira da objekti wifiManager WiFiManager wifiManager;

// koristi esse comando, kao konfiguracije s apagadas da memória // caso tiver salvo alguma rede para conectar automaticamente, ela é apagada. // wifiManager.resetSettings (); // povratni poziv za ulazak u način rada za konfiguraciju AP wifiManager.setAPCallback (configModeCallback); // povratni poziv za slučaj da se povežete sa uma rede, ou seja, quando passa a trabalhar em modo estação wifiManager.setSaveConfigCallback (saveConfigCallback); // cria uma rede de nome ESP_AP com senha 12345678 wifiManager.autoConnect ("ESP_AP", "12345678"); }

Korak 9: Petlja

U petlji ćemo čitati pin dugmeta da vidimo da li je pritisnut, a zatim ćemo pozvati metodu za ponovno omogućavanje AP režima.

void loop () {{100} {101}

WiFiManager wifiManager; // se o botão foi pressiodo if (digitalRead (PIN_AP) == HIGH) {Serial.println ("resetar"); // preusmjeravanje na portal if (! wifiManager.startConfigPortal ("ESP_AP", "12345678")) {Serial.println ("Falha ao conectar"); kašnjenje (2000); ESP.restart (); kašnjenje (1000); } Serial.println ("Conectou ESP_AP !!!"); }

Kada pritisnete gumb, ESP će izaći iz načina rada stanice i otvoriti vašu pristupnu točku i portal.

Upamtite da ne koristimo naredbu resetSettings (). Postavke se i dalje spremaju pri sljedećem pokretanju ESP -a.

Korak 10: Povratni poziv

Funkcije povratnog poziva, koje su povezane s događajima, služe vam za točan trenutak operacije, u našem slučaju ulaska u način rada AP i način rada stanice. Tada možemo implementirati neku željenu rutinu, poput preuzimanja SSID -a sa povezane mreže, na primjer.

// povratni poziv indikator čekanja o ESP entrou bez modo AP -a

void configModeCallback (WiFiManager *myWiFiManager) {// Serial.println ("Unesen način konfiguracije"); Serial.println ("Entrou no modo de configuração"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP Serial.println (myWiFiManager-> getConfigPortalSSID ()); // imprime o SSID -u da se rede

}

// povratni poziv que indica que salvamos uma nova rede para se conectar (modo estação)

void saveConfigCallback () {// Serial.println ("Treba sačuvati konfiguraciju"); Serial.println ("Configuração salva"); Serial.println (WiFi.softAPIP ()); // imprime o IP do AP}

Preporučuje se: