ESP32 vs Arduino
ESP32 è una scheda microcontrollore a basso costo con un chip microcontrollore a 32 bit che può funzionare a bassa potenza. ESP32 dispone di Wi-Fi integrato e doppio Bluetooth disponibile. È creato dal sistema Espressif. ESP32 è il successore delle schede ESP8266 create dallo stesso produttore. Basato su costo, dimensioni e consumo energetico di ESP32, è la soluzione migliore per un progetto fai-da-te basato sull'IoT. Il chip ESP32 contiene Tensilica Xtensa LX6 microprocessore con dual core e frequenza di clock superiore a 240 MHz.
Mentre dall'altra parte quando sentiamo la parola microcontrollore il primo nome che ci viene in mente è Arduino , poiché Arduino guida le schede dei microcontrollori da così tanto tempo grazie al suo ampio supporto disponibile insieme a una serie di schede diverse che vanno da Uno a 8 bit a zero a 32 bit. Le schede Arduino si basano su Microcontrollori ATmega AVR . Le schede Arduino partono da nano che si adattano perfettamente a progetti di piccole dimensioni fino a mega Arduino in grado di gestire più dispositivi grazie ai suoi 54 pin di input/output digitali.
ESP32 è migliore di Arduino
sì , ESP32 è una scheda microcontrollore migliore e più potente di Arduino. ESP32 ha il doppio supporto Wi-Fi e Bluetooth integrato. Ha il pieno supporto TCP/IP per la connessione Internet dello stack completo. Grazie al suo modulo Wi-Fi può fungere da punto di accesso oltre che da stazione Wi-Fi. Grazie al suo microcontrollore a 32 bit e alla frequenza di clock fino a 240 MHz, è molto più avanti di Arduino.
I seguenti punti salienti offrono una prospettiva migliore del perché ESP32 è migliore di Arduino:
- ESP32 ha un microcontrollore a 32 bit
- Doppio supporto Wi-Fi e Bluetooth
- Funziona a livello di bassa tensione (3,3 V)
- ESP32 ha 18 canali ADC mentre Arduino Uno ne ha solo sei
- ESP32 viene fornito con 48 pin GPIO mentre Uno ha solo 14 pin di input/output digitali e 6 pin analogici
- La scheda ESP32 è più economica dell'Arduino Uno
Per leggere un confronto tra Arduino ed ESP32 clicca qui .
Confronto di velocità di ESP32, Arduino Uno e Arduino Mega
Di seguito sono riportate le frequenze di clock della scheda microcontrollore ESP32, Arduino Uno e Mega.
Arduino Uno: Orologio interno 16MHz
Arduino Mega: Orologio interno 16MHz
ESP WROOM 32: Regolabile tra 80MHz e 240MHz.
Sappiamo tutti che i microcontrollori fanno affidamento sulla loro sorgente di clock. Un orologio più potente significa meno tempo per eseguire le istruzioni. Vediamo la differenza tra la velocità di tutte e tre le schede dei microcontrollori sopra.
non firmato lungo Inizio_Ora, Tempo_Preso ;#definisci spilla 5 /*pin 5 definito per cambiarne lo stato*/
vuoto impostare ( ) {
Seriale. inizio ( 9600 ) ; /*Baud rate definito per la comunicazione seriale*/
modalità pin ( pin, USCITA ) ; /*pin 5 definito come output*/
}
vuoto ciclo continuo ( ) {
Ora di inizio = milli ( ) ; /*ora di inizio è uguale a contatore Millis*/
per ( int io = 0 ; io < 20000 ; io ++ ) { /*i cicli for vengono eseguiti per 20000 volte*/
scrittura digitale ( spillo, ALTO ) ; /*lo stato del pin cambia in ALTO*/
scrittura digitale ( spillo, BASSO ) ; /*lo stato del pin cambia in BASSO*/
}
Tempo impiegato = milli ( ) - Ora di inizio ; /*Differenza di tempo calcolata per il tempo di ritorno impiegato*/
Seriale. Stampa ( 'Tempo impiegato per cambiare stato al PIN 5: ' ) ;
Seriale. Stampa ( Tempo impiegato ) ; /*Il tempo totale impiegato viene stampato*/
Seriale. println ( 'SM' ) ;
}
Innanzitutto, abbiamo inizializzato due variabili Ora di inizio e Tempo impiegato. Uno memorizzerà l'ora di inizio in Millis mentre il secondo memorizzerà il tempo totale impiegato dal microcontrollore per passare tra due stati che sono ALTO e BASSO.
Successivamente nella parte del codice del ciclo viene utilizzato un ciclo for che ruoterà 20.000 volte e rende il pin 5 come ALTO e BASSO alternativamente. Successivamente, prendiamo la differenza dell'ora di inizio con Millis corrente una volta che lo stato cambia da ALTO a BASSO. Qui la differenza di tempo tra Millis attuale e Millis precedente definirà il tempo impiegato dal consiglio per cambiare stato.
Uscita ESP32
Poiché ESP32 ha una frequenza di clock maggiore di Uno e Mega, quindi passerà da uno stato all'altro molto velocemente. Qui l'uscita rappresenta che ci vogliono 5 ms per passare dallo stato ALTO allo stato BASSO.
Uscita Arduino Uno
La scheda Arduino Uno ha un clock esterno di 16 MHz, quindi ci vorranno 172 ms per cambiare lo stato dei pin.
Mega uscita Arduino
La scheda Arduino Mega impiegherà 227 ms per passare da uno stato all'altro.
Dal risultato di cui sopra abbiamo concluso che ESP32 è più veloce di Arduino Uno e Mega.
Breve confronto di ESP32 vs Arduino Uno vs Arduino Mega
Ecco un breve confronto delle schede ESP32 con i concorrenti di Arduino Uno e Mega.
Caratteristiche | ESP32 | arduino uno | Arduino Mega |
---|---|---|---|
Pin I/O digitali | 36 | 14 | 54 |
Corrente CC per pin I/O | 40 mA | 20 mA | 20 mA |
Pin analogici | Fino a 18 | 6, ADC a 10 bit | 6, ADC a 10 bit |
Processore | Microprocessore Xtensa Dual Core LX6 a 32 bit | ATmega328P | ATmega2560 |
Memoria flash | 4 MB | 32 KB | 256 KB |
SRAM | 520 kB | 2KB | 8 KB |
EEPROM | Nessuno | 1 KB | 4 KB |
Velocità dell'orologio | Da 80 MHz a 240 MHz | 16 MHz | 16 MHz |
Livello di tensione | 3,3 V | 5V | 5V |
Wifi | 802.11 b/g/n | Nessuno | Nessuno |
Bluetooth | v4.2 BR/EDR e BLE | Nessuno | Nessuno |
Supporto I2C | Sì (2x) | sì | sì |
Supporto SPI | Sì (4x) | sì | sì |
Porta seriale hardware | 3 | 1 | 1 |
Connettività USB | Micro USB | USB-B | USB-B |
Conclusione
Quando si acquista una prima scheda per microcontrollore o si lavora su più schede, una domanda che viene in mente a tutti è quale delle schede del microcontrollore sia la migliore. Quindi, abbiamo concluso che ESP32 è migliore della scheda Arduino per via del suo prezzo accessibile, del basso consumo energetico e dell'orologio esterno super veloce con supporto WiFi e Bluetooth. ESP32 offre più funzionalità rispetto alle schede Arduino.