Forum: Mikrocontroller und Digitale Elektronik Grafikdisplay (T6963C) Hard- oder Softwarefehler?


von Steve (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Community!

Ich versuche seit längerer Zeit ein graphisches LCD mit integriertem 
T6963C-Controller anzusteuern. Dazu habe ich mir eine kleine Schaltung 
auf Lochraster gelötet um das Display zu testen und die Software zu 
entwickeln. Dann habe ich ein kleines Programm geschrieben, welches das 
Display im Text Mode mit '-' füllt. Das Ergebnis seht ihr im Anhang.
Aus irgendeinem Grund scheinen die Zeichen zuerst zwei Pixel, 
anschliessend ein Pixel nach unten verschoben zu sein. Was man auf dem 
Foto nicht so deutlich erkennt: die Fläche auf der die Zeichen 
verschoben sind scheint ein bisschen heller, als wäre der Kontrast zu 
hoch eingestellt.
Nun frage ich mich ob es sich hierbei um einen Soft- oder Hardwarefehler 
handelt. Ich tippe auf den Code, denn ein solches Verhalten hätte ich 
bei einem Hardwaredefekt nicht erwartet.
Tut mir leid, dass der Code ein wenig unsorgfältig geschrieben ist, das 
werde ich verbessern sobald ich weiss dass das Display i.O. ist.

Beim Display handelt es sich um ein 'DEM 240128D SBH-PW-N (A-TOUCH)' mit 
240x128 Pixeln.

Habt ihr eine Idee wo das Problem liegen könnte?

Vielen Dank im Voraus :)

Steve

von spess53 (Gast)


Lesenswert?

Hi

>  glcd_data(0x28);
>  glcd_data(0x00);
>  glcd_cmd(0x41);//text area set

Ist das Display auch mit FS auf 6 Bit/Zeichen eingestellt?

MfG Spess

von Steve (Gast)


Lesenswert?

Danke für die Antwort.
Habe das kurz geprüft. Laut Software sollte FS auf 0 liegen, jedoch 
messe ich am FS Pin am Display trotzdem 5V. Scheint wohl ein Fehler in 
der Schaltung zu sein.

Steve

von spess53 (Gast)


Lesenswert?

Hi

>Habe das kurz geprüft. Laut Software sollte FS auf 0 liegen, jedoch
>messe ich am FS Pin am Display trotzdem 5V. Scheint wohl ein Fehler in
>der Schaltung zu sein.

FS=H ist doch 6x8 Font.

MfG Spess

von Steve (Gast)


Lesenswert?

Also ich habe jetzt FS mit GND verbunden (8x8 Font) und den Code 
angepasst:
1
glcd_data(0x1E);
2
glcd_data(0x00);
3
glcd_cmd(0x41);//text area set

Das Display zeigt jetzt alle Zeichen fehlerlos an. Da aber die 
'eigentlichen' Zeichen trotzdem nur 5 Pixel breit sind, aber von 
Zeichenanfang zu Zeichenanfang trotzdem 8 Pixel (wegen 8x8) gesprungen 
wird, ergibt sich ein relativ grosser Abstand zwischen den Zeichen. Aber 
ich denke das ist normal, oder?

Soweit ich das sehe würde ich sagen das es bei 8x8 funktioniert, ist 
jedoch 6x8 gewählt (in Hard- & Software), funktioniert es nicht richtig 
und es werden dann Zeichen verschoben.

Was mache ich falsch? Was kann ich tun um das LCD im 6x8-Modus zu 
betreiben?


Steve

von Steve (Gast)


Lesenswert?

spess53 schrieb:
>>Habe das kurz geprüft. Laut Software sollte FS auf 0 liegen, jedoch
>>messe ich am FS Pin am Display trotzdem 5V. Scheint wohl ein Fehler in
>>der Schaltung zu sein.
>
> FS=H ist doch 6x8 Font.

Deshalb dachte ich auch, alles wäre i.O.
Ich konnte mir bloss nicht erklären, wieso FS=H war.
Jetzt habe ich alles auf 8x8 angepasst, (FS=L und TA=0x1E) und es 
scheint zu funktionieren. Nur wieso es bei 6x8 nicht klappt, ist mir ein 
Rätsel :D

Steve

von spess53 (Gast)


Lesenswert?

Hi

>Das Display zeigt jetzt alle Zeichen fehlerlos an. Da aber die
>'eigentlichen' Zeichen trotzdem nur 5 Pixel breit sind, aber von
>Zeichenanfang zu Zeichenanfang trotzdem 8 Pixel (wegen 8x8) gesprungen
>wird, ergibt sich ein relativ grosser Abstand zwischen den Zeichen. Aber
>ich denke das ist normal, oder?

Ja. Der eigentliche Zeichensatz ist 5x7 Pixel und der wird in einem 6x8- 
oder 8x8-Feld dargestellt.

>Was mache ich falsch?

Kann ich dir im Moment nicht sagen. Wenn der 8x8-Mide nicht 
funktionieren würde hätte ich bei dem Bild auf einen Hardwarefehler 
getippt.
Evtl. solltest du mal die Speicheraufteilung (Grafik/Text Home) aus dem 
Datenblatt testen.

>Was kann ich tun um das LCD im 6x8-Modus zu betreiben?

Willst du das wirklich? Der Textmode ist eher bescheiden. Habe ich vor 
vielen Jahren mal getestet und verworfen. Der Knackpunkte ist nämlich: 
Im Grafikmode werden bei 6x8 auch von jedem Byte 2 Pixel abgeschnitten.

MfG Spess

von Steve (Gast)


Lesenswert?

Vielen Dank für deine Antwort.

spess53 schrieb:
> Evtl. solltest du mal die Speicheraufteilung (Grafik/Text Home) aus dem
> Datenblatt testen.

Ok. Werde ich demnächst ausprobieren.

spess53 schrieb:
>>Was kann ich tun um das LCD im 6x8-Modus zu betreiben?
>
> Willst du das wirklich? Der Textmode ist eher bescheiden. Habe ich vor
> vielen Jahren mal getestet und verworfen. Der Knackpunkte ist nämlich:
> Im Grafikmode werden bei 6x8 auch von jedem Byte 2 Pixel abgeschnitten.

Gut, dann werde ich mein Programm mit der 8x8-Einstellung 
weiterentwickeln.

Steve

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.