Prispevki ESP

Kaj je ESP krmilnik?

Arduino robot 030

Kaj pomeni kratica ESP?

ESP32 je ime čipa, ki ga je razvilo podjetje Espressif Systems. Ta čip zagotavlja Wi-Fi (in v nekaterih modelih) dvojni Bluetooth način povezovanja z napravami. Čeprav je ESP tehnično samo čip, kot je ATmega328P pri Arduino UNO krmilniku, so razvojne plošče, ki vsebujejo ta čip, pogosto imenovane samo “ESP32”.

ESP32 čip

Kaj je ESP mikrokrmilnik?

ESP mikrokrmilnik je ime skupine mikrokrmilnikov, ki so bili razviti in proizvedeni s strani podjetja Espressif Systems. Med najbolj znanimi mikrokrmilniki v tej skupini so ESP8266 in ESP32. Ti mikrokrmilniki so znani po tem, da imajo vgrajeno Wi-Fi in/ali Bluetooth povezljivost ter so primerni za uporabo v IoT (internetu stvari) aplikacijah in drugih vgrajenih sistemih, kjer je potrebna brezžična povezljivost.

ESP32 mikrokrmilnik

Primerjava ESP32 in Arduino UNO

Prva in očitna razlika med ESP32 in Arduino UNO je njihova namembnost. Medtem ko je Arduino UNO zasnovan predvsem za izobraževalne namene in hobi projekte, je ESP32 namenjen zahtevnejšim aplikacijam, kot so internet stvari (IoT), napredni roboti, avtomatizacija doma in industrije ter podobno.

Druga razlika je povezana z njihovimi specifikacijami. ESP32 ima več pomnilnika, višjo hitrost procesorja in vgrajen Wi-Fi in Bluetooth, medtem ko Arduino UNO nima teh funkcij in ima manjši pomnilnik in manjšo hitrost procesorja.

Tretja razlika je v programiranju. ESP32 se pogosto programira v programskem jeziku C/C++ z uporabo različnih razvojnih okolij, medtem ko se Arduino UNO programira v programskem jeziku C/C++ z uporabo Arduino IDE.

Na koncu lahko rečemo, da če iščete enostavno rešitev za vaš hobi projekt, bo Arduino UNO verjetno zadostoval. Če pa iščete zmogljivejšo rešitev za vašo aplikacijo ali projekt v industrijskem okolju, bi ESP32 lahko bil boljša izbira.

Kaj je vključeno v ESP32 in kako to vpliva na njegovo delovanje?

ESP32 vključuje različne komponente, ki vplivajo na njegovo delovanje. Vključuje dva procesorja, kar zagotavlja boljšo porabo energije in zmogljivost. Glavni procesor je dvojedrni Tensilica LX6, ki deluje na 240 MHz in zagotavlja visoko zmogljivost obdelave podatkov. Manjši procesor Xtensa je namenjen upravljanju brezžične povezljivosti in deluje na frekvenci 80 MHz. S tem se zmanjša obremenitev glavnega procesorja in podaljša življenjska doba baterije.

ESP32 vključuje tudi Wi-Fi in Bluetooth povezljivost, kar omogoča preprosto povezovanje z drugimi napravami v omrežju in brezžično upravljanje naprav. Poleg tega ima ESP32 velik pomnilnik za shranjevanje podatkov in kode, ki je lahko povečan z uporabo zunanjega pomnilnika. Ima tudi več vmesnikov, vključno z I2C, SPI, UART in CAN, kar omogoča povezavo z različnimi senzorji, zasloni in drugimi napravami.

ESP32 ima tudi vgrajene funkcije za zaščito pred preobremenitvijo, prenapetostjo, kratkim stikom in drugimi nevarnostmi, kar zagotavlja varno in zanesljivo delovanje. Vgrajena funkcija za upravljanje napajanja omogoča, da se mikrokrmilnik lahko prebudi iz stanja mirovanja in tako porabi manj energije.

Vse te komponente omogočajo ESP32, da deluje hitro in zanesljivo ter se enostavno povezuje z drugimi napravami. Poleg tega lahko uporabniki dostopajo do več knjižnic in orodij za programiranje ESP32, kar olajša razvoj aplikacij in projektov. Skupaj z visoko zmogljivostjo in enostavnostjo uporabe je ESP32 postal priljubljena izbira za ustvarjalce in razvijalce po vsem svetu.

ESP32 verzije

ESP32 pinout za 38 pinsko verzijo

ESP32 lahko vključuje tudi različne razvojne plošče z več GPIO priključki. Tu so navedene pinout povezave za razvojno ploščo ESP-WROOM-32 s 38 GPIO priključki:

