INHOUDSOPGAWE:
- Stap 1: Belangrike kenmerke
- Stap 2: Vergelyking tussen ESP32, ESP8266 en Arduino R3
- Stap 3: Tipes ESP32
- Stap 4: WiFi NodeMCU-32S ESP-WROOM-32
- Stap 5: Configureer Arduino IDE (Windows)
- Stap 6: WiFi -skandering
- Stap 7: Kode
- Stap 8: Opstel
- Stap 9: Lus
- Stap 10: lêers
Video: Inleiding tot ESP32: 10 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
In hierdie artikel gaan ons praat oor ESP32, wat ek as 'n ouer broer van ESP8266 beskou. Ek hou baie van hierdie mikrobeheerder omdat dit WiFi het. Net sodat u 'n idee het, voordat ESP bestaan, as u 'n Arduino benodig om WiFi te hê, moet u tussen $ 200 en $ 300 spandeer om 'n Wifi -adapter te koop. Die adapter vir die netwerkkabel is nie so duur nie, maar vir WiFi was dit nog altyd duur en is dit nog steeds duur. Maar gelukkig het Espressif Systems ESP geloods en ons lewens opgelos.
Ek hou van ESP32 met hierdie formaat met 'n USB -poort. Hierdie NodeMCU -skema is maklik om te manipuleer omdat dit geen elektronika nodig het nie. Sluit net die kabel aan, voer die toestel aan en programmeer dit. Dit werk net soos 'n Arduino.
In elk geval, vandag sal ons praat oor die algemene aspekte van ESP32 en hoe om die Arduino IDE op te stel om meer toestelle van die tipe te programmeer. Ons maak ook 'n program wat die netwerke deursoek en wys watter een die kragtigste is.
Stap 1: Belangrike kenmerke
Chip met ingeboude WiFi: standaard 802.11 B / G / N, werk in die reeks van 2,4 tot 2,5 GHz
Werkingswyses: kliënt, toegangspunt, stasie + toegangspunt
Dubbelkern-mikroverwerker Tensilica Xtensa 32-bis LX6
Verstelbare klok van 80MHz tot 240MHz
Bedryfspanning: 3.3 VDC
Dit het 'n SRAM van 512 KB
Beskik oor 448KB ROM
Dit het 'n eksterne flitsgeheue van 32Mb (4 megabyte)
Maksimum stroom per pen is 12mA (dit word aanbeveel om 6mA te gebruik)
Dit het 36 GPIO's
GPIO's met PWM / I2C en SPI funksies
Dit het Bluetooth v4.2 BR / EDR en BLE (Bluetooth Low Energy)
Stap 2: Vergelyking tussen ESP32, ESP8266 en Arduino R3
Stap 3: Tipes ESP32
ESP32 is gebore met baie broers en susters. Vandag gebruik ek die eerste van links, Espressif, maar daar is verskillende handelsmerke en tipes, waaronder ingeboude Oled-skerm. Die verskille is egter almal dieselfde chip: die Tensilica LX6, 2 Core.
Stap 4: WiFi NodeMCU-32S ESP-WROOM-32
Dit is die diagram van ESP wat ons in ons samestelling gebruik. Dit is 'n chip met baie aantrekkingskrag en krag. Dit is 'n paar penne wat u kies, of hulle as digitaal analoog, analoog digitaal wil werk, of selfs as dit die deur as digitaal werk.
Stap 5: Configureer Arduino IDE (Windows)
Hier is hoe u die Arduino IDE kan konfigureer sodat ons vir ESP32 kan saamstel:
1. Laai die lêers af via die skakel:
2. Pak die lêer uit en kopieer die inhoud na die volgende pad:
C: / Gebruikers / [YOUR_USER_NAME] / Dokumente / Arduino / hardware / espressif / esp32
Nota: as daar geen gids "espressif" en "esp32" is nie, skep dit dan normaalweg.
3. Maak die gids oop
C: / Gebruikers / [YOUR_USER_NAME] / Dokumente / Arduino / hardware / espressif / esp32 / tools
Begin die lêer "get.exe".
4. Nadat die "get.exe" klaar is, koppel die ESP32, wag totdat die bestuurders geïnstalleer is (of handmatig geïnstalleer word).
Gereed, kies nou die ESP32 -bord in die "gereedskap >> bord" en stel u kode saam.
Stap 6: WiFi -skandering
Hier is 'n voorbeeld van hoe u na beskikbare WiFi-netwerke naby die ESP-32 kan soek, sowel as die seinsterkte van elkeen. Met elke skandering sal ons ook uitvind watter netwerk die beste seinsterkte het.
Stap 7: Kode
Laat ons eers die biblioteek "WiFi.h" insluit, dit sal ons nodig hê om met die netwerkkaart van ons toestel te werk.
#sluit "WiFi.h" in
Hier is twee veranderlikes wat gebruik sal word om die SSID (naam) en seinsterkte van die netwerk te stoor.
String networkSSID = ""; int strengthSignal = -9999;
Stap 8: Opstel
In die setup () -funksie definieer ons die WiFi -gedragsmodus van ons toestel. Aangesien dit in hierdie geval is om na beskikbare netwerke te soek, sal ons ons toestel opstel om as 'n 'stasie' te werk.
ongeldige opstelling () {// Initialize Serial om aan te meld Serial Monitor Serial.begin (115200);
// die werking van WiFi instel as WiFi -stasie.mode (WIFI_STA); // WIFI_STA is 'n konstante wat die stasie -modus aandui
// ontkoppel van die toegangspunt as dit reeds verbind is. WiFi -ontkoppel (); vertraging (100);
// Serial.println ("Opstelling voltooi");}
Stap 9: Lus
In die loop () -funksie sal ons na die beskikbare netwerke soek en dan die logboek in die gevindde netwerke druk. Vir elkeen van hierdie netwerke sal ons die vergelyking tref om die een met die hoogste seinsterkte te vind.
leemte -lus () {// Serial.println ("scan start"); // voer die skandering van beskikbare netwerke uit
int n = WiFi.scanNetworks ();
Serial.println ("Skandering uitgevoer");
// kyk of u 'n netwerk gevind het as (n == 0) {Serial.println ("Geen netwerk gevind nie"); } anders {networkSSID = ""; strengthSignal = -9999; Reeks.afdruk (n); Serial.println ("netwerke gevind / n"); for (int i = 0; i <n; ++ i) {// druk op seriële monitor elk van die netwerke gevind Serial.print ("SSID:"); Serial.println (WiFi. SSID (i)); // netwerknaam (ssid) Serial.print ("SIGNAAL:"); Serial.print (WiFi. RSSI (i)); // seinsterkte Serial.print ("\ t / tKANAAL:"); Serial.print ((int) WiFi.kanaal (i)); Serial.print ("\ t / tMAC:"); Serial.print (WiFi. BSSIDstr (i)); Serial.println ("\ n / n"); if (abs (WiFi. RSSI (i)) <abs (strengthSignal)) {strengthSignal = WiFi. RSSI (i); networkSSID = WiFi. SSID (i); Serial.print ("NETWERK MET DIE BESTE SIGNAAL GEVOND: ("); Serial.print (networkSSID); Serial.print (") - SIGNAL: ("); Serial.print (strengthSignal); Serial.println (")"); } vertraging (10); }} Serial.println ("\ n ----------------------------------------- ------------------------------------------- / n ");
// interval van 5 sekondes om 'n nuwe scanvertraging (5000) uit te voer; }
"As (abs (WiFi. RSSI (i))"
Let daarop dat in die bostaande stelling abs () gebruik word, hierdie funksie die absolute waarde (dws nie negatief) van die getal neem nie. In ons geval het ons dit gedoen om die kleinste van die waardes in die vergelyking te vind, omdat die seinintensiteit as 'n negatiewe getal gegee word en hoe nader aan nul hoe beter die sein.
Stap 10: lêers
Laai al my lêers af op: www.fernandok.com
Aanbeveel:
Covid -veiligheidshelm Deel 1: 'n Inleiding tot Tinkercad -kringe !: 20 stappe (met foto's)
Covid -veiligheidshelm Deel 1: 'n inleiding tot Tinkercad -stroombane !: Hallo, vriend! In hierdie tweedelige reeks leer ons hoe u Tinkercad's Circuits kan gebruik - 'n prettige, kragtige en opvoedkundige hulpmiddel om te leer hoe stroombane werk! Een van die beste maniere om te leer, is om te doen. Dus, ons ontwerp eers ons eie projek: die
Inleiding tot IR -kringe: 8 stappe (met foto's)
Inleiding tot IR -stroombane: IR is 'n komplekse stuk tegnologie, maar tog baie eenvoudig om mee te werk. Anders as LED's of LASER's, kan infrarooi nie met die menslike oog gesien word nie. In hierdie instruksies sal ek die gebruik van infrarooi deur drie verskillende stroombane demonstreer. Die stroombane sal nie u
Inleiding tot Arduino: 18 stappe
Inleiding tot Arduino: het u al ooit gewonder om u eie toestelle te maak, soos weerstasie, motorpaneelbord vir die monitering van brandstof, spoed- en liggingopsporing of die beheer van u huishoudelike toestelle wat deur slimfone beheer word, of het u al ooit gewonder oor die maak van gesofistikeerde
N Inleiding tot GarageBand: 9 stappe
N Inleiding tot GarageBand: GarageBand is 'n platform waarop jy musiek kan maak. Jy kan omtrent alles op hierdie platform doen, of dit nou jou droommusiek is of om 'n musiekstuk te herhaal waarvan jy hou. Maar dit is in elk geval nie maklik nie. Daarom is ek hier
Inleiding tot Visuino - Visuino vir beginners .: 6 stappe
Inleiding tot Visuino | Visuino vir beginners .: In hierdie artikel wil ek praat oor Visuino, wat nog 'n grafiese programmeersagteware vir Arduino en soortgelyke mikrobeheerders is. As u 'n elektroniese stokperdjie is wat die wêreld van Arduino wil betree, maar geen voorafgaande programmeringskennis het nie