Salve a tutti, ho già postato del mio progetto cabina photoboot in sezione hardware, adesso che sto invece implementando il display lcd a due righe sto riscontrando una piccola noia, ho montato tutto con due pulsanti in modo da poter settare un determinato tempo, con uno aumenta, con l'altro diminuisce. Solo che quando oltrepasso il numero dieci, a tornare indietro passa da 90 e scala in decine..Mi spiego meglio..
1+1=2
2+1=3
3+1=4
ecc..
9+1=10
10+1=11
11-1=10
10-1=90!!!
ecco il codice..
#include <LiquidCrystal.h>
int in=8;
int in2=7;
int a=0;
int c=0;
int d=0;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
pinMode(in,INPUT);
lcd.begin(16, 2);
lcd.print(" Ciao Sergio! ");
delay(3000); lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Setta il tempo:");
lcd.setCursor(0, 1);
lcd.print("Timer=");
lcd.setCursor(9, 1);
lcd.print("secondi");
}
void loop() {
c=digitalRead(in);
if ( c == 1){a=(a+1); delay(500);}
d=digitalRead(in2);
if ( d == 1){a=(a-1);delay(500);}
if (( c == 1) & ( d == 1)){a=0; delay(500);}
lcd.setCursor(7, 1);
lcd.print(a);
}
edit by mod: per favore includi il codice usando gli appositi tag