CONTENUTO ►
Il display LCD di Arduino consente di visualizzare i dati provenienti dai sensori. Vi spiegheremo come collegare correttamente il modulo LCD QAPASS ad Arduino senza modulo I2C e il display LCD con modulo I2C e prenderemo in considerazione i comandi di inizializzazione e controllo di base del display LCD 1602. Considereremo anche varie funzioni del linguaggio di programmazione Arduino IDE per visualizzare informazioni di testo sul display.
Per questa attività sono necessari:
- Arduino Uno / Arduino Nano / Arduino Mega
- modulo display LCD 1602 QAPASS
- cavi di collegamento
- libreria LiquidCrystal_I2C.h
Come collegare display LCD 16×2 senza i2c Arduino
Lo schermo di testo 16×2 viene utilizzato per emettere informazioni sul sensore, visualizzare menu o prompt di progetto. Lo schermo visualizza caratteri neri di 5×8 pixel. La retroilluminazione integrata si accende applicando l’alimentazione ai pin del modulo. Il display di testo 16×2 senza modulo IIC è collegato al microcontrollore Arduino tramite 6 pin. La piedinatura dello schermo con un esempio di collegamento è illustrata nella figura precedente.
Il display a cristalli liquidi ha 2 file di 16 caratteri, da cui il nome LCD 16×2. 192 caratteri sono incorporati nella memoria del dispositivo, mentre altri 8 caratteri possono essere caricati dall’utente. Quando si collega il display senza il modulo IIC, è necessario utilizzare 6 porte generiche del microcontrollore Arduino, senza contare le porte di alimentazione. Assemblare il circuito come mostrato nell’immagine precedente e caricare il seguente programma.
Programma Arduino per utilizzare LCD 16×2 senza i2c
#include "LiquidCrystal.h" LiquidCrystal LCD(13, 12, 11, 10, 9, 8); void setup() { LCD.begin(16, 2); LCD.setCursor(1, 0); LCD.print("HELLO"); LCD.setCursor(8, 1); LCD.print("WORLD"); } void loop() { }
Spiegazione del codice per utilizzare display LCD 16×2 senza i2c:
- per questo esempio viene utilizzata la libreria standard LiquidCrystal.h per QAPASS;
- per semplificare il circuito ed evitare di utilizzare un gran numero di pin del microcontrollore, è necessario utilizzare uno schermo con un modulo i2c.
Interfaccia i2c Arduino per collegamento LCD 16×2
L’I2C è un bus seriale a due fili per l’interconnessione dei circuiti integrati nei dispositivi elettronici, noto come I²C o IIC (Inter-Integrated Circuit). In un semplice sistema I²C, possono essere presenti diversi dispositivi slave e un dispositivo master che avvia il trasferimento dei dati. Diversi dispositivi possono essere collegati a SDA (linea dati) e SCL (linea di sincronizzazione). Spesso il dispositivo master è un controllore Arduino.
Per impostazione predefinita, tutti i moduli I2C hanno indirizzo “0x27”. Se si desidera collegare più display 1602 al microcontrollore, è necessario modificare gli indirizzi dei dispositivi per evitare corrispondenze. Se si capovolge il display e si osserva il modulo IIC, i pin sono etichettati come “A0”, “A1” e “A2”. Se il display LCD ha come indirizzo predefinito “0x27” sul bus IIC, la chiusura del ponticello “A0” cambierà l’indirizzo dello schermo in “0x26”.
Come collegare display LCD 16×2 i2c Arduino
LCD 1602 i2c | Arduino Uno | Arduino Nano | Arduino Mega |
GND | GND | GND | GND |
VCC | 5V | 5V | 5V |
SDA | A4 | A4 | 20 |
SCL | A5 | A5 | 21 |
Il display a cristalli liquidi 1602 con modulo I2C è collegato alla scheda Arduino con soli 4 fili: 2 fili di dati e 2 fili di alimentazione. Il collegamento del QAPASS 1602a ad Arduino avviene in modo standard per il bus I2C: il pin SDA è collegato alla porta A4, il pin SCL alla porta A5 (vedere la tabella precedente). Il display LCD è alimentato dalla porta +5V. Per maggiori dettagli sullo schema di cablaggio del monitor LCD 1602, vedere l’immagine qui sopra.
Programma Arduino per utilizzare LCD 16×2 con i2c
#include "Wire.h" #include "LiquidCrystal_I2C.h" LiquidCrystal_I2C LCD(0x27,16,2); void setup() { LCD.init(); LCD.backlight(); LCD.setCursor(1, 0); LCD.print("HELLO"); LCD.setCursor(8, 1); LCD.print("WORLD"); } void loop() { LCD.noDisplay(); delay(1000); LCD.display(); delay(1000); }
Spiegazione del codice per utilizzare display LCD 16×2 i2c:
- prima di visualizzare le informazioni sul display, è necessario impostare la posizione del cursore con setCursore(0,1); dove 0 è il numero del carattere nella riga, 1 è il numero della riga;
- a differenza di clear(); – il comando noDisplay(); non cancella la scritta, ma ne disabilita l’emissione sul display e può essere nuovamente visualizzata.
Conclusione: Utilizzando i programmi per la scheda Arduino e il display lcd 1602a di questo post e lo schema per collegare l’lcd 1602 ad Arduino via i2c, sarete in grado di utilizzare questo display in progetti Arduino con LCD e in vari esempi. Se avete ancora domande sull’uso del monitor di testo 1602 i2c Arduino, lasciatele nei commenti di questa pagina. Forse quello che state cercando è già stato risolto e si trova nelle risposte.
Lascia un commento