Forum: Mikrocontroller und Digitale Elektronik Verständnisfrage controllerlose GLCDs


von Reinhard R. (reirawb)


Lesenswert?

Hallo,

Beitrag "Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus"
ich verfolge hier diesen und andere Threads, die sich mit den 
controllerlosen GLCDs beschäftigen.

Soweit ich das verstanden habe, wird der Bildinhalt kontinuierlich 
zeilenweise in das Display geschoben, bis das Bild komplett ist, dann 
das Ganze von vorn mit einer bestimmten Wiederholfrequenz. Ich lese nun 
im Datenblatt des im o.g. Thread verwendeten 320 x 240 Displays 
(http://www.mark-products.com/pdf/g320x240/159/159%20spec.pdf) eine 
"Shift Clock Period" von min. 152ns. Daraus ergibt sich rein rechnerisch 
die Ladezeit für eine Zeile von 152ns * 320 / 4 = 12,16µs und für das 
komplette Bild von 12,16µs * 240 = 2,9184ms. Das ergibt eine 
Wiederholfrequenz von über 340Hz. Im DB lese ich aber etwas von 70Hz.
Also müssen irgedwo Pausen eingelegt werden.
Aber wo?
1. Ich kann den Pixeltakt so langsam einstellen, daß ich auf die 70Hz 
komme, also 744ns "Shift Clock Period"
2. Ich schiebe die Pixel für eine Zeile so schnell wie möglich in das 
Display und verzögere die nächste Zeile um auf die 70Hz zu kommen, also 
59,5µs je Zeile.
3. Ich schiebe den kompletten Bildinhalt so schnell wie möglich in in 
das Display und warte dann eine entsprechende Zeit bis zum nächsten 
Bild.

Ich habe mir die Software von "Benedikt K. (benedikt)" aus dem o.g. 
Beitrag angesehen und meine, dort die Version 2 herauszulesen.

Kann das jemand bestätigen?
Stimmen meine sonstigen Ausführungen oder liege ich total daneben?
Gibt es zu dem Thema sonst noch Infoquellen?
Google war zwar schon mein Freund, aber nicht sehr erfolgreich, die 
meisten Anderen machen meist mit den SED bzw S1D-Controllern rum.

Reinhard

von Benedikt K. (benedikt)


Lesenswert?

Reinhard Richter schrieb:
> Soweit ich das verstanden habe, wird der Bildinhalt kontinuierlich
> zeilenweise in das Display geschoben, bis das Bild komplett ist, dann
> das Ganze von vorn mit einer bestimmten Wiederholfrequenz.

Genau.

> 1. Ich kann den Pixeltakt so langsam einstellen, daß ich auf die 70Hz
> komme, also 744ns "Shift Clock Period"

So machen es die meisten LCD Controller.

> 2. Ich schiebe die Pixel für eine Zeile so schnell wie möglich in das
> Display und verzögere die nächste Zeile um auf die 70Hz zu kommen, also
> 59,5µs je Zeile.

So mache ich das in der Software. Diese Pause steht der AVR dann für 
andere Aufgaben zur Verfügung.

> 3. Ich schiebe den kompletten Bildinhalt so schnell wie möglich in in
> das Display und warte dann eine entsprechende Zeit bis zum nächsten
> Bild.

Das funktioniert nicht, denn dann ist die letze Zeile länger an als der 
Rest und diese leuchtet somit stärker auf.

> Google war zwar schon mein Freund, aber nicht sehr erfolgreich, die
> meisten Anderen machen meist mit den SED bzw S1D-Controllern rum.

Das sind so ziemlich die einzigen Controller die solche ICs ansteuern 
können und die auch einigermaßen erhältlich sind.

von Reinhard R. (reirawb)


Lesenswert?

>> 1. Ich kann den Pixeltakt so langsam einstellen, daß ich auf die 70Hz
>> komme, also 744ns "Shift Clock Period"

>So machen es die meisten LCD Controller.

Also kann ich mir das so vorstellen, dass immer die vorhergehende Zeile 
gespeichert ist und angezeigt wird, solange die nächste eingeschoben 
wird?

>> 2. Ich schiebe die Pixel für eine Zeile so schnell wie möglich in das
>> Display und verzögere die nächste Zeile um auf die 70Hz zu kommen, also
>> 59,5µs je Zeile.

>So mache ich das in der Software. Diese Pause steht der AVR dann für
>andere Aufgaben zur Verfügung.

Glasclever :-)

>> Google war zwar schon mein Freund, aber nicht sehr erfolgreich, die
>> meisten Anderen machen meist mit den SED bzw S1D-Controllern rum.

>Das sind so ziemlich die einzigen Controller die solche ICs ansteuern
>können und die auch einigermaßen erhältlich sind.

Na ja, AVR können es ja auch, sicher nicht so perfekt, aber immerhin...

Danke für Deine Antwort - und mach weiter so ;-)

Reinhard

von Benedikt K. (benedikt)


Lesenswert?

Reinhard Richter schrieb:

> Also kann ich mir das so vorstellen, dass immer die vorhergehende Zeile
> gespeichert ist und angezeigt wird, solange die nächste eingeschoben
> wird?

Ja, bis zum Latchpuls der die eingeschobenen Daten übernimmt und an die 
Spalten ausgibt. Der Impuls ist gleichzeitig auch der Schiebeimpuls für 
ein internes Schieberegister ist, das zur nächsten Zeile weiterschaltet.

von Reinhard R. (reirawb)


Lesenswert?

OK, danke, jetzt sehe ich klarer :-)

Reinhard

von Reinhard R. (reirawb)


Lesenswert?

Noch eine Frage zum Thema:

Ich habe heute 2 dieser Displays bekommen:
http://www.optrex.co.jp/us/product/catalog/pdf_dmf/50036ase.pdf

Im Großen und Ganzen meine ich, die Ansteuerung verstanden zu haben. Auf 
Seite 10 sind die Anschlüsse beschrieben. Wozu dient aber der Anschluß 
"M" (Alternate Signal for LCD Drive)? Entspricht der eventuell bei 
anderen Displays dem OnOff-Anschluß?

Reinhard

von Benedikt K. (benedikt)


Lesenswert?

Nein, der M Anschluss dient zum Umpolen der Spannung die das Display 
bekommt. Ohne diese Wechselspannung wird der Flüssigkristall im Display 
durch elektrolytische Effekte zerstört.
Die einfachste Lösung ist, M einmal pro Bild zu toggeln. Dies kann man 
leicht durch ein D-Flipflop machen, so wie ich das bei der AVR Schaltung 
auch gemacht habe.

von Reinhard R. (reirawb)


Lesenswert?

Ah ja, danke für die Info. Das ging ja schnell :-)

Reinhard

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.