Un display LCD 16x2 funziona utilizzando la tecnologia LCD (Liquid Crystal Display), che utilizza cristalli liquidi per modificare la quantità di luce che passa attraverso una finestra di visualizzazione.
Il display è composto da due parti principali: un pannello LCD e un driver LCD. Il pannello LCD è composto da una serie di cristalli liquidi incapsulati tra due lastre di vetro o plastica, con una serie di polarizzatori e filtri colorati posizionati tra di essi.
Il driver LCD è un circuito elettronico che controlla la polarizzazione dei cristalli liquidi all'interno del pannello LCD. Ciò viene fatto inviando una tensione elettrica attraverso una serie di fili collegati ai cristalli liquidi. Quando una tensione viene inviata attraverso un cristallo liquido, esso si orienta in modo da permettere o bloccate la luce che passa attraverso di esso.
Il display LCD utilizza una interfaccia chiamata I2C per comunicare con il microcontrollore di Arduino.
Inoltre, poiché molti dispositivi utilizzano l'interfaccia I2C, è facile trovare librerie per Arduino che gestiscano la comunicazione con questi dispositivi, il che rende ancora più semplice l'utilizzo dei componenti nei progetti.
Esso è un componente molto versatile e può essere utilizzato in molti progetti diversi, come la creazione di un contatore, un cronometro, una visualizzazione della temperatura e dell'umidità, un indicatore di stato per un sistema di automazione domestica e molto altro ancora.
Il display può essere alimentato a 5V o 3.3V a seconda del modello scelto e può essere controllato utilizzando solo 2 pin del microcontrollore, uno per il bus di dati (SDA) e uno per il bus di clock (SCL).
Per utilizzare il display LCD 16x2 con Arduino, è necessario utilizzare una libreria specifica per gestire la comunicazione I2C tra il display e il microcontrollore.
Si può dire che il display LCD 16x2 con interfaccia I2C è un componente molto utile e versatile per la visualizzazione dei dati in molti progetti di Arduino. Grazie alla sua semplicità d'uso e alla sua flessibilità, è possibile creare progetti più complessi con meno componenti, rendendo più facile il cablaggio e il funzionamento.
Ecco un esempio di codice per Arduino che utilizza la libreria LiquidCrystal_I2C per visualizzare caratteri casuali sul display LCD 16x2:
In questo esempio, la prima riga include la libreria Wire.h, che è necessaria per l'utilizzo dell'interfaccia I2C, e la libreria LiquidCrystal_I2C.h per gestire la comunicazione con il display.
Nella seconda riga, creiamo un'istanza del display LCD con l'indirizzo I2C 0x27, 16 colonne e 2 righe.
Nella funzione setup(), utilizziamo la funzione 'lcd.init()'
per inizializzare il display e la funzione 'lcd.backlight()'
per accendere la retroilluminazione. Inoltre, la funzione 'randomSeed(analogRead(A0))'
serve per inizializzare il generatore di numeri casuali utilizzando un valore letto dall'ingresso analogico A0.
Nella funzione loop() utilizziamo la funzione 'lcd.clear()'
per pulire il display e un ciclo for
per stampare 16 caratteri casuali generati dalla funzione 'random(33, 127)'
che genera un numero intero casuale tra 33 e 126, rappresentante i codici ASCII stampabili. Ogni carattere generato viene stampato con la funzione 'lcd.print()'.
Dopo la stampa, un ritardo di 1 secondo è utilizzato per lasciare il tempo di visualizzare i caratteri generati.
Interessante..
RispondiElimina