ESP32 è una scheda di sviluppo in grado di comunicare e interconnettersi con i dispositivi IoT in modalità wireless. Dispone di moduli Wi-Fi e Bluetooth integrati. Dispone inoltre di più periferiche per la comunicazione con altri dispositivi. Includono SPI, UART e I2C. Questo articolo spiegherà brevemente il ruolo di I2C in ESP32.
Cos'è l'I2C?
I2C è anche scritto come IIC, e sta per Circuito Inter-Integrato . Questa interfaccia I2C in ESP32 utilizza metodi di comunicazione asincroni e half-duplex. In questo metodo, la comunicazione bidirezionale è consentita ma non simultaneamente. La trasmissione o la ricezione dei dati può avvenire contemporaneamente.
Cosa fa I2C in ESP32?
I2C è responsabile della comunicazione seriale con altri dispositivi. Comunica a bassa velocità e su brevi distanze quasi pari a un piede.
Si compone di due linee per la comunicazione. Uno è Serial Data Line abbreviato in SDA e l'altro è Serial Clock Line abbreviato in SCL. IL SDA è il GPIO perno 21 E SCL è il GPIO perno 22 . Queste due linee consentono la comunicazione bidirezionale.
L'interfaccia I2C consente una comunicazione specifica, in cui ogni dispositivo ha il suo ID univoco e i dati sono protetti durante la comunicazione. Per questo motivo, I2C viene utilizzato anche dai sensori per comunicare con controller e dispositivi di output.
L'interfaccia I2C può collegare più dispositivi master e slave lungo le sue linee dati e di clock. ESP32 può fungere da dispositivo master o da dispositivo slave quando si lavora con altri dispositivi.
Specifiche dell'interfaccia I2C
Le caratteristiche di base dell'interfaccia I2C sono spiegate di seguito:
- In modalità standard, la sua velocità di comunicazione è di 100k bit/secondo
- In modalità veloce, la sua velocità di comunicazione è di 400k bit/secondo
- La frequenza di comunicazione di I2C è 5MHz
- I registri degli indirizzi o questa interfaccia sono da 7 a 10 bit
- Può comunicare in due direzioni
Come collegare i dispositivi I2C con ESP32?
L'ESP32 può essere collegato ad altri dispositivi che supportano la comunicazione seriale. Ad esempio, il display LCD a cristalli liquidi può essere interfacciato con ESP32 utilizzando I2C. Il metodo di interfacciamento consiste in semplici connessioni tra LCD ed ESP32. È necessario collegare i pin SDA e SCL dell'LCD ai pin GPIO 21 e 22 rispettivamente. Allo stesso modo, è necessario alimentare l'LCD collegando VCC e GND a Vin e GND di ESP32. In questo modo si stabilisce la comunicazione seriale tra LCD ed ESP32.
Puoi ottenere maggiori informazioni sull'interfacciamento dei dispositivi I2C con ESP32
- LCD I2C con ESP32 utilizzando MicroPython e Thonny IDE .
Conclusione
L'interfaccia I2C è una caratteristica molto importante di ESP32 che gli consente di essere connesso con più dispositivi contemporaneamente. Può connettersi sia come master che come slave. Può comunicare in entrambi i modi tramite SDA e SCL. Tuttavia, la trasmissione o la ricezione possono avvenire contemporaneamente.