Forum: Mikrocontroller und Digitale Elektronik mal wieder LCD: Zeilenumbruch?


von Andreas H (Gast)


Lesenswert?

Hallöchen, ich bräuchte mal wieder nen kleinen Tip. Es geht mal wieder 
um das Thema LCD-Display.

ich habe aus dem Toutorial den Code genommen um mein LCD-Display zu 
testen. Funktioniert auch einwandfrei. nur eins bekomme ich nicht hin: 
ich kann nicht in die 2. zeile wechseln. Wie geht das? Hab ich das 
irgendwo überlesen? Ich kann nichts finden.

Ich habe übrigens ein einfach 2x16 Zeichen Display. Wenn ich rot mehr 
als 16 Zeichen übertrage, taucht der Rest nicht auf. Also nehme ich mal 
an, daß das Display keinen automatischen zeilenumbruch nach dem 16. 
Zeichen macht? Wie komme ich dann in die 2. Zeile?

ciao,
   Andi

von Jornbyte (Gast)


Lesenswert?

Einen Zeilenumbruch gibt es nicht.
Die 1. Zeile beginnt bei 00H und endet bei 0fH.
Die 2. Zeile beginnt bei 40H und endet bei 4fH.
Du stellst also den Cursor auf die Adresse im LCD  die du haben 
möchtest.

von Andreas H (Gast)


Lesenswert?

Hallo Jornbyte!

Erstmal Danke! Grad war ich dabei, folgendes zu schreiben, als Du 
gepostet hattest. hat sich nämlich schon erledigt! :)

----- cut -----

Hallo! hat sich erledigt, ich habs nach etwas Stöbern im Internet 
rausbekommen:

man kann den Cursor mittels Befehl an eine beliebige Position setzen. 
Wenn ich die richtige DD Ram Address nehme, kann ich auch in die 2. 
Zeile schreiben. :) Falls es noch jemanden interessiert, hier im Detail:

Als Grundlage dient der Code aus dem AVR-Tutorial 
(http://www.mikrocontroller.net/tutorial4.htm)

Wenn ich vor dem zu sendenden Text...
---
ldi temp1, 0b11000000
rcall lcd_command
---
... setze, dann fängt der Cursor in der 2. zeile an. Wohlgemerkt bei 
einem 2x16-Zeichen-Display.

Der Befehl 0b1ddddddd weißt dem Display an, an welche Stelle er den 
Cursor zu setzen hat. "ddddddd" ist dabei die Adresse im Ram. Wenn das 
erste "d" eine "1" ist, wird die untere Zeile genommen, ist das erste 
"d" eine "0", ist die obere Zeile dran.


Mich würde jetzt nur nochmal interessieren, welche Ram-Adressen bei 
einem 4-zeiligen Display für welche Cursor-Positionen stehen. Ich hab 
zwar noch keines, aber vielleicht will ich ja irgendwann mal mit einem 
4x20 was basteln... :)

tschüss und wech,
andi

von Jornbyte (Gast)


Lesenswert?

Zeilen bei einem 4x20 LCD
Characters  1  bis  20
First line (H)  00 bis  13
Second line (H)  40 bis  53
Third line (H)  14 bis  27
Fourth line (H)  54 bis  67

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
Noch kein Account? Hier anmelden.