ciao a tutti,
ho già provato a cercare sul web ma non sono riuscito a trovare una soluzione al mio problema.
praticamente ho un pulsante per poter cambiare un "programma", ad esempio:
-se premo il pulsante una volta: nel mio ldc viene scritto "programma 1 :ciao a tutti"
-se premo il pulsante ancora: nel mio lcd viene scritto "programma 2 : testo di prova scorrevole" , appunto con scritta in movimento.
il problema è che quando entro nel loop del programma 2 vorrei uscirne mentre lo esegue magari tornando al programma 1.
perfavore aiutatemi.
grazie
Marco
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(2, 13, A0, A1, A2, A3);
int pulsante;
int rele=1;
void setup() {
lcd.begin(16, 2);
pinMode(A4,INPUT);
lcd.clear();
delay(500);
lcd.setCursor(0, 1);
lcd.print("bentornato");
delay(2000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" SELEZIONA UN");
lcd.setCursor(0, 1);
lcd.print(" PROGRAMMA");
}
void loop() {
pulsante=digitalRead(A4);
if ((pulsante==HIGH) and (rele==0))
{
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Programma 2: ");
delay(1000);
lcd.clear();
lcd.setCursor(0, 1);
lcd.print(" testo di prova scorrevole");
for (int positionCounter = 0; positionCounter < 29; positionCounter++) {
lcd.scrollDisplayLeft();
delay(200);
}
rele=1;
delay(1000);
}
else if ((pulsante==HIGH) and (rele==1))
{
lcd.clear();
delay(50);
lcd.setCursor(1, 0);// Print a message to the LCD.
lcd.print("Programma 1: ");
lcd.setCursor(1, 1);
lcd.print("ciao a tutti");
rele=0;
delay (1000);
}
}