MaXXX wrote:
> Also wo liegt mein fehler? ist meine vorstellung von ansteuerung eines> LCDs ganz falsch?
mag sein.
Kommt drauf an, auf welcher logischen Ebene du dich bewegen möchtest,
wenn du sagst 'Ansteuerung eines LCD'
Auf dem LCD selbst ist ein kleiner Prozessor drauf. Dieser Prozessor hat
Speicher mit, wobei jedes Bit in diesem Speicher mit einem Bildpunkt
korrspondiert.
Wenn du als Anwendungsprogrammierer das LCD programmierst, dann teilst
du im Grunde nur diesem LCD-Prozessor mit, welche Bits er in seinem
Speicher setzen oder löschen soll. Du machst das nicht auf Bitebene,
sondern du sagst ihm: 'A' ausgeben und der Prozessor setzt sich dann
selbst die Bits im Speicher. Ist aber nur eine Spitzfindigkeit, im
Grunde sagt dein Programm dem Prozessor welche Bits auf 0 sollen und
welche auf 1.
Tja. und dann kommt die 2.te FUnktion dieses Prozessors auch noch zum
Zug.
Der geht regelmässig seinen Speicher durch und schaltet entsprechende
Transistoren so durch, dass die Kristalle in der Anzeige einmal das
Licht blockieren und einmal nicht.
@karl heinz
genau der letzte absatz ist sehr interessant für mich.
also der µC geht den speicher durch und sendet es an die register
(möglicherweise über SPI-Schnittstelle)?
hat jedes einzelne pixel einen transistor?
falls ja wie genau werden die transistoren angesprochen?
MaXXX wrote:
>> hat jedes einzelne pixel einen transistor?
Da wird man, so wie du es beschrieben hast, über 2 Selektionregister
eine Matrixansteuerung machen.
Und ich glaub jetzt weiß ich auch, was dich verblüfft.
Du hast ein 'stehendes Bild', obwohl doch eigentlich die Zeilen und
Spaltenregister immer durchschalten.
Nun. So stehend ist dieses Bild gar nicht. Wenn du im richtigen Winkel
auf so ein LCD schaust UND möglichweise durch künstliche Beleuchtung
(Glühbirne) auch noch einen Lichttakt hast, dann kann man manchmal
sehen, dass die Pixel tatsächlich flimmern, also in kurzer schneller
Folge ein und wieder ausgeschaltet werden.
Und genau da liegt des Rätsels Lösung. Auch wenn immer nur eine Zeile
tatsächlich angesteuert wird, geschieht diese Umschaltung von einer
Zeile zur nächsten so schnell, dass du sie nicht siehtst.
Hier findest du zb das Datenblatt zum 44780 Controller.
http://fab.cba.mit.edu/classes/MIT/863.06/11.13/44780.pdf
da findet sich ein bischen was drinn
@heinz : danke
oh 2 minuten.
ok, bin nicht sofort drauf gekommen, da ich hier ein neues display
(24x96) habe.
nach dem man in dieses display ein bild reingeladen hat, kann man den
strom abschalten und das bild bleibt. ich wollte die normale LCD
ansteuerung dafür nehmen, das geht aber wohl nicht, da man ja natürlich
nur eine zeile sehen würde.
lol, was mache ich nun .... :)
> nach dem man in dieses display ein bild reingeladen hat, kann man den> strom abschalten und das bild bleibt.
??
> ich wollte die normale LCD> ansteuerung dafür nehmen,
Heist das du musst eine Controller für das Teil bauen, oder wie soll ich
das verstehen.
> lol, was mache ich nun .... :)
Na wenn das Display eh ganz von alleine immer den letzten Zustand
anzeigt, dann passt das doch. Dann stell dir einfach nur vor, dass du
mit dem Durchgehen der Zeilen, der jeweiligen Zeile einen neuen Wert
gibst, der solange vom Display ganz eigenständig angezeigt wird, bis im
nächsten Durchlauf diese Zeile neue Werte bekommt.
Hast du denn kein Datenblatt für dieses Display?
Die Ansteuerung eines LC-Displays selbst (also das, was z.B. der
HD44780-Controller an seinen Ausgängen zur 'Glasscheibe' mit den
Flüssigkristallen macht) ist noch ein wenig komplexer als sich hier
manche einreden möchten.
Die Flüssigkeit mit den Kristallen z.B. mag auf Dauer gesehen überhaupt
keine Gleichspannung. D.h. man darf eben nicht z.B. die rückseitige
Elektrode dauernd auf GND schalten und die vordere Elektrode(n) immer
nach + schalten, um die Kristalle auszurichten (Stichwort
"Elektrolyse"). Damit ist es bei dieser Art von LC-Diplays zwingend
erforderlich alle Elektroden zu multiplexen um über einen längeren
Zeitraum gesehen keinen (bleibenden) DC-Anteil zwischen zwei Elektroden
zu bekommen, der das Display allmählich zerstören und unbrauchbar machen
würde. Da man dies nicht 'zu Fuß' machen möchte - der Aufwand wäre mit
steigender Segment-Anzahl einfach zu hoch - gibt's eben die
schnuckeligen Controller, die einem diese Arbeit abnehmen (sollen).
naja aber jemand muss ja die controller erst entwickeln, die die arbeit
abnehmen ^^
kenne mich mit LCDs nicht soo gtut aus (habe auch kein datenblat zu
hand), würde aber dann halt ne wechselspannung reinsetzte, die Hz
abhängig von anforderung des displays.
aber egal.
mein display sieht zwar wie LCD aus, hat aber andere eigenschaften,
deswegen kann es ja gelade bild auch ohne strom halten.
Mfg