Hallo Zusammen! Ich hoffe ich poste meine Frage hier im richtigen Forumsbereich. Folgendes Problem: Ich habe hier ein Grafikdisplay Typ PG192128B (192x128 dots, Datenblatt im Anhang) und versuche dieses mit einem ATmega328P anzusteuern. Den Quellcode habe ich von http://www.frozeneskimo.com/electronics/2007/03/30/lc7981hd61830-driver-for-el-backlit-samsung-lcd/. Diesen habe ich ein wenig auf meinen Controller angepasst. Ich benutze den PortC für die Displaysteuerung, die Ports -B und -D für die Datenübertragung (PortB untere 4Bit PortD obere 4Bit). Es funktioniert auch im Prinzip alles genauso wie ich mir das vorstelle, doch leider immer nur bis Pixel 159, ab 160 verrutscht er um eine "Zeile" nach unten und springt 2Byte weiter nach rechts, also auf Pixel 175, egal in welche "Zeile" ich schreibe. Die Eckdaten des Displays sind alle richtig eingetragen, und auch die gesammte Initialisierungsroutine ist mit dem Datenblatt stimmig (für Grafikbetrieb). Ich weiss keinen Rat mehr. Habt Ihr eventuel einen Tip für mich? Vielen Dank für Eure Mühe Greetz Daniel
Hallo Daniel, ich verzweifele gerade an der gleichen Aufgabe. Ein Problem scheint die Umschaltung der Zeilendecoder (80+48) und der Spaltendecoder (80+80+32) zu sein. Das Display-Datasheet gibt dazu nichts her. Ich kann nur in der linken oberen Ecke des Displays rummalen. Gibts bei dir schon Fortschritte? Beste Grüsse Thomas
Hallo, wenn es die PG192128B sind, die es z.Zt. bei ebay für knapp 10€ gibt, dann haben die eventuell einen Fehler in der Dekodierung wenn x > 159. Probiert die mal im Textmodus aus. Da tritt dieser Fehler auch auf. Gruss Jochen
habe ein winstar 160x160 mit lc7981, Ansteuerung funktioniert bis Zeile 130. Ab Zeile 130 wird der Inhalt von Zeile 0-30 erneut angezeigt. CS-Chipselect wird im übernommenen Code nicht angesteuert sondern auf + gesetzt. Weiß jemand, wie CS für den unteren Teil des LCD verwendet werden kann??
mein Problem ist geklärt, im Code von Sergeev ist der timeshift mit 128-1 angegeben, müsste für mein Display 160-1 sein. Cs muss nicht angesteuert werden, da nur ein chip. cs, rw u. rst werden im code nicht verwendet und gehören daher auf --+.
problem dürfte an variablenüberlauf liegen, unsingned char durch uint16_t ersetzen. geht dann zumindest bei lcd 160x160 problemlos
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.