Arduino
Mini shield per LCD
ultimo aggiornamento 16 agosto 2014


 

Nel corso di esperimento con Arduino si può aver bisogno di collegare un display LCD. Se non sia possiede uno specifico shield occorre, facendo riferimento alla Figura 1 realizzare i collegamenti con cavi volanti oppure utilizzando una bread board su cui realizzare i vari ponticelli collegando poi in trimmer per la regolazione del contrasto e se il display necessita della retroilluminazione realizzare anche il collegamento ai specifici pin.


Figura 1
  • LCD RS → pin digitale 12;

  • LCD Enable pin digitale 11;

  • LCD D4 → pin digitale 5;

  • LCD D5 →pin digitale 4;

  • LCD D6 → pin digitale 3;

  • LCD D7 → pin digitale 2.

  • Alimentazione → pin +5V

  • Alimentazione → pin GND

Per semplificare il lavoro si è pensato di realizzare una piccola scheda (misura 43x16 mm), un mini shield che semplifichi il lavoro.
Il circuito è molto semplice in quanto non è altro che lo schema di figura 1 con l'aggiunta di alcune pin strip e di un jumper per la retroilluminazione, è inoltre presente il trimmer da 10k per la regolazione del contrasto.
Per il collegamento ad Arduino è presente una pin strip femmina a 8 contatti su cui sono presenti tutti i segnali necessari compresa l'alimentazione

 

homotix

 
Foto del prototipo realizzato su basetta millefori
Elenco componenti
JP1 Pinstrip femmina 8x1
JP2 Pinstrip maschio 1x16
JP3 Pinstrip maschio 1x2 + ponticello

POT1

10k Trimmer
R1 10Ω 1/4W
LCD1 Display LCD 16x2 con retroilluminazione tipo LCM1602A-NSW-BBW oppure  RC162051YFHLYB
 
 
 
 
LCM1602A-NSW-BBW - Display LCD 16 caratteri x 2 linee con fondo Blu

Piedinatura Datasheet display LCM1602A-NSW-BBW Foto
 
RC162051YFHLYB - Display LCD 16 caratteri x 2 linee  con retroilluminazione

Piedinatura Datasheet display RC162051YFHLYB Foto

FASI DI MONTAGGIO DELLA SCHEDA

Si procederà iniziando dalla realizzazione del circuito stampato.      Il prototipo è stato realizzato utilizzando una basetta millefori (16x6 fori) ma è possibile realizzare un apposito circuito stampato. Per la sua realizzazione si utilizzerà una basetta in vetronite (monofaccia) di dimensioni 43x16 mm circa, il metodo potrà essere quello della fotoincisione o del trasferimento termico utilizzando i cosiddetti fogli blu (PRESS-N-PELL), in questo caso ricordo che l’immagine delle tracce del circuito dovrà essere speculare.

Una volta inciso il rame, si passerà quindi alla foratura della stessa, utilizzando principalmente una punta da Ø 0,8-1 mm.  In seguito si potrà passare al posizionamento e alla saldatura dei componenti seguendo lo schema visibile sotto.

Per la saldatura si utilizzerà un piccolo saldatore a punta fine, della potenza di circa 25 – 30 W. S’inizierà dalla resistenza proseguendo con il trimmer e quindi con i pin-strip.

Alcuni dettagli della scheda

Vista del mini shield con il display lcd montato

Vista posteriore del mini shield, la verione mostrata è quella realizzata con una basetta millefori.

dettaglio del connettore che permette il collegamento con la scheda Arduino

dettaglio del trimmer per la regolazione del contrasto del diplay, e del jumper per l'attivazione della retroilluminazione

Collegamento della scheda ad Arduino

Collegamento LCD con scheda Arduino

Funzione LCD Pin mini shield Pin Arduino Colore
VDD +5V pin +5V Rosso
RS (Register Selec) RS digitale 12 Verde
EN (Enable) EN  digitale 11 Arancio
Data Bus line 4 D4  pin digitale 5 Giallo
Data Bus line 5 D5 pin digitale 4 Ciano
Data Bus line 6 D6 pin digitale 3 Viola
Data Bus line 7 D7 pin digitale 2 Blu
GND-VSS GND  pin GND Nero

Programma utilizzato per il test

Il programma utilizzato per il test è disponibile nella cartella degli esempi, LiquidCrystal, con il nome HelloWord, in questo caso è solo stata modificata la scritta che viene mostrata.
Il programma infatti utilizza la libreria LiquidCrystal, in questa pagina potere vedere i comandi disponibili.

 

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  // set up the LCD's number of columns and rows: 
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("Testo di prova");
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
  // print the number of seconds since reset:
  lcd.print(millis()/1000);
}

Esempio d'utilizzo della scheda display

Esempio di utilizzo del modulo display, per maggiori informazioni vedere l'apposita pagina che illustra l'utilizzo del sensore di umidità e temperatura tipo SHT11.

 

 

Elenco revisioni
16/08/2014 Corretto link per scaricare files per EAGLE, aggiornato pagina
22/05/2013 Aggiornato pagina, inserito schema di collegamento e indicazioni sul programma utilizzato
20/05/2013 Emissione preliminare
Private Policy Cookie Policy