Tecnologia dei Cristalli Liquidi
Controller/Driver HD44780-HW Controller/Driver HD44780-SW
Connettore Modulo LCD Interfaccia Parallela LPT1
Applicazioni Software Progetti Hardware
Download INDICE

 Display LCD

LCD-Applicazioni Software

  Applicazioni Software

PROGETTO n° 03 - 2/11 [38 di 65] 

               

Analisi del Problema · Analisi del Codice · Procedure importanti · Schema interfaccia · Descrizione dello schema
Modulo LCD su parallela LPT1 - Editor di 2 linee, 16 o 40 chr/linea - Controller/Driver HD44780
Analisi del Problema

               

bullet

Il progetto si occupa della gestione di un Visualizzatore a Matrice di Punti a cristalli liquidi, organizzato su 2 linee da 16 o 40 caratteri ciascuna.

               

bullet

Come negli altri progetti proposti in questa Sezione, il display LCD è montato su un Modulo LCD ed è governato dal controller HD44780, del quale sono disponibili tutti i dettagli, sia sul suo funzionamento hardware che sulle sue necessità software...

               

Ricorda... Questo progetto è la versione potenziata e ottimizzata del precedente e si basa su un'idea originale di Paolo Rallo; si tratta di una soluzione assembly alternativa, in sintonia con le tecniche e la linea editoriale tipica di ogni altro applicativo di questo Sito.

               

bulletCome il precedente, realizza in pratica un Editor per LCD, interfacciandosi con la tastiera del PC per il controllo totale della scrittura su un Modulo LCD , garantendo contemporaneamente l'eco a video delle operazioni imposte sul display.
bulletLa pressione del tasto F1 consente di intervenire sui 2 visualizzatori (LCD e a video), adattandoli al collaudo di 2 diverse tipologie, entrambe a 2 linee, ma con 16 caratteri oppure con 40 caratteri per riga.

               

bulletLa comprensione dell'idea che sta alla base del progetto comporta la conoscenza del modo con cui il controller HD4478 gestisce i caratteri sul suo visualizzatore.
bullet Come è noto ciascuna posizione LCD corrisponde ad una delle 80 locazioni di memoria RAM per i dati (detta DDRam, Display Data Random access memory).
bullet

Ciascuna locazione DDRam può essere indirizzata con un numero esadecimale, da 00H a 27H per i 40 caratteri della prima riga e da 40H a 67H per i 40 caratteri della seconda riga.

               

bullet

Risulta evidente che, variando da 16 a 40 il numero di caratteri per riga, per poter collocare i caratteri in sequenza alternativamente su entrambe le righe bisogna controllare l'indirizzo esadecimale.

               

bullet

Ed è proprio questa la parte più impegnativa del progetto, resa trasparente dall'innocua pressione di F1, ma in realtà piuttosto impegnativa; ogni azione di editing, dalla scrittura vera e propria allo spostamento a vuoto del cursore, dovrà fare i conti con la dimensione desiderata per i display, garantendo comunque la circolarità della scrittura dei caratteri e della posizione del cursore.

bullet

Per il visualizzatore LCD si dovrà intervenire in modo dinamico sul byte d'indirizzo della DDRam, coinvolgendo le 16+16 locazioni da 00H a 0FH (per la prima riga) e da 40H a 4FH (per la seconda riga) o le 40+40 locazioni da 00H a 27H (per la prima riga) e da 40H a 67H (per la seconda riga).

bullet

La necessità di riprodurre, contemporaneamente, il medesimo effetto anche sul visualizzatore a video porterà il suo contributo di complessità.

               

bullet

In conclusione, il controllo dell'Editor per LCD garantisce comunque:
bullet

la circolarità della scrittura dei caratteri assunti da tastiera, intervenendo in modo dinamico sul byte d'indirizzo della DDRam

bullet

l'intervento sulla posizione di stampa, spostando il cursore senza scrivere, con Invio (manda a capo) e con tutti i tasti di movimento (le 4 frecce, PgUp, PgDn, Home e End)

bullet

la correzione dei testi già scritti con BackSpace (cancella indietro), intervenendo con spazi sia nelle locazioni DDRam che nell'eco a video.

bullet

la cancellazione (con F2) di entrambi i display (riempiendo di spazi sia tutte le locazioni DDRam che il campo di acquisizione dell'eco a video)

               

bulletPer il controllo del Modulo LCD il progetto prevede la programmazione della porta parallela standard SPP (Standard Parallel Port) LPT1.

               

Attenzione ! NB: Con i moderni Sistemi Operativi (Windows NT, Windows 2000, Windows XP ) non è più concesso l'accesso diretto alle porte di Input/Output dall'ambiente Assembly o dai linguaggi di programmazione (Pascal, Delphi, Visual Basic ...), come si poteva fare prima con Windows 95/98/ME.

    

bulletQuando si tenta, come fa il nostro progetto, un Output agli indirizzi Hardware viene generata una segnalazione d'errore di "istruzione protetta" o, semplicemente non succede nulla...

    

bulletNaturalmente un problema di questo tipo non poteva rimanere irrisolto: puoi accedere al driver che restituisce l'accesso diretto all'Hardware del computer in ambiente Window2000/NT/XP cliccando su questo link:

    

bullet Visibilità delle operazioni di I/O in ambiente Windows 2000/NT/XP

    

Pagina Precedente Display LCD Pagina Successiva PROGETTO n° 03 - 2/11   Torna alla Home della Sezione Lezioni - Vai al DownLoad dei files DOC Torna al Menu di "Dentro al Computer"
38 di 65
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65

    

Display LCD » Tecnologia dei Cristalli Liquidi | Controller/Driver HD44780-HW | Controller/Driver HD44780-SW
Connettore Modulo LCD | Interfaccia Parallela LPT1 | Applicazioni Software | Progetti Hardware Download | INDICE
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati