Guten nabelnd UC Gemeinde, ich möchte nicht wissen wie man ein GLCD programmiert keine Angst, ich versteh nur noch nicht so ganz wie man ein Pixel setz .... nach dem Datenblatt her hab ich das so verstanden.... Ein GLCD besteht aus ganz vielen 5x7 Dot Matrixen und ich muss Peer Code eines davon auf der X und Y Achse auswählen. Sobald ich dies getan habe kann ich dann in meinem ausgewählten Bereich einen Pixel setzten. Ist das so richtig oder bin ich auf dem Holz weg.
Pierre Gnauck schrieb: > ich > versteh nur noch nicht so ganz wie man ein Pixel setz Das macht der Controller auf der Displayplatine. Du sagst ihm nur per Befehl, wo er ein Pixel invertieren soll. Die Anzeigefläche ist homogen. Sie besteht z.B. aus 128x64 Pixeln.
Hi >Ist das so richtig oder bin ich auf dem Holz weg. Nein. Ja. >Das macht der Controller auf der Displayplatine. Du sagst ihm nur per >Befehl, wo er ein Pixel invertieren soll. Und wenn der Controller das nicht kann? MfG Spess
Ein GLCD besteht daraus, was im Datenblatt steht. Man kann das nicht verallgemeinern. Es gibt solche und solche...
spess53 schrieb: > Und wenn der Controller das nicht kann? Dann ist es eine Fehlentwicklung oder man hat eines der z.B. von pollin angebotenen "dummen Displays". Die werden aber mit anderen Signalen/Timings angesteuert. Siehe alte Beiträge von Benedikt Sauter.
Für gewöhnlich wird nicht ein einzelnes Bit an den Displaycontroller gesendet sondern ein ganzes Byte, das dann mehrere Pixels setzt oder löscht. Wenn Dein Display eine Matrix von 5 x 7 hat, dann werden das vermutlich 7 Bit sein, die in einem Schwung rüber müssen. Der Andere Weg, ein einzelnes Pixel zu setzen ist dann das Byte oder in Deinem Fall die 7 Bit aus dem Controller zu lesen, das betreffende Bit zu setzen und zurück zu schreiben.
>Für gewöhnlich wird nicht ein einzelnes Bit an den Displaycontroller >gesendet sondern ein ganzes Byte, das dann mehrere Pixels setzt oder >löscht. Bei meinem RGB Grafikdisplay muss ich zwei Bytes senden um nur einen einzigen Pixel zu setzen.
Hi >Dann ist es eine Fehlentwicklung oder man hat eines der z.B. von pollin >angebotenen "dummen Displays". Die werden aber mit anderen >Signalen/Timings angesteuert. Siehe alte Beiträge von Benedikt Sauter. Nö. Es gibt Displaycontroller, die Befehle zum Zugriff auf einzelne Pixel haben, z.B. T6863. Ein SED1520 oder die Controller der DOG-Displays, oder .... können das nicht. MfG Spess
Das besagte GLCD für das ich mich interessiere ist (das EA DOGS102-6) Das Datenblatt hab ich mir nun schon ein paar mal angeschaut aber so ganz versteh ich das nicht .... die Initialisierung ist kein Problem steht ja da :) .... aber wie ist das mit dem Mapping gemeint... sind MX und MY die Koordinaten wo dann mein Pixel steht ?? Mfg Bqube http://www.lcd-module.de/eng/pdf/zubehoer/uc1701.pdf
Hi >Das besagte GLCD für das ich mich interessiere ist (das EA DOGS102-6) >Das Datenblatt hab ich mir nun schon ein paar mal angeschaut aber so >ganz versteh ich das nicht .... die Initialisierung ist kein Problem >steht ja da :) .... aber wie ist das mit dem Mapping gemeint... sind MX >und MY die Koordinaten wo dann mein Pixel steht ?? Nein. Damit wird festgelegt, ob der Displayspeicher Normal oder Seitenverkehrt (MX) bzw. Normal oder auf dem Kopf stehend (MY) dargestellt wird. Das Display hat 8 Pages (Zeilen) a 102 Bytes. Jedes Byte in einer Zeile ist der 'Inhalt' von 8 übereinander liegenden Pixeln. MfG Spess
Pierre Gnauck schrieb: > EA DOGS102-6 Ahaa! Dazu kann ich dir etwas sagen, weil ich das auch benutze. Pierre Gnauck schrieb: > sind MX > und MY Das sind zwei "Control"-bits: http://easycaptures.com/fs/uploaded/598/6990962401.png Auf folgendem Bild siehst du den logischen Aufbau des Displays: http://easycaptures.com/fs/uploaded/598/2341933498.png Die Pixel des Display werden durch Speicherzellen representiert welche in 8 sogenannte "Pages" aufgeteilt sind. Jede dieser Pages ist 8 bit breit. 1 Page entspricht 8 vertikalen Pixeln, von oben nach unten. Eine Page wird über den Befehl "Set Page Address" ausgewählt. Die 102 Spalten werden über den Befehl "Set Column Address LSB" und "Set Column Address MSB" ausgewählt. Um Pixel zu setzen muss man nur die Page Address und danach die Column Address an das LCD übertragen (über SPI). Danach kann man dann einen beliebigen 8-bit Wert in den Grafikspeicher des Displays übertragen und der Wert wird dann entsprechend auf dem Display in Form von 8 vertikalen Pixeln angezeigt, je nachdem wie der Registerinhalt eben aussieht.
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.