AN010 - Display HD44780 compatibili con Arduino

I display compatibili HD44780 sono diventati ormai uno standard ed è molto facile trovare in rete la documentazione necessaria ed esempi per l'uso di questo tipo di display LCD a caratteri.
La piattaforma open-source Arduino è ricca di periferiche e sono numerose le librerie disponibili (non perderti LPM11162 Arduino Library!), quindi non poteva certo mancare una libreria dedicata al controllo dei display LCD a caratteri compatibili HD44780.

Questo articolo spiegherà brevemente i vantaggi della libreria open-source LiquidCrystal, come configurarla ed impiegarla e come collegare i tuoi display ad Arduino.
Ricorda che tutti i display disponibili nello shop online di www.lpelettronica.it sono compatibili HD44780, quindi questo articolo ti potrà aiutare come base di riferimento per iniziare un nuovo progetto.

LCM1602A_BlueMini LCM2004D_White LCM1602B_Green
Display 16x2 con sfondo Blu Display 20x4 con sfondo Grigio Display 16x2 con sfondo Verde

 

 


Libreria LiquidCrystal

ArduinoIDE_smallLa libreria LiquidCrystal è semplice da usare ma ricca di funzioni che consentono l'uso dei display a caratteri. Ecco l'elenco completo:

- LiquidCrystal()
- begin()
- clear()
- home()
- setCursor()
- write()
- print()
- cursor()
- noCursor()
- blink()
- noBlink()
- display()
- noDisplay()
- scrollDisplayLeft()
- scrollDisplayRight()
- autoscroll()
- noAutoscroll()
- leftToRight()
- rightToLeft()
- createChar()

La libreria viene fornita insieme all'ambiente di sviluppo per Arduino, quindi è già pronta per l'uso e non richiede alcuna ulteriore installazione. Di seguito vedremo lo schema di collegamento proposto per l'uso della libreria e del display ed infine un piccolo codice di esempio.

 

 

Schema di collegamento

Il seguente schema mostra il collegamento tra un display ed Arduino:

ArduinoLiquidCrystal

display_pinout
Schema di collegamento Arduino con display Pinout di un display LCD
a caratteri (vedi datasheet)


I collegamenti necessari sono i seguenti:

- alimentazione: VDD (+5V), VSS (GND)
- regolazione contrasto: V0 (trimmer 10K fra VDD e VSS)
- linee di controllo: RS, R/W, E (GND)
- linee dati: DB4, DB5, DB6, DB7 (DB0, DB1, DB2, DB3 non connessi).

Questa configurazione impiega il minor numero possibile di collegamenti perchè sfrutta solo 4 linee dati (il dato a 8 bit viene multiplexato su due trasferimenti da 4 bit) e risulta quindi il più impiegato. La libreria LiquidCrystal per Arduino gestisce automaticamente questa configurazione.


Codice di esempio

Le operazioni di base per l'utilizzo della libreria LiquidCrystal per Arduino sono le seguenti:

- inizializzazione libreria e configurazione pin utilizzati su Arduino
- configurazione tipo di display (16x2, 16x4, 20x2, 20x4)
- impostazione posizione del cursore su display
- stampa del testo su display

Il semplice codice riportato di seguito configura la libreria LiquidCrystal per lavorare con un display 16x2 (16 caratteri su 2 righe) stampando la stringa "Hello" a partire dal primo carattere della prima riga e la stringa "World!" a partire dal primo carattere della seconda riga:

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
lcd.begin(16, 2);
lcd.setCursor(0, 0);
lcd.print("Hello");
lcd.setCursor(0, 1);
lcd.print("World!");

Con la libreria vengono distribuiti anche alcuni esempi da provare e da cui trarre spunto. Il codice riportato sopra può essere un buon punto di partenza, ma vale la pena di consultare anche qualche altro esempio per valutare le potenzialità della libreria LiquidCrystal.


Realizzazione di un display LCD con keypad

Il sito www.adrirobot.it presenta una interessante introduzione all'uso dei display LCD con Arduino.
Adriano Gandolfo riporta nelle sue pagine la descrizione completa di una realizzazione di display LCD con keypad, corredando il tutto con foto e filmati.

lcd_keypad_conc_arduino lcd-keypad-video



Link e riferimenti

- Shop online display LCD
- Realizzazione di un display LCD con keypad
- Pagina ufficiale LiquidCrystal Library
- Tutorial LiquidCrystal Library
- Sito ufficiale Arduino
logo_adrirobot_380 logo_arduino



 
RSS
 
icon rssCon il feed RSS ricevi aggiornamenti in tempo reale su tutte le novità del sito.

Iscriviti subito al feed RSS!

Social

icon fb circle icon tw circle icon g circle icon rss circle

Prodotti nello Shop
Cacciavite con 6 inserti
Cacciavite con 6 inserti
Tastierino alfanumerico 4x3 Nero
Tastierino alfanumerico 4x3 Nero
Zener 3.3V-0.5W (5pz)
Zener 3.3V-0.5W (5pz)
Distanziale M2.5 10mm PCB (4pz)
Distanziale M2.5 10mm PCB (4pz)
CD4011 - Quad 2-Input NAND (2pz)
CD4011 - Quad 2-Input NAND (2pz)
Deviatore a leva 1Via-2Pos.
Deviatore a leva 1Via-2Pos.
Home