Forum: Mikrocontroller und Digitale Elektronik 128 x 64 LCD 1 bit läßt sich nicht lesen


von Sebastian Amthor (Gast)


Lesenswert?

Habe ein 128 x 64 Grafik Lcd. Daten schreiben funzt ohne Probleme, aber
wenn ich z.B. nur einen Pixel setzen will, dann muß ich ja die
entsprechende Adresse erst auslesen, ändern und wieder zurück
schreiben. Das funktionert auch fast, aber 1 bit bleibt immer 1... also
wenn ich eine Page komplett lese und an eine andere stelle kopiere,
dann hab ich immer einen strich einmal quer durch. Wenn ich etwas
schreibe ohne vorher zu lesen geht es, nur muß man ja leider immer
jedes byte lesen um einen einzelnen Pixel zu setzen.
bsp. bit 5 ist gesetzt. wenn ich jetzt das 6. bit noch setzen will muß
ich ja vorher lesen weil sonst bit 5 wieder null ist.

von Benedikt (Gast)


Lesenswert?

Kannst du mir sagen warum meine Schaltung nicht läuft ?
Natürlich nicht, denn du kennst meine Schaltung nicht.
Genauso geht es jedem, der dein Problem liest: Es wäre hilfreich zu
wissen welchen Controller dein Display hat, und welche Befehle du
verwendest...

von Sebastian Amthor (Gast)


Lesenswert?

hehe
ist ein KS108B mit wie gesagt 128x64 pixel.
Befehl: R/W + D/I auf High, dann enable puls.
Byte einlesen und ein bit ist immer auf 1 auch wenn in wirklichkeit 0
ist. Also wenn ich ein byte auslese z.B. 0b00000000 und dann genau das
selbe byte zurückschicke ist es nicht mehr 0x00000000 sondern
0b00000010.

Schreiben funktioniert aber. Also wenn ich 0b01010101 schreibe wird es
korrekt angezeigt. lese ich das wieder aus und schreibe es zurück (ohne
es zu verändern) so habe ich dann 0b01010111 auf dem LCD.

Ich vermute das ding hat ne macke in der logik.

von thkais (Gast)


Lesenswert?

Schau Dir mal die D1-Leitung genau an, das hört sich ziemlich nach einem
Hardware-Problem an - z.B. eine schlechte Lötstelle oder eine Brücke
irgendwo.

von Volker (Gast)


Lesenswert?

Hallo Sebastian,

wenn ich mich richtig erinnere musst du beim KS108B zweimal die Daten
auslesen um das korrekte Ergebnis zu bekommen. Beim ersten auslesen
gibt er dir alte Daten aus und erst beim zweiten auslesen bekommst du
die korrekten Daten.
Vielleicht liegt es ja nur daran.

Gruß Volker.

von Sebastian Amthor (Gast)


Lesenswert?

an dem 2 mal lesen kann es nicht liegen.
Habe Page und Adresse gesetzt z.B. beides 0, dann lese ich die
komplette zeile (welche leer ist) in ein 64 byte array. anschließend
schiebe ich das array auf eine andere Page und dann hab ich den
besagten Strich einmal über die ganze Page.

Zur Lötstelle... hab mal das Teil neu angeschlossen (neu gelötet), auch
wenn ich glaube das dies nix bringt, weil Schreiben hat ja
funktioniert, aber mal gucken... vielleicht bringt es ja doch was

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.