Përmbajtje:
- Hapi 1: Karakteristikat kryesore
- Hapi 2: Krahasimi midis ESP32, ESP8266 dhe Arduino R3
- Hapi 3: Llojet e ESP32
- Hapi 4: WiFi NodeMCU-32S ESP-WROOM-32
- Hapi 5: Konfigurimi i Arduino IDE (Windows)
- Hapi 6: Skanimi i WiFi
- Hapi 7: Kodi
- Hapi 8: Konfigurimi
- Hapi 9: Lak
- Hapi 10: Skedarët
Video: Hyrje në ESP32: 10 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:26
Në këtë artikull do të flasim për ESP32, të cilin e konsideroj si një vëlla më të madh të ESP8266. Më pëlqen shumë ky mikrokontrollues sepse ka WiFi. Vetëm për të pasur një ide, para se të ekzistojë ESP, nëse keni nevojë për një Arduino për të pasur WiFi, do të duhet të shpenzoni midis $ 200 dhe $ 300 për të blerë një përshtatës Wifi. Përshtatësi për kabllon e rrjetit nuk është aq i shtrenjtë, por për WiFi ka qenë gjithmonë dhe është ende i shtrenjtë. Por për fat të mirë, Espressif Systems ka nisur ESP dhe po zgjidh jetën tonë.
Më pëlqen ESP32 me këtë format që ka një port USB. Kjo skemë NodeMCU është e lehtë për tu manipuluar sepse nuk ka nevojë për pajisje elektronike. Thjesht lidhni kabllon, ndizni pajisjen dhe programojeni atë. Punon ashtu si një Arduino.
Sidoqoftë, sot do të flasim për aspektet e përgjithshme të ESP32 dhe si të konfiguroni Arduino IDE për të programuar më shumë pajisje të këtij lloji. Gjithashtu ne do të bëjmë një program që kërkon rrjetet dhe tregon se cili është më i fuqishëm.
Hapi 1: Karakteristikat kryesore
Çip me WiFi të integruar: standard 802.11 B / G / N, që funksionon në rangun prej 2.4 deri 2.5GHz
Mënyrat e funksionimit: Klienti, Pika e hyrjes, Stacioni + Pika e hyrjes
Mikroprocesor me dy bërthama Tensilica Xtensa 32-bit LX6
Orë e rregullueshme nga 80MHz deri në 240MHz
Tensioni i funksionimit: 3.3 VDC
Ka SRAM prej 512KB
Karakteristikat ROM 448KB
Ka memorie flash të jashtme 32Mb (4 megabajt)
Rryma maksimale për pin është 12mA (rekomandohet të përdorni 6mA)
Ka 36 GPIO
GPIO me funksione PWM / I2C dhe SPI
Ka Bluetooth v4.2 BR / EDR dhe BLE (Bluetooth me energji të ulët)
Hapi 2: Krahasimi midis ESP32, ESP8266 dhe Arduino R3
Hapi 3: Llojet e ESP32
ESP32 lindi me shumë vëllezër e motra. Sot po përdor të parën nga e majta, Espressif, por ka disa marka dhe lloje, duke përfshirë ekranin Oled të integruar. Sidoqoftë, ndryshimet janë të gjitha të njëjtat çipa: Tensilica LX6, 2 Core.
Hapi 4: WiFi NodeMCU-32S ESP-WROOM-32
Ky është diagrami i ESP që ne po përdorim në asamblenë tonë. Shtë një çip që ka shumë tërheqje dhe fuqi. Ato janë disa kunja që ju zgjidhni nëse duan të punojnë si analoge dixhitale, analoge dixhitale apo edhe nëse ato funksionojnë si derivale.
Hapi 5: Konfigurimi i Arduino IDE (Windows)
Ja se si të konfiguroni Arduino IDE në mënyrë që të mund të përpilojmë për ESP32:
1. Shkarkoni skedarët përmes lidhjes:
2. Zbërtheni skedarin dhe kopjoni përmbajtjen në rrugën e mëposhtme:
C: / Përdoruesit / [YOUR_USER_NAME] / Documents / Arduino / hardware / espressif / esp32
Shënim: Nëse nuk ka drejtori "espressif" dhe "esp32", thjesht krijojini ato normalisht.
3. Hapni drejtorinë
C: / Përdoruesit / [YOUR_USER_NAME] / Documents / Arduino / hardware / espressif / esp32 / tools
Drejtoni skedarin "get.exe".
4. Pasi të përfundojë "get.exe", lidhni ESP32, prisni që drejtuesit të instalohen (ose instaloni me dorë).
Gati, tani thjesht zgjidhni bordin ESP32 në "mjetet >> bordi" dhe përpiloni kodin tuaj.
Hapi 6: Skanimi i WiFi
Këtu keni një shembull se si të kërkoni rrjete WiFi në dispozicion pranë ESP-32, si dhe fuqinë e sinjalit të secilit prej tyre. Me çdo skanim, ne gjithashtu do të zbulojmë se cili rrjet ka fuqinë më të mirë të sinjalit.
Hapi 7: Kodi
Së pari le të përfshijmë bibliotekën "WiFi.h", do të jetë e nevojshme të na lejojë të punojmë me kartën e rrjetit të pajisjes sonë.
#përfshi "WiFi.h"
Këtu janë dy variabla që do të përdoren për të ruajtur SSID (emrin) e rrjetit dhe fuqinë e sinjalit.
String networkSSID = ""; int forceSignal = -9999;
Hapi 8: Konfigurimi
Në funksionin e konfigurimit (), ne do të përcaktojmë mënyrën e sjelljes WiFi të pajisjes sonë. Në këtë rast, meqenëse qëllimi është të kërkojmë për rrjetet në dispozicion, ne do të konfigurojmë pajisjen tonë që të funksionojë si një "stacion".
void setup () {// Initialize Serial për t'u regjistruar në Serial Monitor Serial.begin (115200);
// konfigurimi i mënyrës së funksionimit të WiFi si stacion WiFi.mode (WIFI_STA); // WIFI_STA është një konstante që tregon mënyrën e stacionit
// shkëputeni nga pika e hyrjes nëse është e lidhur tashmë WiFi.disponnect (); vonesa (100);
// Serial.println ("Konfigurimi u krye");}
Hapi 9: Lak
Në funksionin loop (), ne do të kërkojmë rrjetet në dispozicion dhe më pas do të printojmë regjistrin në rrjetet e gjetura. Për secilin prej këtyre rrjeteve do të bëjmë krahasimin për të gjetur atë me fuqinë më të lartë të sinjalit.
lak void () {// Serial.println ("fillimi i skanimit"); // kryen skanimin e rrjeteve në dispozicion
int n = WiFi.scanNetworks ();
Serial.println ("Skanimi u krye");
// kontrolloni nëse keni gjetur ndonjë rrjet nëse (n == 0) {Serial.println ("Asnjë rrjet nuk u gjet"); } else {networkSSID = ""; forceSignal = -9999; Serial.print (n); Serial.println ("rrjetet e gjetura / n"); për (int i = 0; i <n; ++ i) {// printoni në monitor serik secilin nga rrjetet e gjetura Serial.print ("SSID:"); Serial.println (WiFi. SSID (i)); // emri i rrjetit (ssid) Serial.print ("SIGNAL:"); Serial.print (WiFi. RSSI (i)); // fuqia e sinjalit Serial.print ("\ t / tCHANNEL:"); Serial.print ((int) WiFi.channel (i)); Serial.print ("\ t / tMAC:"); Serial.print (WiFi. BSSIDstr (i)); Serial.println ("\ n / n"); nëse (abs (WiFi. RSSI (i)) <abs (forceSignal)) {forceSignal = WiFi. RSSI (i); networkSSID = WiFi. SSID (i); Serial.print ("Rrjeti me sinjalin më të mirë të gjetur: ("); Serial.print (networkSSID); Serial.print (") - SIGNAL: ("); Serial.print (forceSignal); Serial.println (")"); } vonesa (10); }} Serial.println ("\ n ----------------------------------------- ---------------------------------------------- / n ");
// interval prej 5 sekondash për të kryer një vonesë të re të skanimit (5000); }
"Nëse (abs (WiFi. RSSI (i))"
Vini re se në pohimin e mësipërm ne përdorim abs (), ky funksion merr vlerën absolute (dmth. Jo negative) të numrit. Në rastin tonë ne e bëmë këtë për të gjetur vlerat më të vogla në krahasim, sepse intensiteti i sinjalit jepet si një numër negativ dhe sa më afër zeros aq më i mirë është sinjali.
Hapi 10: Skedarët
Shkarkoni të gjithë skedarët e mi në: www.fernandok.com
Recommended:
Helmeta e Sigurisë Covid Pjesa 1: Një Hyrje në Qarqet Tinkercad !: 20 hapa (me fotografi)
Helmeta e Sigurisë Covid Pjesa 1: Një Hyrje në Qarqet Tinkercad !: Përshëndetje, mik! Në këtë seri me dy pjesë, ne do të mësojmë se si të përdorim Qarqet e Tinkercad - një mjet argëtues, i fuqishëm dhe edukativ për të mësuar se si funksionojnë qarqet! Një nga mënyrat më të mira për të mësuar, është të bësh. Pra, ne së pari do të hartojmë projektin tonë personal: th
Hyrje në qarqet IR: 8 hapa (me fotografi)
Hyrje në Qarqet IR: IR është një pjesë komplekse e teknologjisë por shumë e thjeshtë për të punuar me të. Ndryshe nga LED ose LASER, Infrared nuk mund të shihet me syrin e njeriut. Në këtë Udhëzues, unë do të demonstrojë përdorimin e Infrared përmes 3 qarqeve të ndryshme. Qarqet nuk do të jenë u
Lojra !!! - Hyrje: 5 hapa
Lojra !!! - Hyrje: Përshëndetje! Unë do t'ju mësoj se si të krijoni tre lojëra të ndryshme në code.org. Nën secilën mësim të lojës, unë do të postoj një model që mund ta rimiksoni dhe përdorni ndërsa shikoni videon time. Shpresoj te kaloni bukur !! Nëse ju djema doni të shikoni lojërat e mia në o
Hyrje në Python - Katsuhiko Matsuda & Edwin Cijo - Bazat: 7 hapa
Python Hyrje - Katsuhiko Matsuda & Edwin Cijo - Bazat: Përshëndetje, ne jemi 2 studentë në MYP 2. Ne duam t'ju mësojmë bazat se si të kodoni Python. Ajo u krijua në fund të viteve 1980 nga Guido van Rossum në Holandë. Ajo u bë si një pasardhëse e gjuhës ABC. Emri i tij është " Python " sepse kur
Hyrje ESP32 Lora OLED Ekran: 8 hapa
Hyrje ESP32 Lora OLED Display: Kjo është një video tjetër në lidhje me Hyrjen në ESP32 LoRa. Këtë herë, ne do të flasim në mënyrë specifike për një ekran grafik (me 128x64 pixel). Ne do të përdorim bibliotekën SSD1306 për të shfaqur informacion në këtë ekran OLED dhe për të paraqitur një shembull të