Hallo zusammen, ich habe hier ein LCD mit SSD1803 controller der per SPI angesteuert wird. Nun möchte ich die funktion für den segram implementieren. Ich verstehe leider Seite 22 und 23 des SSD1803 Datenblatts nicht ganz. Wie kann ich ein Zeichen auf das segram schreiben bzw. dieses ausgeben? Danke.
Keiner eine Idee? Das muss doch schon einmal jemand implementiert haben...
Welches von den vielen Datenblättern hast Du den gelesen? Vorher fange ich nicht an, das auf Verdacht heraus zu suchen. mfG
Christian S. schrieb: > Welches von den vielen Datenblättern hast Du den gelesen? Vorher > fange > ich nicht an, das auf Verdacht heraus zu suchen. > > mfG Das hier: https://www.lcd-module.de/fileadmin/eng/pdf/zubehoer/ssd1803_2_0.pdf sorry
Du musst was “tun”. Von allein erscheinen dort keine Zeichen. https://os.mbed.com/users/wim/notebook/textlcd-enhanced/
Braun schrieb: > Du musst was “tun”. > Von allein erscheinen dort keine Zeichen. > > https://os.mbed.com/users/wim/notebook/textlcd-enhanced/ Ich habe alle anderen Funktionen des displays erfolgreich implementiert. Beim segram setzt ich den address poibter auf z. B. 0x00. Anschließend schreibe ich ein datenbit z. B. 0xff. Aber auf dem Display erscheint nichts und der cursor verschwindet.
Hi
>Kann mir denn keiner weiterhelfen? ich komme einfach nicht weiter
Wozu braucht du das? Bist du sicher, das das Display (nicht der
Controller) das überhaupt unterstützt?
MfG Spess
>Ich habe alle anderen Funktionen des displays erfolgreich implementiert. Super! >Anschließend schreibe ich ein datenbit z. B. 0xff. Aber auf dem Display >erscheint nichts und der cursor verschwindet. Hallo, zuerst mal wird dieser Befehl gebraucht: "9.1.11Set SEGRAM Address (RE = 1)" zusätzlich gilt: "RE: Extended function registers enable bit When RE = "High", extended function set registers, SEGRAM address set registers, BID bit, HS/DS bits of shift/scroll enable instruction and BE bits of function set register can be accessed." dann Daten ins SEGRAM schreiben mittels: 9.1.15Write Data to RAM Blick in die Tabelle, die extra kompliziert aufgebaut ist: 7.11SEGRAM (Segment Icon RAM) Alles was da mit Sx bezeichnet ist mit x von 1 bis 80 oder 96 sind bits, die in dem zu zeichnenden Icon als Punkt auftreten können. Also die unteren 5 oder 6 Bits eines Bytes, das man ins SGRAM schreibt, werden sichtbar. Die oberen zwei Bits eines Bytes sieht man nicht, denn Auf der nächsten seite sieht man dann, was raus kommt. Mit 5 dot font bleibt eine leere Spalte zwischen den Icons, mit 6 dot font nicht. Eine Zeile ist jeweils 8 Bits hoch, also bei 16 Adressen kann man anscheinend zwei Icons einspeichern ins SGRAM. Un dmit den Control-bits B0 und B1, sowie dem anderswo lokalisierten BE kann man eine Zeile blinken lassen oder nicht, also nur am linken Rand einen Pixel oder alle 5 oder 6 Pixel einer jeden Zeile. Aber Achtung. Es gibt zwei Funktionstabellen, zwischen denen man umschalten kann. Das anscheinend schon ein Programm existiert und alles andere anzusteuern ist, dürfte es jetzt mittels einiger Experimente gelingen, da ein paar Icons drau zu zaubern. Braucht man mehrere Icons, muß man sie vermutlich immer wieder neu laden. Aus dem SEGRAM kann man doch auch lesen. Was kommt an, wenn man daraus liest? Mal schauen, ob das SGRAM jetzt funktioniert. Ich habe hierfür nur das Dabla gelesen, aber niemals so ein Display auf dem Tisch gehabt. mfG
Vielen Dank für deinen ausführlichen Beitrag. Ich würde die Tabelle so lesen, dass die segram adresse 0x00 für Spalte 1 - 5 ist. Ok soweit so gut. Wie zeig ich jetzt allerdings das gespeicherte Zeichen an? wird das direkt angezeigt? Ich bekomm leider keine ausgabe.
Hallo, ich möchte nicht direkt widersprechen, nur hätte ich vermutet, daß B1 B0 S1 S2 S3 S4 S5 S6 eine Zeile im Display definiert, also die Sx zeilenweise zu verstehen sind und die Spalten mit SEG1, SEG2, Seg3, ... bezeichnet sind in Bild 7-8. Die Inhalte von acht aufeinanderfolgender Adressen ergeben dann genau ein Icon. Der abgebrochene Satz vom letzten Post sollte heißen: Die oberen zwei Bits eines Bytes sieht man nicht, denn sie definieren die Eigenschaften einer einzelnen Zeile bezüglich Blinken. Den anderen Satz vom vergangenen Mal korrigiere ich auch noch: Ein Zeichen ist jeweils 8 Bits hoch, also bei 16 Adressen kann man anscheinend zwei Icons einspeichern ins SGRAM. Und mit... RE soll jedenfalls 1 sein, um die SEGRAM-adresse zu setzen. Ich hätte gedacht, daß die Daten, die ins SEGRAM gelangen, sofort sichtbar erscheinen, aber die sonstigen Abläufe sind relativ umfangreich, um sie sofort zu durchschauen. mfG
:
Bearbeitet durch User
AndyII schrieb: > Kann mir denn keiner weiterhelfen? ich komme einfach nicht weiter Ohne das DB gelesen zu haben, die Controller sind oft beschissen dokumentiert. Ich habe mir mal Testcode (8051 ASM) vom Hersteller schicken lassen aus dem ich dann die Funktion extrahieren konnte die das DB nicht hergab.
Vielen Dank für eure Antwort. __--_-_ schrieb: > Ich habe mir mal Testcode (8051 ASM) vom Hersteller schicken lassen aus > dem ich dann die Funktion extrahieren konnte die das DB nicht hergab. könntest du diese bitte mal posten? Danke.
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.