wie zweite Zeile eines LCDs ansprechen?

Gast #261426
Lesenswert?
• ▲
▼
Hallo zusammen,

ich habe hier ein 2x8-LCD-Display mit dem Tutorial zum laufen gebracht.


Die Zeichen werden ohne Probleme ausgegeben - aber nur in der ersten
Zeile.

Wie bewege ich das Display dazu, auch in die zweite Zeile zu
schreiben?

Ich habe keinen Befehl gefunden, mit dem ich den Cursor in die zweite
Zeile schieben kann. In der ersten Zeile kann ich problemlos alle
Befehle ausführen (Display shift, Cursor shift, usw.)

Initialisiert habe ich N=1, also zwei oder mehr Displayzeilen.

Was mache ich falsch?

Hoffe mir kann wieder einmal geholfen werden.

Danke+Gruß
Markus
#261427
Lesenswert?
• ▲
▼
Normalerweise hast du doch ein Datenblatt zu dem Display und dort steht
(in meinem zumindest) ab welchem Speicherbereich die zweite Zeile
anfängt. (Bei meinem Typ bspw. ab $40 bis $47) und dann musst du diese
Addresse nur noch setzten und kannst dann dort schreiben!
Glaub zumindest, dass es bei mir so funktioniert hatte...

Viele Grüße,

Daniel
Gast #261428
Lesenswert?
• ▲
▼
Vielen Dank für die Hilfe, es hat funktioniert!

Aber ich habe im gesamten Datenblatt keinen einzigen Hinweis darauf
gefunden. :-(

Wo fängt denn der Speicherbereich für die erste Zeile an?

Nochmals danke.

Gruß
Markus
Gast #261430
Lesenswert?
• ▲
▼
So etwas gibt es in meinem Sheet nicht.

Welches Display verwendest du? Steht in dem Datenblatt auch, wie man
eigene Zeichen abspeichert und wieder aufruft?

In meinem Sheet stehen nur die Physikalischen Abmessungen,
Portbelegungen und eine sehr allgemeine Übersicht über die Befehle.

Jetzt brauche ich wie schon erwähnt irgendeine Beschreibung, wie man
eigene Zeichen benutzt.

Wäre super, wenn du mir da auch noch weiter helfen könntest. :-)

Danke und Gruß
Markus
Gast #261432
Lesenswert?
• ▲
▼
Eigene Zeichen können normalerweise in die Speicherzellen $00 - $07
geschreiben werden. Dazu wird zuerst der Befehl 0b01xxxxxx an das
Display gesendet, wobei die xxx der Adresse entsprechen, die die zu
beschreibende Pixel-Zeile ist: $00-$07 entsprechen den Zeilen für das
Nullte Zeichen, $08-$0F für das erste und so fort. Nach der
Adressierung wird dann ein Datenbyte von 5 Pixeln (also maximal $1F)
MSB zuerst geschickt. Dieses Datenbyte befindet sich danach in der
zuvor adressierten Pixel-Zeile. Für ein komplettes Zeichen braucht man
also bis zu 8 Adressierungs- und Datenschreibzugriffe. Hat man dann
alle gewünschten Zeichen in´s Display-Zeichen-Ram geschrieben, werden
sie wie jedes andere Zeichen aufgerufen, und zwar ab Position $00 -
$07, wie oben bereits erwähnt. Hinweis: nach dem Einschalten des
Displays stehen im Display-Zeichen-Ram nur Zufallszahlen. Bei jedem
Neustart müssen also auch alle eigenen Zeichen neu in´s Display
geschrieben werden.
#261433
Lesenswert?
• ▲
▼
Du hast das vereinfachte Datenblatt des Displays. Darin steht doch
sicherlich, welcher LCD-Controller verwendet wurde. Die restlichen
Informationen musst du dann dem Datenblatt des LCD-Controllers
entnehmen.

Allerdings kann ich nicht nachvollziehen, dass im Datenblatt des
LCD-Herstellers keine Angaben über die Adressierung der
Anzeigepositionen enthalten sind. Oder hast du vielleicht ein total
vereinfachtes Datenblatt von einem Händler? Dann suche das vom
Hersteller.

...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.