Questo codice prende fino a 5 caratteri numerici dalla seriale e li trasforma in un numero. Se entro mezzo secondo non vengono altri numeri trasforma anche numeri con meno cifre.
Ciao Uwe
int incomingByte;
char Data[8];
int i;
unsigned long Tempo;
void setup()
{
Serial.begin(9600);
}
void loop(){
do {
if (Serial.available()) {
Data[i] = Serial.read();
i++;
}
if(i<1)Tempo = millis();
} while (i<5&&(millis()-Tempo) < 500);
Data[i] = 0;
incomingByte = atoi(Data);
i=0;
Serial.println(incomingByte);
}