1. GND – skupna (zemlja)
2. VBAT – vhodna napetost začetne stopnje
3. V3V3 – izhodna napetost 3,3 V
4. EN – omogoča vklop/izklop ESP32
5. SENSOR_VP – vhodna napetost začetne stopnje
6. SESOR_VN – vhodna napetost začetne stopnje
7. IO34 – splošni namenski vhod/izhod
8. IO35 – splošni namenski vhod/izhod
9. IO32 – splošni namenski vhod/izhod
10. IO33 – splošni namenski vhod/izhod
11. IO25 – splošni namenski vhod/izhod
12. IO26 – splošni namenski vhod/izhod
13. IO27 – splošni namenski vhod/izhod
14. IO14 – splošni namenski vhod/izhod
15. IO12 – splošni namenski vhod/izhod
16. GND – skupna (zemlja)
17. IO13 – splošni namenski vhod/izhod
18. IO15 – splošni namenski vhod/izhod
19. IO2 – splošni namenski vhod/izhod

20. IO0 – splošni namenski vhod/izhod
21. IO4 – splošni namenski vhod/izhod
22. GND – skupna (zemlja)
23. IO16 – splošni namenski vhod/izhod
24. IO17 – splošni namenski vhod/izhod
25. IO5 – splošni namenski vhod/izhod
26. IO18 – splošni namenski vhod/izhod
27. IO19 – splošni namenski vhod/izhod
28. IO21 – splošni namenski vhod/izhod
29. IO22 – splošni namenski vhod/izhod
30. GND – skupna (zemlja)
31. IO23 – splošni namenski vhod/izhod
32. IO3 – splošni namenski vhod/izhod
33. IO1 – splošni namenski vhod/izhod
34. VSPX – SPI izhod
35. VSPD – SPI vhod
36. GND – skupna (zemlja)
37. VP – vhodna napetost začetne stopnje
38. VN – vhodna napetost začetne stopnje

ESP21 38pin pinout

Kot vedno, je pomembno, da preverite dokumentacijo in navodila proizvajalca, saj se lahko pinout povezave različnih razvojnih plošč, ki vsebujejo ESP32, razlikujejo. Vendar pa so splošni principi uporabe GPIO priključkov na različnih razvojnih ploščah podobni in se jih lahko uporablja za povezavo z različnimi napravami in senzorji. 

GPIO priključki lahko podpirajo različne funkcije, kot so digitalni vhodi in izhodi, analogni vhodi, PWM (pulzno-širinska modulacija), I2C (inter-integrated circuit) in SPI (serial peripheral interface) vmesniki. Poleg tega imajo nekateri GPIO priključki tudi vgrajene funkcije, kot so vmesnik za branje senzorjev s temperaturnim tipalom, vhod za merjenje napetosti baterije in podobno. 

Pri uporabi GPIO priključkov je pomembno, da se upoštevajo omejitve glede največje izhodne moči, napetosti in toka ter druge specifikacije, ki jih določa proizvajalec. Prav tako je pomembno, da se izberejo ustrezen način delovanja in konfiguracija priključkov v skladu z zahtevami aplikacije. Z uporabo pravilnih pinout povezav in konfiguracij GPIO priključkov, lahko uporabniki izkoristijo polno zmogljivost ESP32 za izvajanje različnih projektov in aplikacij.

Pregled glavnih specifikacij najbolj značilnih predstavnikov ESP družine v TABELI

 ESP8266ESP8266 WeMos D1 miniESP32ESP32-S2ESP32-C3ESP8285
procesorTensilica Xtensa LX106Tensilica Xtensa LX106Tensilica Xtensa LX6 (Dual-Core)Tensilica Xtensa LX7 (Single-Core)RISC-V (Single-Core)Tensilica Xtensa LX106
arhitektura32-bit, RISC32-bit, RISC32-bit, RISC32-bit, RISC32-bit, RISC32-bit, RISC
delovna
napetost
3.3V3.3V3.3V3.3V3.3V3.3V
vhodna
napetost
3.0V-3.6V3.0V-3.6V3.0V-3.6V3.0V-3.6V3.0V-3.6V3.0V-3.6V
digitalni
I/O pini
17 (incl. GPIO & UART)11 (incl. GPIO & UART)36 (incl. GPIO & UART)43 (incl. GPIO & UART)22 (incl. GPIO & UART)17 (incl. GPIO & UART)
max DC tok
na I/O pin
12mA12mA12mA12mA12mA12mA
PWM digitalni
pini
Most GPIO pinsMost GPIO pinsMost GPIO pinsMost GPIO pinsMost GPIO pinsMost GPIO pins
analogni vhodni
pini
1 (0-1V)1 (0-3.2V)18 (12-bit)20 (14-bit)5 (12-bit)1 (0-1V)
FLASH1MB
(up to 16MB
with external flash storage)
4MB4MB
(up to 16MB
with external flash storage)
128KB-4MB384KB1MB
SRAM160KB160KB520KB320KB400KB160KB
EEPROMNo
(Use FLASH for storage)
No
(Use FLASH for storage)
No
(Use FLASH for storage)
No
(Use FLASH for storage)
No
(Use FLASH for storage)
No
(Use FLASH for storage)
hitrost ure80 MHz
(can be increased to 160 MHz)
80 MHz
(can be increased to 160 MHz)
160 MHz (max)240 MHz (max)160 MHz (max)80 MHz
(can be increased to 160 MHz)