PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : TG12864B Schriftzeichen



mitsh
09.06.2009, 14:28
Hallo,

Ich versuche gerade meine ersten Schritte mit dem Atmega32 und dem
TG12864B-13(R)

Angeschlossen hab ich:

Port A -> Daten-Port
DB0..7 -> PA0..7

Port D -> Command-Port
D/I -> PD0
R/W -> PD1
E -> PD2
CS1 -> PD3
CS2 -> PD4
RST -> über 10K Ohm an VCC

Zum Testen hab ich die Dateien von Apetec mal
aufgespielt.

Soweit scheint es ja zu funktionieren nur stimmt was mit den Zeichen
nicht

http://www.mikrocontroller.net/attachment/52235/p1010004.jpg

Ich bin für jeden Tip dankbar.

Grüsse Micha

Jaecko
10.06.2009, 13:24
Das Bild ist leider etwas sehr gross, d.h. Laden dauert zu lange. => bricht ab.
Wär evtl ne 800x600-Version auch möglich?

mitsh
10.06.2009, 20:35
klar, sorry

Grüsse mitsh

Jaecko
10.06.2009, 21:28
Perfekt.
Also was mich da schon mal irritiert: Diese schwarzen Zeichen in der unteren Zeile... sind die auch vom Display? Sehen sehr schwarz aus im Vergleich zu den blasseren Zeichen darüber. Von der Verkabelung isses schon so angeschlossen, dass Pin 1 vom Display nicht DB0 sondern DB7 ist?
Ansonsten sieht der Anschluss richtig aus.

Kannst du den Code auch mal reinstellen? Glaub dass da irgendwas noch nicht stimmt.

mitsh
10.06.2009, 22:15
Hey Jaecko,

Die Verkabelung von dem Daten Port ist DB0 -> PB0, DB1 -> PB1, ..., DB7 -> PB7. Ich habs grad auch mal ausprobiert umzudrehen dann leuchten alle Pixel.

Im Anhang hab ich den Code abgelegt.

Ich habe grad auch noch herausgefunden das wenn ich in dem String eine einzelne Zahl oder Buchstabe reinschreibe, ks0108PutString("5", largeFont); die einwandfei dargestellt werden.

Ich denk demnach, dass sich die Buchstaben überlagern. Nur weis ich nicht wie ich das beheben kann.

Jaecko
11.06.2009, 10:01
Hm komisch. So beim Überfliegen hab ich jetzt keinen groben Fehler gefunden.

Ich hab mal meinen Code für den KS0108 mit angehängt. Der funktioniert bei mir; wenn er das bei dir auch tut, muss ich nochmal in deinen Code reinschauen. Wenns auch nicht geht, scheints doch noch irgendwo ein Hardware-Problem zu sein.

Die Dateien einfach einbinden, die _cfg.h natürlich anpassen.
KS0108_Init() zum initialisieren,
KS0108_PutS (ui8_t x, ui8_t y, char *chr, ui8_t color); zum Text schreiben.
x/y: Koordinaten, chr: Text, color: 1 = normale Darstellung, 0 = invertiert.
Als Schrift hab ich da die klassische 5x7 von nem HD44780 übernommen.