Sommario:
- Passaggio 1: NodeMCU ESP-WROOM-32
- Passaggio 2: ESP-WROOM-32
- Passaggio 3: ma qual è il pinout corretto da utilizzare per il mio ESP32?
- Passaggio 4: INGRESSO / USCITA
- Passaggio 5: diagramma a blocchi
- Passaggio 6: Periferiche e sensori
- Passaggio 7: GPIO
- Passaggio 8: sensori
- Passaggio 9: cane da guardia
- Passaggio 10: Bluetooth
- Passaggio 11: avvio
Video: ESP32: dettagli interni e pinout: 11 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
In questo articolo parleremo dei dettagli interni e del pinning di ESP32. Ti mostrerò come identificare correttamente i pin guardando il datasheet, come identificare quale dei pin funziona come OUTPUT/INPUT, come avere una panoramica sui sensori e le periferiche che l'ESP32 ci offre, oltre al avvio. Pertanto, credo che, con il video qui sotto, sarò in grado di rispondere a diverse domande che ho ricevuto in messaggi e commenti sui riferimenti ESP32, tra le altre informazioni.
Passaggio 1: NodeMCU ESP-WROOM-32
Qui abbiamo il PINOUT del
WROOM-32 che serve come un buon riferimento per quando si programma. È importante prestare attenzione a General Purpose Input/Output (GPIO), ovvero porte di input e output di dati programmabili, che possono ancora essere un convertitore AD o un pin Touch, come ad esempio GPIO4. Ciò si verifica anche con Arduino, dove i pin di input e output possono anche essere PWM.
Passaggio 2: ESP-WROOM-32
Nell'immagine sopra, abbiamo l'ESP32 stesso. Esistono diversi tipi di inserti con caratteristiche diverse a seconda del produttore.
Passaggio 3: ma qual è il pinout corretto da utilizzare per il mio ESP32?
ESP32 non è difficile. È così facile che possiamo dire che non c'è nessuna preoccupazione didattica nel tuo ambiente. Tuttavia, dobbiamo essere didattici, sì. Se vuoi programmare in Assembler, va bene. Ma il tempo di progettazione è costoso. Quindi, se tutto ciò che è un fornitore di tecnologia ti fornisce uno strumento che richiede tempo per comprenderne il funzionamento, questo può facilmente diventare un problema per te, perché tutto ciò aumenterà i tempi di ingegnerizzazione, mentre il prodotto diventa sempre più costoso. Questo spiega la mia preferenza per le cose facili, quelle che possono rendere più facile il nostro quotidiano, perché il tempo è importante, soprattutto nel mondo frenetico di oggi.
Tornando all'ESP32, in un datasheet, come in quello sopra, abbiamo la corretta identificazione dei pin nei punti salienti. Spesso l'etichetta sul chip non corrisponde al numero effettivo del pin, poiché abbiamo tre situazioni: il GPIO, il numero di serie e anche il codice della carta stessa.
Come mostrato nell'esempio sottostante, abbiamo un collegamento di un LED nell'ESP e la corretta modalità di configurazione:
Si noti che l'etichetta è TX2, ma dobbiamo seguire la corretta identificazione, come evidenziato nell'immagine precedente. Pertanto, l'identificazione corretta del pin sarà 17. L'immagine mostra quanto vicino dovrebbe rimanere il codice.
Passaggio 4: INGRESSO / USCITA
Durante l'esecuzione dei test INPUT e OUTPUT sui pin, abbiamo ottenuto i seguenti risultati:
INPUT non ha funzionato solo su GPIO0.
OUTPUT non ha funzionato solo sui pin GPIO34 e GPIO35, che sono rispettivamente VDET1 e VDET2.
* I pin VDET appartengono al dominio di potenza dell'RTC. Ciò significa che possono essere utilizzati come pin ADC e che il coprocessore ULP può leggerli. Possono essere solo entrate e mai uscite.
Passaggio 5: diagramma a blocchi
Questo diagramma mostra che ESP32 ha un dual core, un'area del chip che controlla il WiFi e un'altra area che controlla il Bluetooth. Ha anche l'accelerazione hardware per la crittografia, che consente la connessione a LoRa, una rete a lunga distanza che consente una connessione fino a 15 km, utilizzando un'antenna. Osserviamo anche il generatore di clock, l'orologio in tempo reale e altri punti che coinvolgono, ad esempio, PWM, ADC, DAC, UART, SDIO, SPI, tra gli altri. Tutto ciò rende il dispositivo abbastanza completo e funzionale.
Passaggio 6: Periferiche e sensori
L'ESP32 ha 34 GPIO che possono essere assegnati a varie funzioni, come:
Solo digitale;
Abilitato per analogico (può essere configurato come digitale);
Abilitato al tocco capacitivo (configurabile come digitale);
E altri.
È importante notare che la maggior parte dei GPIO digitali può essere configurata come pull-up o pull-down interni o configurata per l'alta impedenza. Quando impostato come input, il valore può essere letto attraverso il registro.
Passaggio 7: GPIO
Convertitore analogico-digitale (ADC)
L'Esp32 integra ADC a 12 bit e supporta misurazioni su 18 canali (pin abilitati per l'analogico). Il coprocessore ULP nell'ESP32 è anche progettato per misurare le tensioni durante il funzionamento in modalità di sospensione, che consente un basso consumo energetico. La CPU può essere risvegliata da un'impostazione di soglia e/o tramite altri trigger.
Convertitore digitale-analogico (DAC)
È possibile utilizzare due canali DAC a 8 bit per convertire due segnali digitali in due uscite di tensione analogiche. Questi doppi DAC supportano l'alimentazione come riferimento di tensione in ingresso e possono pilotare altri circuiti. I doppi canali supportano conversioni indipendenti.
Passaggio 8: sensori
Sensore di tocco
L'ESP32 ha 10 GPIO di rilevamento capacitivo che rilevano le variazioni indotte quando si tocca o si avvicina un GPIO con un dito o altri oggetti.
L'ESP32 ha anche un sensore di temperatura e un sensore di Hall interno, ma per lavorare con loro è necessario modificare le impostazioni dei registri. Per maggiori dettagli consultare il manuale tecnico tramite il link:
www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf
Passaggio 9: cane da guardia
L'ESP32 ha tre timer di sorveglianza: uno su ciascuno dei due moduli timer (chiamato Primary Watchdog Timer o MWDT) e uno sul modulo RTC (chiamato RTC Watchdog Timer o RWDT).
Passaggio 10: Bluetooth
Interfaccia Bluetooth v4.2 BR/EDR e Bluetooth LE (bassa energia)
L'ESP32 integra un controller di connessione Bluetooth e una banda base Bluetooth, che eseguono protocolli in banda base e altre routine di collegamento di basso livello, come modulazione / demodulazione, elaborazione dei pacchetti, elaborazione del flusso di bit, salto di frequenza, ecc.
Il controller di connessione opera in tre stati principali: standby, connessione e sniff. Consente connessioni multiple e altre operazioni, come la richiesta, la pagina e l'abbinamento semplice e sicuro, e quindi consente Piconet e Scatternet.
Passaggio 11: avvio
Su molte schede di sviluppo con USB/Seriale integrato, esptool.py può ripristinare automaticamente la scheda in modalità di avvio.
ESP32 entrerà nel caricatore di avvio seriale quando il GPIO0 viene mantenuto basso durante il ripristino. Altrimenti, eseguirà il programma in flash.
GPIO0 ha un resistore di pullup interno, quindi se è senza connessione, andrà in alto.
Molte schede utilizzano un pulsante etichettato "Flash" (o "BOOT" su alcune schede di sviluppo Espressif) che guida il GPIO0 verso il basso quando viene premuto.
GPIO2 dovrebbe anche essere lasciato non connesso/flottante.
Nell'immagine sopra, puoi vedere un test che ho eseguito. Ho messo l'oscilloscopio su tutti i pin dell'ESP per vedere cosa è successo quando è stato acceso. Ho scoperto che quando ottengo un pin, genera oscillazioni di 750 microsecondi, come mostrato nell'area evidenziata sul lato destro. Cosa possiamo fare al riguardo? Abbiamo diverse opzioni, come dare un ritardo con un circuito con un transistor, ad esempio un espansore di porta. Faccio notare che GPIO08 è invertito. L'oscillazione esce verso l'alto e non verso il basso.
Un altro dettaglio è che abbiamo alcuni pin che iniziano in High e altri in Low. Pertanto, questo PINOUT è un riferimento a quando ESP32 si accende, specialmente quando si lavora con un carico per attivare, ad esempio, un triac, un relè, un contattore o una certa potenza.
Consigliato:
Sistema di giardinaggio automatizzato basato su Raspberry Pi per esterni o interni - MudPi: 16 passaggi (con immagini)
Sistema di giardinaggio automatizzato basato su Raspberry Pi per esterni o interni - MudPi: ti piace il giardinaggio ma non riesci a trovare il tempo per mantenerlo? Forse hai delle piante d'appartamento che sembrano un po' assetate o stai cercando un modo per automatizzare la tua coltura idroponica? In questo progetto risolveremo questi problemi e impareremo le basi di
Dettagli e connessioni dell'adattatore LCD I2C: 5 passaggi
Dettagli e connessioni dell'adattatore LCD I2C: l'adattatore lcd I2C è un dispositivo contenente un chip PCF8574 microcontrollore. Questo microcontrollore è un espansore I/O, che comunica con altri microcontrollori con protocollo di comunicazione a due fili. Utilizzando questo adattatore chiunque può controllare un 16x2
Antenna a farfalla per interni/esterni: 5 passaggi
Antenna a farfalla per interni / esterni: sono sempre stato affascinato dall'antenna a farfalla standard e ho scoperto che avevano buone proprietà. quindi quando ero a RadioShack qualche tempo fa e ne ho visti 2 sullo scaffale per $ 5 ciascuno, non ho potuto trattenermi e ho aggiunto 2 alla mia collezione facendo 3
Termometro USB per interni/esterni (o "Il mio primo dispositivo USB"): 4 passaggi (con immagini)
Termometro USB per interni/esterni (o "Il mio primo dispositivo USB"): questo è un design semplice che mostra la periferica USB sui PIC 18F. Ci sono un sacco di esempi per i chip 18F4550 a 40 pin online, questo design dimostra la versione più piccola 18F2550 a 28 pin. Il PCB utilizza parti a montaggio superficiale, ma tutti c
Trasforma la tua luce fluorescente da 12 V CC o 85-265 V CA in LED - Parte 1 (interni): 7 passaggi
Trasforma la tua luce fluorescente da 12 V CC o 85-265 V CA in LED - Parte 1 (interni): uno dei miei reattori a luce fluorescente da 12 V nel mio camper si è bruciato. Ho deciso di sostituirlo con LED utilizzando 6 LED economici, un paio di driver LED e utilizzando https://www.instructables.com/id/Replace-Low-Voltage-Bi-Pin-Halogens-with-LEDs/ come guida . Il pa