Ciao a tutti, vorrei realizzare un controllo su di un anemometro. La funzione mi deve azzerare dopo un tempo prefissato il valore letto in precedenza.
Statoreed = digitalRead(reedPin); // legge il contatto reed
if (Statoreed != Statoreed_old) { // verifica se è cambiato
Statoreed_old = Statoreed; // se "SI" aggiorna lo stato
if (Statoreed == HIGH) { // controlla SE è alto ( passaggio magnete)
if (Conteggio == 0) {
TempoStart = millis(); // se E' il primo passaggio si memorizza il tempo di partenza
}
Conteggio = Conteggio + 1; // si aggiorna il contatore
Tempo = ( millis() - TempoStart); // conteggia il tempo trascorso dallo start conteggio
if (Tempo >= TempoMax) { // se il tempo trascorso è maggiore o uguale al tempo impostato si eseguono i
//calcoli e la stampa della velocità
float deltaTempo = ( Tempo / 1000.0); // si trasforma in secondi
float Kmora = (3.6 * Conteggio * Pi * raggio) / deltaTempo; //formula per il calcolo della velocità in Km/h
Serial.print("Vento: " ); Serial.println(Kmora);
valueKmora = Kmora;
questo è la parte dello sketch dove avviene la lettura, come posso modificarlo volendo inserire la funzione di azzeramento e poi stamparlo in seriale ? grazie..