Forum: Mikrocontroller und Digitale Elektronik An bestimmte LCD-Position schreiben und Init-Probleme


von uvok (Gast)


Angehängte Dateien:

Lesenswert?

Hallo allerseits,

ich schreibe grade ein Programm, um ein LCD (DEM 16216 SYH-LY) mit einem 
Mikrocontroller (MSP430G2231, auf einem Launchpad) anzusteuern.
Dabei bin ich auf folgendes Problem gestoßen:

In der main-Funktion versuche ich, an eine bestimmte Displayposition zu 
springen, indem ich die  DDRAM-Adresse setze.
Komischerweise springt der Cursor schon mal nicht an die erwartete 
Position, das 3. Zeichen, sondern an das 2. Zeichen.
Wenn ich jetzt versuche, an diese Position ein Zeichen zu schreiben, 
rutscht der Cursor zwar eine Position weiter - das Zeichen wird jedoch 
nicht geschrieben, die Stelle bleibt leer.
Wenn ich vor dem Setzen der DDRAM-Adresse (nach der Initialisierung) ein 
Zeichen schreibe, wird dieses angezeigt. Der Sprungbefehl bewirkt, dass 
der Cursor zwei Positionen hinter dem geschriebenen Zeichen erscheint.

Nun die Frage: Ich hab die Initialisierungsbefehle und den Sprungbefehl 
laut dem Datenblatt geschrieben (denke ich zumindest). Habe ich einen 
Fehler im Quelltext? Könnte der Fehler eventuell an der Hardware liegen?

Die Spannungsversorgung vom LCD sind 5V, die Signale vom Mikrocontroller 
jedoch nur 3,5 Volt.

Weiterhin hab ich wohl noch einen Fehler in der Initialisierung: Wenn 
ich am Mikrocontroller einen Reset auslöse, wird das LCD manchmal nur 
einzeilig initialisiert. Durch mehrmaliges Auslösen von Reset wird das 
Display dann zweizeilig initialisiert.

Danke schon mal im voraus.

von uvok (Gast)


Lesenswert?

nochmal hochschieb
Gibt es keine Ideen, woran es liegt oder was ich noch probieren könnte?

von Peter D. (peda)


Lesenswert?


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.