www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD Cursor positionieren


Autor: Slowflyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe ein Problem mit der Positionierung des Cursors in einem 2x16
LCD. Ich habe folgendes schon versucht:

- Set DDRAM Adress: Display RAM Address Set, die ich mit der
gewünschten Position übergebe. Der Cursor bewegt sich nur in der
unteren Zeile. Dabei springt er an die erste Stelle der 2. Zeile bei
0,64,128 und 192

- Cursor und Displayshift-Anweisung (Cursor shift rechts): Der Cursor
springt um eine Stelle nach rechts und löscht danach das Display und
kehrt an die Home-Position zurück

kann mir jemand bei meinem Problem helfen? Mach ich irgendetwas
grunsätzlich falsch? Wie bekomme ich den Cursor direkt an eine
bestimmte Position in einer bestimmten Zeile gesetzt ohne shiften zu
müssen und wenn es ohne shiften nicht geht, warum wird die
shift-Anweisung nicht korrekt ausgeführt?

Autor: Marcel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm, generell wäre es nicht schlecht mal zu sagen mit welcher Hard- &
Software du arbeites. Welcher µC, welche Programmiersoftware, welche
Sprache??
Wie sieht denn dein Quellcode aus?? Denn kannst du doch mal
"posten"!

Gruß Marcel

Autor: marcel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich nehme an das du ein hd7*** komptibles display verwendest... hast du
das display richtig initialisiert? D.h. auch auf 2 Zeilen modus
eingestellt. Der Power On Reset stellt standardmäßig nur auf 1
Zeilen-Modus ein. (Schwarzer Balken nach dem einschalten.)

Dann ist die erste Zeile mit Adresse 0x00 - 0x0f und die zweite zeile
beginnt bei 0x40 und hört bei 0x4f auf.
(Der Display-Kontroller könnte bis zu 4 * 64 zeichen betreiben.)

Autor: marcel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
der untere beitrag ist von einem anderen marcel
(nur um das mal zu klären)

Autor: Slowflyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich verwende einen hd44780-kompatibles Display einen alten at90s8515 mit
Assembler-Software. Ich habe es im 4-Bit Modus, wie hier im Tutorial
angegeben, initialisiert. Hätte die Initialisierung nicht funktioniert,
so könnte ich wahrscheinlich keinen Text darstellen, was auf beiden
Zeilen funktioniert.

Autor: Marcel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Slowflyer, {der obere Marcel :o)}
Sorry, aber bei Assembler kann ich mich gar nicht aus :o(
Ich arbeite mehr mit C.
Aber vielleicht könntest du ja noch deinen Code als Dateianhang
mitschicken, dann können sich die ASM-Profis mal ein Bild machen.

Grüße Marcel (",)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.