Aiuto Moltiplicazioni Arduino.

E' un po di tempo che smanetto con Arduino ma oggi mi sono reso conto che facendo delle moltiplicazioni tra numeri positivi da valori sballati. Lo potete verificare con il seguente codice. Controllando il monitor seriale esce un valore sballato. Come posso risolvere?

void setup() {
Serial.begin(9600);
}

void loop() {
Serial.println(20*100*60);
}

etkstim: E' un po di tempo che smanetto con Arduino ma oggi mi sono reso conto che facendo delle moltiplicazioni tra numeri positivi da valori sballati.

Il problema è nel come dichiari i valori, 20-10-60 sono numeri che il compilatore interpreta con char e se fai una moltiplicazione in questo modo vai in overflow, devi dichiarare almeno uno dei valori come long in modo che il compilatore esegua il calcolo in modo corretto. Ti consiglio di studiare attentamente i tipi dati e il casting.

In questo modo il calcolo è corretto.

Serial.println(20l*100*60);

Scusa se ne approfitto. Ma per fare un timer preciso con arduino esiste qualche libreria già pronta?

etkstim: Scusa se ne approfitto. Ma per fare un timer preciso con arduino esiste qualche libreria già pronta?

E' tutto relativo, cosa devi fare ? sii più preciso :)

Devo fare un conto alla rovescia che sia disattivabile però con un ingresso analogico (una determinata tensione) e degli ingressi digitali (almeno 5).