#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
char stringa[20] = "ciao";
void setup() {
lcd.begin(20, 4);
lcd.setCursor(0,0);
lcd.print(stringa);
delay(1000);
}
void loop() {
for(byte i=0; i<strlen(stringa)-1; i++) {
stringa[i] = stringa[i+1];
}
lcd.setCursor(0,0);
lcd.print(stringa);
stringa[strlen(stringa)-1] = " ";
delay(60);
}
Questo è il mio codice seguendo l' esempio di gpb...
I warning riscontrati sono questi:
C:*\Prova_scorrimento_2.ino: In function 'void loop()':
C:*\Prova_scorrimento_2.ino:26:28: warning: invalid conversion from 'const char*' to 'char' [-fpermissive]
stringa[strlen(stringa)-1] = " ";
- ^*
Lo sketch usa 2.496 byte (0%) dello spazio disponibile per i programmi. Il massimo è 253.952 byte.
Le variabili globali usano 63 byte (0%) di memoria dinamica, lasciando altri 8.129 byte liberi per le variabili locali. Il massimo è 8.192 byte.
Mentre il codice derivato dall' esempio di sukkopera è questo:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
char stringa[20] = "ciaoooooooooooooo";
void setup() {
lcd.begin(20, 4);
lcd.setCursor(0,0);
lcd.print(stringa);
delay(1000);
}
void loop() {
for (byte i = 0; i < strlen(stringa); i++) {
lcd.setCursor (0, 0);
if (strlen (stringa) < i)
lcd.print (stringa + i);
for (byte j = strlen (stringa) - i; j < strlen(stringa); j++)
lcd.print (' ');
delay(500);
}
}
Ora, premesso che è la prima volta che riesco a realizzare questo effetto e quindi il vostro aiuto è stato il più valido fin'ora, vi devo chiedere delle altre info...
In questo progetto, ho visualizzato nel monitor LCD dei caratteri speciali, che mi fungono da spie per vari input...
Praticamente con la funzione "lcd.write" li vado a scrivere direttamente sul monitor, spostando le varie volte il cursore...
Detto ciò, come potrei inserire tutto questo dentro l' array corrispondente a quella riga?
Se volete vi posto il codice di tutto il mio programma