Habe mir letztens ein neues LCD4884 Display zugelegt. Nun steh ich aber vor folgenden "Denkfehler", und zwar wird in dem Beispiel bei Einfache Laufschrift auf LCD4884 bei http://www.arduinospielwiese.de/ das so beschrieben (kleiner Ausschnitt) :
void loop() { lcd.LCD_write_string( 78, 3, "M", MENU_NORMAL); delay(200); lcd.LCD_write_string( 70, 3, "MA", MENU_NORMAL); delay(200); lcd.LCD_write_string( 65, 3, "MAR", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 60, 3, "MART", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 53, 3, "MARTI", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 48, 3, "MARTIN", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 42, 3, "MARTIN ", MENU_NORMAL ); delay(200);
lcd.LCD_write_string( 35, 3, "MARTIN K", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 30, 3, "MARTIN KU", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 23, 3, "MARTIN KUP", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 18, 3, "MARTIN KUPK", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 12, 3, "MARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 12, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 8, 3, "MARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 8, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 3, 3, "MARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 3, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 0, 3, "MARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 0, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 0, 3, "ARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 0, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 0, 3, "RTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 0, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 0, 3, "TIN KUPKA", MENU_NORMAL ); delay(200);
etc..
Ich jedoch habe das mit einer for-Schleife gelöst(bei mir dient Hallo als Laufschrift): "Es stehen Spalte 0...83 und Zeile 0...5 zur Textpositionierung zur Verfügung."
void loop() {
for(i = 0 ;i < 54; i++) { lcd.LCD_write_string(i, 1, "HALLO", MENU_NORMAL ); delay(100); lcd.LCD_write_string(i, 1, " ", MENU_NORMAL );
}
for(i = 54 ;i > 0; i--) { lcd.LCD_write_string(i, 1, "HALLO", MENU_NORMAL ); delay(100); lcd.LCD_write_string(i, 1, " ", MENU_NORMAL );
}
}
Alles hat wunderbar geklappt, aber ich verstehe es nicht warum es 54 hier i = 0 ;i < 54; i++ heißen muss.
PS: Habe es durch Probieren geschafft auf diese Nummer zu kommen
Freue mich auf Antworten!