Hi, hab ein 2x16 LCD Display, jetzt würde ich gerne bei jeder Ausgabe zeilenweise shiften. Das heißt - das was in der 2. Zeile gestanden ist, soll in der 1. Zeile stehen und der neue Text kommt in die 2. Zeile. Die Bascom Shift-Befehle rotieren nur nach links oder rechts oder brauch ich hier einen Zwischenspeicher (string*16) für eine Zeile?
"shift" ist nur für Bits geeignet, nicht zum LCD bearbeiten Locate ist der Befehl und n Zwischenspeicher ...
Thanks, meinte natürlich ShiftLCD - der verschiebt beide Zeilen nur nach links oder rechts
Hallo. ShiftLCD ist nur dazu da um den gesamten Inhalt des Displays zu verschieben. Mit dieser Funktion ist es nicht möglich nur eine zeile oder einzelne Abschnitte zu verschieben. Also wenn du da etwas 'shiften' möchtest, dann musst du dir eine eigen Konstruktion bauen. Das mit dem String klingt gut. Ich brauche selbst soetwas, aber auf die Idee bin ich noch nicht gekommen LG
Hallo, der Text der 2. Reihe steht doch sicher in einer Variablen. Gib diesen Text doch in die erste Zeile (überschreibt die alte Anzeige). Danach den neuen Text in Zeile zwei.
Hi, so könnte die Lösung aussehen Dim Lcdline1 As String * 16 Declare Sub Slcdline2(byval Lcdline2 As String ) ... CLS LCD "Willkommen" wait 1 call slcdline2("Die Infos") wait 1 call slcdline2("werden nach") wait 1 call slcdline2("oben gerollt") wait 1 call slcdline2("und laufend") wait 1 call slcdline2("erweitert") wait 1 ... '**************************** Rollierende LCD Sub Slcdline2(byval Lcdline2 As String ) Cls if lcdline1<>"" then cls Lcd Lcdline1 endif Lcdline1 = Lcdline2 Lowerline Lcd Lcdline2 End Sub
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.