Sadržaj:
- Korak 1: Ključne karakteristike
- Korak 2: Usporedba između ESP32, ESP8266 i Arduina R3
- Korak 3: Vrste ESP32
- Korak 4: WiFi NodeMCU-32S ESP-WROOM-32
- Korak 5: Konfiguriranje Arduino IDE -a (Windows)
- Korak 6: WiFi skeniranje
- Korak 7: Kodirajte
- Korak 8: Postavljanje
- Korak 9: Petlja
- Korak 10: Datoteke
Video: Uvod u ESP32: 10 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
U ovom ćemo članku govoriti o ESP32, koji smatram starijim bratom ESP8266. Ovaj mikrokontroler mi se jako sviđa jer ima WiFi. Samo da imate ideju, prije nego što ESP postoji, ako vam je trebao Arduino za WiFi, morali biste potrošiti između 200 i 300 USD za kupnju Wifi adaptera. Adapter za mrežni kabel nije toliko skup, ali za WiFi je uvijek bio i ostao skup. Ali na sreću, Espressif Systems je pokrenuo ESP i rješava nam živote.
Sviđa mi se ESP32 sa ovim formatom koji ima USB port. Ovom NodeMCU shemom je lako manipulirati jer ne treba nikakvu elektroniku. Samo priključite kabel, uključite uređaj i programirajte ga. Radi kao Arduino.
U svakom slučaju, danas ćemo govoriti o općim aspektima ESP32 i o tome kako konfigurirati Arduino IDE za programiranje više uređaja tog tipa. Također ćemo napraviti program koji pretražuje mreže i pokazuje koja je moćnija.
Korak 1: Ključne karakteristike
Čip sa ugrađenim WiFi-jem: standardni 802.11 B / G / N, radi u rasponu od 2.4 do 2.5GHz
Načini rada: Klijent, pristupna tačka, stanica + pristupna tačka
Dvojedrni mikroprocesor Tensilica Xtensa 32-bitni LX6
Podesivi sat od 80MHz do 240MHz
Radni napon: 3,3 VDC
Ima SRAM od 512 KB
Sadrži 448KB ROM -a
Ima vanjsku flash memoriju od 32 MB (4 megabajta)
Maksimalna struja po pinu je 12mA (preporučuje se upotreba 6mA)
Ima 36 GPIO -ova
GPIO -i sa PWM / I2C i SPI funkcijama
Ima Bluetooth v4.2 BR / EDR i BLE (Bluetooth sa niskom potrošnjom energije)
Korak 2: Usporedba između ESP32, ESP8266 i Arduina R3
Korak 3: Vrste ESP32
ESP32 je rođen s puno braće i sestara. Danas koristim prvi s lijeva, Espressif, ali postoji nekoliko marki i tipova, uključujući ugrađeni Oled zaslon. Međutim, razlike su isti čip: Tensilica LX6, 2 Core.
Korak 4: WiFi NodeMCU-32S ESP-WROOM-32
Ovo je dijagram ESP -a koji koristimo u našem sklopu. To je čip koji ima mnogo privlačnosti i snage. To je nekoliko pinova koje odaberete želite li raditi kao digitalni analogni, analogni digitalni ili čak ako vrata rade kao digitalna.
Korak 5: Konfiguriranje Arduino IDE -a (Windows)
Evo kako konfigurirati Arduino IDE tako da možemo kompajlirati za ESP32:
1. Preuzmite datoteke putem veze:
2. Raspakirajte datoteku i kopirajte sadržaj na sljedeću putanju:
C: / Korisnici / [YOUR_USER_NAME] / Dokumenti / Arduino / hardver / espressif / esp32
Napomena: Ako ne postoje direktoriji "espressif" i "esp32", jednostavno ih stvorite normalno.
3. Otvorite direktorij
C: / Korisnici / [YOUR_USER_NAME] / Dokumenti / Arduino / hardver / espressif / esp32 / alati
Pokrenite datoteku "get.exe".
4. Nakon što se "get.exe" završi, uključite ESP32, pričekajte da se upravljački programi instaliraju (ili instalirajte ručno).
Spremni, sada samo odaberite ESP32 ploču u "tools >> board" i sastavite svoj kôd.
Korak 6: WiFi skeniranje
Evo primjera kako potražiti dostupne WiFi mreže u blizini ESP-32, kao i jačinu signala svake od njih. Svakim skeniranjem ćemo također saznati koja mreža ima najbolju jačinu signala.
Korak 7: Kodirajte
Prvo uključimo biblioteku "WiFi.h", bit će nam potrebno omogućiti rad s mrežnom karticom našeg uređaja.
#include "WiFi.h"
Evo dvije varijable koje će se koristiti za spremanje SSID -a (naziva) mreže i jačine signala.
String stringSSID = ""; int strongSignal = -9999;
Korak 8: Postavljanje
U funkciji setup () definirat ćemo WiFi način ponašanja našeg uređaja. U ovom slučaju, budući da je cilj tražiti dostupne mreže, konfigurirat ćemo naš uređaj da radi kao "stanica".
void setup () {// Pokretanje serijskog programa za prijavu na Serial Monitor Serial.begin (115200);
// konfiguriranje načina rada WiFi -a kao stanice WiFi.mode (WIFI_STA); // WIFI_STA je konstanta koja označava način rada stanice
// prekinuti vezu s pristupnom točkom ako je već spojena WiFi.disconnect (); kašnjenje (100);
// Serial.println ("Postavljanje je završeno");}
Korak 9: Petlja
U funkciji loop () tražit ćemo dostupne mreže, a zatim ispisati dnevnik u pronađenim mrežama. Za svaku od ovih mreža napravit ćemo usporedbu kako bismo pronašli onu s najvećom snagom signala.
void loop () {// Serial.println ("početak skeniranja"); // vrši skeniranje dostupnih mreža
int n = WiFi.scanNetworks ();
Serial.println ("Skeniranje izvršeno");
// provjeravamo jeste li pronašli bilo koju mrežu if (n == 0) {Serial.println ("Nije pronađena mreža"); } else {networkSSID = ""; snaga signala = -9999; Serial.print (n); Serial.println ("pronađene mreže / n"); for (int i = 0; i <n; ++ i) {// ispisati na serijskom monitoru svaku od pronađenih mreža Serial.print ("SSID:"); Serial.println (WiFi. SSID (i)); // naziv mreže (ssid) Serial.print ("SIGNAL:"); Serial.print (WiFi. RSSI (i)); // jačina signala Serial.print ("\ t / tCHANNEL:"); Serial.print ((int) WiFi.channel (i)); Serial.print ("\ t / tMAC:"); Serial.print (WiFi. BSSIDstr (i)); Serial.println ("\ n / n"); if (abs (WiFi. RSSI (i)) <abs (strongSignal)) {strongSignal = WiFi. RSSI (i); networkSSID = WiFi. SSID (i); Serial.print ("MREŽA SA NAJBOLJIM NAĐENIM SIGNALOM: ("); Serial.print (networkSSID); Serial.print (") - SIGNAL: ("); Serial.print (strongSignal); Serial.println (")"); } kašnjenje (10); }} Serial.println ("\ n ----------------------------------------- ------------------------------------------- / n ");
// interval od 5 sekundi za izvođenje nove odgode skeniranja (5000); }
"Ako (abs (WiFi. RSSI (i))"
Imajte na umu da u gornjoj naredbi koristimo abs (), ova funkcija uzima apsolutnu vrijednost (tj. Nije negativna) broja. U našem slučaju to smo učinili kako bismo pronašli najmanju vrijednost u usporedbi, jer se intenzitet signala daje kao negativan broj i što je bliži nuli signal je bolji.
Korak 10: Datoteke
Preuzmite sve moje datoteke na: www.fernandok.com
Preporučuje se:
Zaštitna kaciga Covid 1. dio: Uvod u Tinkercad kola!: 20 koraka (sa slikama)
Zaštitna kaciga Covid 1. dio: Uvod u Tinkercad sklopove!: Zdravo, prijatelju! U ovoj dvodijelnoj seriji naučit ćemo kako koristiti Tinkercadova kola - zabavan, moćan i obrazovni alat za učenje o tome kako kola rade! Jedan od najboljih načina učenja je učenje. Dakle, prvo ćemo osmisliti naš vlastiti projekt:
Uvod u IC sklopove: 8 koraka (sa slikama)
Uvod u IC sklopove: IR je složen dio tehnologije, ali s njim je vrlo jednostavno raditi. Za razliku od LED ili LASER -ova, infracrveno se ne može vidjeti ljudskim okom. U ovom uputstvu pokazat ću upotrebu infracrvenog signala kroz 3 različita kola. Krugovi neće biti u
Igre !!! - Uvod: 5 koraka
Igre !!! - Uvod: Zdravo! Naučit ću vas kako stvoriti tri različite igre na code.org. Ispod svakog vodiča za igre postavit ću predložak koji možete ponovo izmiješati i koristiti dok gledate moj video. Nadam se da ćete se dobro zabaviti !! Ako želite samo pogledati moje igre u
Uvod u Python - Katsuhiko Matsuda & Edwin Cijo - Osnove: 7 koraka
Uvod u Python - Katsuhiko Matsuda & Edwin Cijo - Osnove: Zdravo, mi smo 2 učenika na MYP 2. Želimo vas naučiti osnovama kodiranja Pythona. Kreirao ga je krajem 1980 -ih Guido van Rossum u Nizozemskoj. Napravljen je kao nasljednik jezika ABC. Njegovo ime je " Python " jer kada
Uvod ESP32 Lora OLED ekran: 8 koraka
Uvod ESP32 Lora OLED ekran: Ovo je još jedan video zapis o Uvodu u ESP32 LoRa. Ovaj put ćemo posebno govoriti o grafičkom prikazu (128x64 piksela). Koristit ćemo biblioteku SSD1306 za prikaz informacija na ovom OLED ekranu i predstaviti primjer o