16x2 Display, erstes zeichen fehlt

OP #2245914
Lesenswert?

Hallo mal wieder :-) Der erste Versuch, einen Text auf einem Display 
auszugeben, klappte nur zu 95% :-( Hier schonmal der Quellcode von 
Bascom:

>>>>>>>

Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , _
   Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2
Config Lcd = 16 * 2


Cls
Locate 1 , 1
Lcd "Zeile 1"
Locate 2 , 1
Lcd "Zeile 2!"


End

>>>>>>>>

Problem ist folgendes: In der ersten Zeile wird der erste Buchstabe 
einfach "verschluckt". Statt "Zeile 1" steht dort "eile 1". Setze ich in 
den Quellcode vor dem Wort ein Leerzeichen, etwa:

Locate 1 , 1
Lcd " Zeile 1"

dann klappt es und er zeigt "Zeile 1". Das heisst, das irgendwo das 
erste Zeichen im Nirvana verschwindet, oder? Bei Zeile 2 klappt alles 
wie es sein sollte, da taucht das Problem nicht auf. Wer kann mir was 
raten?

Grüße, Uwe
#2246328
Lesenswert?

Uwe Heydemann schrieb:
> Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , _
>    Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2
> Config Lcd = 16 * 2

Hallo Uwe,
eigentlich sieht das alles korrekt aus sofern es sich tatsächlich um
ein hd44780 kompatibles LCD handelt.
Genau so verwende ich die Configs auch immer ohne Probleme.
Das einzige , was mir auffällt ist der Unterstrich hinter "Db6 = Portd.6 
, _"
Der gehört da nicht hin.
Du kannst ja zusätlich nochmal versuchen den Befehl "INITLCD" 
einzusetzen.
(Ich hab den noch nie benötigt).

ggf. ist vielleicht auch das LCD nicht Okay. Steck mal ein anderes dran.

Gruss Klaus
Gast #2246503
Lesenswert?

Vermute das Problem liegt an der LCD Kompatibilität HD44780.

Ich benutze die LCD Ansteuerung wie Uwe.Schon 15 mal benutzt ohne 
Probleme
(LCD aus der Bucht, Blau/weiss )

Config Lcdpin = Pin , Db7 = Portb.0 , Db6 = Portd.7 , Db5 = Portd.6 , _
      Db4 = Portd.5 , E = Portc.4 , Rs = Portc.5
Config Lcd = 16 * 2
Cls
Cursor Off

Locate 1 , 1
Lcd "Zeile 1"
Locate 2 , 1
Lcd "Zeile 2"
Gast #2246516
Lesenswert?

Initialisierung ist i.O., nur kommt das erste Zeichen zu schnell, also
NACH dem letzten INI-Befehl 2ms warten (siehe Post von Karl)
100ms braucht das Display bzw. der 44780 an dieser Stelle nicht.

Gruß Gerd
OP #2246536
Lesenswert?

Gerd schrieb:
> Initialisierung ist i.O., nur kommt das erste Zeichen zu schnell, also
> NACH dem letzten INI-Befehl 2ms warten (siehe Post von Karl)
> 100ms braucht das Display bzw. der 44780 an dieser Stelle nicht.
>
> Gruß Gerd



>>> Das war der Fehler :-) Wenn ich nach CLS noch Cursor off oder waitms 2 setze, 
dann klappert es so wie es sein soll :-) Danke Jungs, ihr seit wie immer meine 
Rettung :-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren