Menu:

Implementazioni del PPTEA



Implementiamo un Display LCD a due fili

Dalla versione 2.15 è a disposizione il display a due fili.
Per far questo occorre utilizzare il 4094. Vengono utilizzati i bit 11 e il bit 4 (pin 23 e pin 6) e per attivare questa funzionalità occorre settare il bit 17 del SETIO.
Se il bit è alto viene attivato il display a due fili, se il bit è basso verrà attivato quello a 6 fili.
Lo schema dei collegamenti è visibile nella documentazione, mentre i comandi rimangono gli stessi, il PPTEA gestisce il tutto in modo trasparente mantenendo la compatibilità con la modalità a display libero.
Questo è un esempio che utilizza il DISPLAY a due fili:

CODICE
06 SETIO=&H200DF ' il 17 BIT (partendo da 0 ) identifica la modalità a 2 fili del display
10 lcdclear
20 lcdwrite="CIAO CIAO"
55 goto 55

Il display a 6 fili può essere gestito contemporaneamente a quello a 2 fili, cioè i due display possono convivere, l'importante è settare, mediante il bit 17, il display su cui scrivere, il PPTEA gestirà in modo automatico le operazioni.

CODICE
05 setio=&H005F
10 lcdclear ' Cancello il display a 6 fili
25 lcdwrite="DISPLAY 1" ' Scrivo sul display a 6 fili
35 setio=&H2003F ' Setto il display a 2 fili
40 lcdclear ' Cancello il display a 2 fili
65 lcdwrite="DISPLAY 2" ' Scrivo Display a 2 fili
161 goto 161

ATTENZIONE: Occorre prestare attenzione alla configurazione delle uscite, il PPTEA lo fa automaticamente all'inizializzazione ed in modo automatico; ma quando si gestiscono i due display occorre settare le giuste uscite.
Quindi i bit 11 e 4 devono essere messi come uscite e devono rimanere tali quando si fanno operazioni sul display.

Le informazioni che vanno ai due display sono indipendenti.
Questo è un esempio che scrive DISPLAY 1 sul primo display (parallelo a 6 fili) e DISPLAY 2 sul secondo display (seriale a 2 fili).

CODICE
05 setio=&H005F
10 lcdclear
25 lcdwrite="DISPLAY 1"
35 setio=&H2003F
40 lcdclear
65 lcdwrite="DISPLAY 2"
161 goto 161

Volendo si possono duplicare le informazioni replicando le scritte sui due display, ma questo va fatto a livello di codice.
Esempio di display clone:

CODICE
05 setio=&H005F
10 lcdclear
25 lcdwrite="DISPLAY 1"
35 setio=&H2003F
40 lcdclear
65 lcdwrite="DISPLAY 1"
161 goto 161

Successivamente a queste note sono state migliorate alcune funzionalità:

Autore: MarKoZaKKa

Ecco il circuitino che permette di pilotare due LCD in modalità 2W, utilizzando un solo bit di selezione, quattro resistenze e due transistor NPN.
Ho usato i componenti che avevo sottomano, lavorando empiricamente.
In pratica, descrivendo il tutto molto spannometricamente (o come dice un caro ex collega, a braccio teso e mano oscillante) il circuito funziona così:
utilizzando una linea del PPTEA (BITx), quando questa viene messa dal sw a livello logico "0" (0V), BJT1 si interdice lasciando che i dati transitino verso il CD4094 del primo LCD, mentre BJT2, trovandosi senza tensione sul collettore, non permette che sulla sua resistenza di emettitore appaia il flusso dati che gli arriva in base.
Viceversa, quando BITx è a "1" (+5V), BJT1 conduce verso massa, bloccando il flusso dati verso LCD1, mentre BJT2, trovandosi alimentato, permette al segnale in base di andare verso il CD4094 del secondo LCD.
Ecco un piccolo programma che permette di verificare il funzionamento.
Ho usato come linea di selezione il BIT7, perché circuitalmente mi veniva più comodo sulla breadboard, ma ovviamente qualsiasi altra linea è equivalente.

CODICE:

10 SETIO=&H2006f 'lcd in modo 2w
20 OUTBIT(7)=0 'seleziono il primo LCD
30 LCDINIT 'lo inizializzo
40 LCDCLEAR 'lo pulisco, superfluo ma utile in fase di smanettamento
50 OUTBIT(7)=1 'idem per il secondo LCD
60 LCDINIT
70 LCDCLEAR
80 a=RIGHT(DATE,8) 'prendo l'ora, giusto per avere qualcosa in movimento
90 OUTBIT(7)=0 ' seleziono il primo LCD
100 LCDPOS=17 'mi posiziono al primo carattere della prima riga
110 LCDWRITE="CIAO1 "&A 'scrivo l'ora preceduta da CIAO1
120 OUTBIT(7)=0 'seleziono il secondo LCD
130 LCDPOS=17 'idem come sopra
140 LCDWRITE="CIAO2 "&A
150 USBOUT=a 'mando sull'usb l'ora, utile in smanettamento per capire la causa di un lcd muto
160 GOTO 80


In pratica, un orologio dual display...
Collegando un solo display, o due in parallelo senza il circuitino, appare la scritta alternata CIAO1/2 seguita dall'ora.
Inserendo il circuito, il primo LCD scriverà CIAO1 seguito dall'ora, il secondo CIAO2 seguito dall'ora, e l'aggiornamento dell'ora sarà in sincrono sui due display.






Valid XHTML 1.0 Strict



[ Back to top ] [ Home ]