Scheda ARDUINO
Collegamento a LCD seriale

ultimo aggiornamento 18 maggio 2014


 

Quella presentata in questa pagina è un'interfaccia che permette di pilotare un display LCD tramite un'interfaccia seriale. Il progetto originale è disponibile sul sito francese Kudelsko.

Per il suo montaggio vedere l'apposita pagina.
Le principali caratteristiche dell'interfaccia sono:

  • Gestione di display LCD del tipo: 2x16, 2x20 e 4x20 caratteri

  • Comunicazione di tipo seriale configurabile a : 2400, 4800, 9600, 19200 baud 8 bit, no parity, 1 bit stop

  • Interfaccia compatibile con display del tipo: HD44780.

  • Protocollo di trasferimento: stringa di caratteri ASCII.

La velocità si varia modificando la posizione dei DIP.

 

Velocità RB0 RB1
2400 0 0
4800 1 0
9600 0 1
19200 1 1


Il collegamento con la scheda avviene tramite un connettore analogo a quello dei servo (+5V, GND, Sig).
La sintassi per l'invio dei comandi è molto semplice.

LCD.print ["&$"]
LCD.print ["1XXXXXXXXXXXXXXXX#$"]
LCD.print["2XXXXXXXXXXXXXXXX#$"]

dove:
"&$" cancella il display
"1XXXXXXXXXXXXXXXX#$" scrive sulla prima riga del display
"2XXXXXXXXXXXXXXXX#$" scrive sulla seconda riga del display

homotix

PCBA

OurPCB

 

 

/*
Programma:Test_lcd_seriale.pde
 Versione: 1.0
 Collaudo modulo LCD seriale 2
 di Adriano Gandolfo
 */
#include 
NewSoftSerial LCD(3, 2);

void setup() {                
  LCD.begin(9600);// Apre la porta seriale e la setta a 9600 baud
}
void loop() 
{
  delay (500);
  LCD.print("&$"); // Cancella LCD
  delay (100);
  LCD.print("1 Test di prova#$"); // Scrive riga 1
  delay (500);
  LCD.print("2LCD16x2caratteri#$"); // Scrive riga 2
  delay (1000);
  LCD.print("&$"); // Cancella LCD
  delay (100);
  LCD.print("1Comando  seriale#$"); // Scrive riga 1
  delay (500);
  LCD.print("2www.adrirobot.it#$"); // Scrive riga 2
  delay (2000);
}

Programma di prova (versione per IDE 1.0.X)

/*####################################################################
 FILE: Test_lcd_seriale.ino
 VERSION: 2.0
 Descrizione: Programma di prova per modulo LCD basato sul modello originale
 tratto dal sito francese http://kudelsko.free.fr/.
 
 Collegamenti
 * +5V   -> 5V
 * GND   -> GND
 * DATA  -> 2
 
 Ultima modifica il 16/5/2014
 Applicazione realizzata da Adriano Gandolfo
 Blog http://it.emcelettronica.com/author/adrirobot/ 
 
 This example code is in the public domain.
 #################################################################### */

#include <SoftwareSerial.h>
SoftwareSerial LCD(3, 2);

void setup() {                
  LCD.begin(9600);// Apre la porta seriale e la setta a 9600 baud
}
void loop() 
{
  delay (500);
  LCD.print("&$"); // Cancella LCD
  delay (100);
  LCD.print("1 Test di prova#$"); // Scrive riga 1
  delay (500);
  LCD.print("2LCD16x2caratteri#$"); // Scrive riga 2
  delay (1000);
  LCD.print("&$"); // Cancella LCD
  delay (100);
  LCD.print("1Comando  seriale#$"); // Scrive riga 1
  delay (500);
  LCD.print("2www.adrirobot.it#$"); // Scrive riga 2
  delay (2000);
}

 

Elenco revisioni
18/05/2014 Aggiornato pagina, inserito nuova versione programma di test
21/03/2011 Emissione preliminare
Private Policy Cookie Policy