ultimo aggiornamento 8 aprile 2011


JLCPCB - 2$ per prototipi di PCB, di qualsiasi colore. Produzione in 24 ore!
L'Azienda di prototipi PCB più popolare, con oltre 700.000 clienti in tutto il mondo!
Recati presso la JLCPCB, riceverai regali e coupon gratuiti
presso Maker Faire Rome il 18-20 ottobre


Panoramica
In questa pagina viene proposto la costruzione di una scheda per pilotare tramite un collegamento seriale, dei display LCD.
Il progetto e basato sulla scheda SerLCD V2.5 prodotta dalla SPARKFUN che mette a disposizione sia lo schema, sia i sorgenti che il file esadecimale per la programmazione del processore presente sulla scheda un PIC16F688.
Il modulo riceve segnali di tipo seriale a livello TTL e visualizza i caratteri sullo schermo LCD. Sono sufficienti solo tre fili - 5V, GND. e Segnale.

ser_lcd-spark-fun_originale.jpg ser_lcd-spark-fun_prova.jpg

OurPCB, your most reliable PCB and PCBA supplier.

Focusing on PCB Prototype and PCB Assembly Turnkey Services.

One-Stop Wire Harness & Cable Assemblies Solution

Caratteristiche
Le principali caratteristiche del modulo sono:
• Processore 16F688 utilizza l'interfaccia UART per la precisione una maggiore comunicazione
• Velocità di trasmissione settabile su valori di: 2400, 4800, 9600 (default), 14400, 19200 e 38400
• Velocità di elaborazione a 8MHz
• Capacità di immagazzinamento di 80 caratteri
• Transistor per gestione retroilluminazione in grado di gestire fino a 1A
• modulazione di larghezza di impulso retroilluminazione consente un controllo diretto della luminosità della retroilluminazione e il consumo di corrente
• Tempi brevi per il boot-up
• Possibilità di definire la schermata di caricamento

Specifiche interfaccia
Il valore predefinito di comunicazioni è 9600bps con 8 bit di dati, 1 bit di start, 1 bit di stop e nessuna parità.
Il SerLCD è controllato utilizzando caratteri ASCII. Questo significa che se si passa il carattere ASCll "r" il modulo mostrerà una "r"  sul display LCD nella posizione del cursore successiva.
Ci sono solo due eccezioni a questo. Questi sono i caratteri di comando decimale 254 (0xFE) e 124 (0x7C).

Configurazione
Tutte le impostazioni vengono memorizzate su EEPROM on board e caricati durante l'accensione.

Retroilluminazione
Il processore modula la retroilluminazione tramite un  transistor BJT da1 A. Questo permette all'utente di impostare 30 valori di luminosità diverse.
Con l'invio del carattere di comando speciale 0x7C (decimale 124) seguito da un numero compreso tra 128-157, valori di  la retroilluminazione PWM sarà impostata. Questo è utile quando il consumo di energia elettrica dell'unità deve essere minimizzato. Riducendo la luminosità, il consumo di corrente globale retroilluminazione è ridotta.

Valore  

luminosità

128  

Off

140  

40% On

150  

73% On

157  

completamente acceso

158  

non valido

Configurazione LCD
Il firmware v2.5 include le impostazioni dell'interfaccia per i seguenti tipi di schermi LCD: 16x2, 20x2, 16x4, 20x4.

dispaly_lcd-16x2.jpg dispaly_lcd-20x2.jpg
dispaly_lcd-16x4.jpg dispaly_lcd-20x4.jpg

 

20 caratteri di larghezza  

3

16 caratteri di larghezza  

4

4 linee  

5

2 linee  

6

Per modificare il tipo di LCD da controllare connesso al modulo SerLCD, occorre trasmettere il comando speciale - 124(0x7C) seguito dal valore 3, 4, 5, o 6.
Questo comando impostare la larghezza in caratteri dell'LCD e il numero di linee.
Queste impostazioni vengono utilizzati per effettuare correttamente il ritorno a capo del cursore per mantenerlo entro la visualizzazione dello schermo.     Il tipo di LCD è salvato all'interno della memoria EEPROM dopo ogni cambiamento.

Comandi LCD estesi

Azzeramento del display  

0x01

Sposta il cursore a destra di un carattere  

0x14

Spostare il cursore a sinistra di un carattere

0x10

Effettua uno scroll verso destra  

0x1C

Effettua uno scroll verso sinistra  

0x18

Accende il display

0x0C

Spegne in display

0x08

Sottolinea il cursore

0x0E

Elimina la sottolineatura del cursore

0x0C

Attiva il lampeggiamento del cursore

0x0D

Disattiva il lampeggiamento del cursore

0x0C

Impostare la posizione del cursore

0x80 +

Vedere il datasheet HD44780 per ulteriori informazioni.

Schermata di avvio
Il SerLCD visualizza una schermata di avvio, quella di default è "Sparkfun.com `SerLCD v2 '" per verificare che l'unità è accesa e funziona correttamente, e che la connessione al display LCD è corretta.
La schermata iniziale viene visualizzato per 500 ms durante il boot-up e può essere disattivata, se lo si desidera.
E' però possibile impostare una propria schermata di avvio (2 linee). Per fare questo, basta impostare le due linee come si farebbe per mostrale sul display, quindi occorre inviare carattere speciale 124, seguito da "<control> j" per salvarlo in memoria. Per verificare, basta spegnere e riaccendere.
Per disabilitare la schermata iniziale inviare il comando `speciale ' (decimale 124), 0x7C  seguita dal decimale 9.
Ogni volta che questo comando viene inviato la schermata iniziale commuta. Cioè, se la schermata di avvio è correntemente visualizzata, inviando il comando 0x7C 0x09 si disabilita la schermata di avvio nel boot seguente. Inviando  nuovamente il  comando 0x7C 0x09 si abiliterà nuovamente la schermata iniziale.

Cambiare la velocità di trasmissione
Il SerLCD ha di default la velocità di trasmissione a 9600 baud, ma può essere impostato su una varietà di altre velocità di trasmissione.
Per modificare la velocità di trasmissione, prima inserire il carattere speciale di comando 124, quindi:

2400  

baud,  

inserire "<control> k"

4800  

baud,  

inserire "<control> I"

9600  

baud,  

inserire "<control> m"

14.400  

baud,  

inserire "<control> n"

19200  

baud,  

inserire "<control> o"

38400  

baud,  

inserire "<control> p "

Se il modulo entra in uno stato sconosciuto,  inserire "<control>r " a 9600 baud, mentre la schermata di avvio è attiva e l'unità di resettera a 9600 baud.

Hardware
Tensione e corrente di alimentazione
Il modulo deve essere alimentato con una tensione di 5V DC. Una tensione superiore a 5,5 V, può danneggiare il PIC, il display LCD o la retroilluminazione (se collegata).
Il modulo consuma 3mA con la retroilluminazione spenta e ~ 60mA con la retroilluminazione attiva.

Controllo del contrasto
Il modulo è dotato di un trimmer 10k per controllare il contrasto del display LCD.  La temperatura e tensione di alimentazione può influenzare il contrasto del display LCD.


Caratteristiche Modulo
Originale Spark-Fun

Schema elettrico
Modulo originale Spark-Fun

 

Elenco revisioni
08/04/2011 Aggiornato pagina, inserito descrizione modulo
14/12/2009 Aggiornato pagina, inserito foto e programma di collaudo
24/11/2009 Emissione preliminare