~
Progetti ~
- powered
by JavaScript -
Display LCM 557
Si tratta di un display grafico da 480x128
pixel, reperibile nelle fiere di elettronica a basso prezzo perchè sprovvisto di controller sulla
scheda, caratteristica che lo rende estremamente scomodo da
pilotare.
Datasheets
?
Queste sono le scansioni delle 4 fotocopie che vengono date assieme al display ; non si riferiscono proprio all'LCM557 ma ad un modello simile (LM57).
General
Description
Absolute
Maximum Ratings
Interface
Description
Timing
Characteristics
Optical
Characteristics
Optical
Graphs
Block
Diagram, Display Pattern, Outline Dimensions, Power Supply
Connections
Breve
descrizione del funzionamento
Funzionamento
Come
mostrato nella figura sottostante, questo display è diviso in 4 quadranti,
ognuno di 240 x 64
pixels, controllati dalle
linee D1, D2, D3 e D4 (per i dati), da CL1 e CL2 (clock) e da FLM (inizio quadro).
Il pilotaggio avviene in multiplex, i dati vengono inviati dal µ
al display una riga per volta ai quattro quadranti attraverso i
pins D0, D1, D2 e D3 per i dati da visualizzare e CL1, CL2 ed FLM
per i segnali di controllo.
Ad ogni transizione H-L di CL2, i dati presenti sulle linee D1..D4 vengono memorizzati nelle quattro catene di shift-registers che pilotano le colonne. Per caricare una riga servono quindi 240 colpi di clock, tanti quanti le colonne del display.
Perche la riga caricata venga visualizzata, è necessario portare CLvisualizzare
La transizione H-L di CL1 mentre FLM è alto determina l'inizio
del quadro, ovvero l'abilitazione della prima riga di ogni
quadrante (che mostrerà i dati presenti sugli shift registers
delle colonne in quel momento). Ovviamente, prima
dell'abilitazione di questa prima riga, i 240 shift registers
vanno caricati con i dati opportuni.
Ad ogni successiva transizione H-L di CL1, l' "1"
caricato nel primo dei 64 shift-registers delle righe viene fatto
scorrere verso il basso, abilitando di volta in volta la seconda,
la terza, la quarta riga fino all'ultima. Quando l' "1"
è uscito dalla sessantaquattresima riga, è necessario
reinserirlo nel primo degli shift-registers, ripetendo la stessa
sequenza di segnali.
In fase di prova ho mantenuto permanentemente le linee D1 e D3 a +5V, e D2 e D4 a massa : in questo modo vedo accendersi completamente il primo ed il terzo quadrante e vedo spenti il secondo ed il quarto.
CL1
__________________-___________________-______________-__//__-_...
FLM
_________________--____________________________________//____...
CL2 __-_-_240 volte_-_-_____-_-_240 volte-_-_-_____-_-_240
volte-_-_-___...
D1 __DDDDDDDDDDD_____DDDDDDDDDDD_____DDDDDDDDDDD___...
D2 __DDDDDDDDDDD_____DDDDDDDDDDD_____DDDDDDDDDDD___...
D3 __DDDDDDDDDDD_____DDDDDDDDDDD_____DDDDDDDDDDD___...
D4 __DDDDDDDDDDD_____DDDDDDDDDDD_____DDDDDDDDDDD___...
D = Dati : 1 = pixel acceso (nero); 0 = pixel spento. I dati vengono memorizzati negli shift-registers durante la transizione H-L di CL2.
Per disegnare un quadro
completo servono 64 x 240 = 15360 colpi di clock su CL2. Per avere
un refresh di 65.1 Hz serve una frequenza di 1MHz su CL2,
corrispondente a 4 milioni di pixel al secondo.
1 | Input | D2 | Display data : quadrante in alto a destra |
2 | Input | FLM | First Line Marker |
3 | Input | M | Control for A.C. drive |
4 | Input | CL1 | Control signal for latching the serial data |
5 | Input | CL2 | Control signal for shifting the serial data |
6 | Input | D4 | Display data : quadrante in basso a destra |
7 | Power | Vdd | Alimentazione circuiti logici (+5V) |
8 | Power | Vss | Massa |
9 | Power | Ve | Alimentazione LCD (-12V) |
10 | Power | Vo | Contrasto (0..-12V) |
11 | Input | D1 | Display data : quadrante in alto a sinistra |
12 | Input | D3 | Display data : quadrante in basso a sinistra |
13 | n.c. | - | - |
14 | Backlight | Retroilluminazione | [2] EL Backlight |
15 | n.c. | - | - |
16 | Backlight | Retroilluminazione | [2] EL Backlight |
Nota
: la presente piedinatura si riferisce al connettore presente
sulla destra del display, ovvero sul 'lato corto'. Il pin 1 di
questo connettore è il primo verso l'alto. L'altro connettore,
quello a 12 pin, rimane inutilizzato.
Nota [2] : Da questi piedini partono due piste
che vanno sotto la superficie del display. Il mio display ha
retroilluminazione EL, ossia è retroilluminato da un sottile foglio in plastica contenente materiale
fluorescente che, se sottoposto ad una tensione alternata di circa un centinaio di volt, si illumina.
Circuiti di controllo
Quello
che segue è lo schema di
un primo circuito di controllo.
L'immagine sul display è "fissa", memorizzata nella
EPROM, ed oltre ai +5V per l'alimentazione dei vari IC è
necessaria anche una tensione di -12V per il corretto
funzionamento del display.
Questo circuito non ha applicazioni, può essere utilizzato però
per verificare il corretto funzionamento del display. Se
il display è stato acquistato a prezzi d'occasione, può infatti
capitare che alcuni pixel non funzionino.
Note : e' consigliabile usare per U1 un 74HC74.
27C128.BIN - Contenuto della EPROM
Ho usato la EPROM, oltre che
per contenere l'immagine, per la generazione dei segnali di
controllo (fine riga, nuova riga, inizio quadro) necessari al
display.
Graphic Display Controller
Di seguito un paio di foto del
circuito di controllo del display in versione definitiva, da solo
e collegato alla C501-SBC. Entrambi i pcb sono a doppia faccia e
con fori metallizzati, dimensioni 80 x 120 mm.
Questo circuito può essere collegato a praticamente
qualsiasi microcontroller o microprocessore in grado di gestire
della memoria esterna (68HC11, PIC17C44, 8051, Z80,
6502, ... ), in quanto viene "visto" come una
comunissima RAM da 8K (come una 6264).
Il microcontroller può scrivere o leggere qualsiasi byte
e non è obbligato a rispettare nessuna temporizzazione
(il ciclo di scrittura di un byte può durare anche 1 ora);
inoltre il refresh del display viene mantenuto anche
durante l'accesso alla memoria, sia in lettura che in scrittura.
Il tutto funziona con tensione di alimentazione singola
(+5V) e incorpora un convertitore DC-DC per la
generazione della tensione negativa di -12V necessaria al display.
Schema elettrico del circuito.
27C128.BIN - Contenuto della EPROM.
Altri schemi
Paolo Carrer ha disegnato lo schema di un
altro circuito di controllo, sempre basato sul blocco composto
dai due contatori e dalla EPROM, che usa una comunissima RAM tipo
6264 al posto della IDT7005.
Questo schema, nonostante non sembri contenere errori, non è
stato realizzato e provato : ringrazierò chi lo farà e mi darà
conferma del funzionamento.
Schema elettrico (578K)
Consiglio di usare degli integrati HCMOS al posto degli LS.
This page is (always) under construction.