Hi, ich hab mir ein Display mit dem ST7529 Controller gekauft und kann es bereits über GPIOs (der Prozessor hat keinen Datenbus) ansteuern. Bilder usw. werden richtig angezeigt. Gibt es eine Möglichkeit, dass man z.B. nur ein paar wenige Pixel in einem bereits bestehenden (angezeigten) Bild updaten kann? Zum Beispiel möchte ich gerne oben rechts eine Uhrzeit anzeigen. Wenn ich jetzt jede Sekunde das komplette Bild refreshen muss, sieht das natürlich nicht besonders toll aus. Gruß Marco
Ohne jetzt diesen LCD Controller zu kennen (und zu faul das nachzulesen...): Es gibt mehrere Lösungsansätze für das Problem. 1.) Der Controller unterstützt mehrere Layer, die überlagert werden können. Siehe z.B. SED1335 http://www.lcd-module.de/eng/pdf/zubehoer/sed1335.pdf 2.) Nachbildung der 2-Layer-Technik durch 2 Rambereiche im uC, die vor der Ausgabe jeweils mit "OR" verknüpft werden. Ggf. nur Teilbereich ausgeben, der sich verändert hat (dann evtl. 3. Ramlayer nötig) oder Bereich, in welchem die Änderung "bekannt" ist ("rechts oben"). 3.) Ähnlich 2.), aber nur den "bekannten" Teilbereich des LCDs jeweils adressieren und überschreiben, in welchem sich die Uhranzeige befindet. Daten vorher im uC Ram bilden. Generell ist dazu zu raten, einen uC mit externem Daten-/(Teil-)Adressbus einzusetzen, da dies die Sache erheblich beschleunigt. Nennt sich manchmal "microprocessor mode". Denn i.d.R. haben LCD Controller eine "Autoincrement-Write" Funktionalität, d.h. man kann einen kompletten Speicherblock schnell ausgeben, ggf. sogar per DMA, die Steuersignale erzeugt das Speicherinterface automatisch. Achja: Und Ram sollte man auch ziemlich viel haben... Gruss
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.