Al momento ho programmato un arduino uno, con lcd e termistore ntc per misurare la temperatura ambientale. Nel Lcd visualizzo la temperatura istantanea, vorrei visualizzare anche la variazione di temperatura degli ultimi 5 secondi, ma non so come fare, attendo vostri consigli.
Ciao,
crei una variabile che, ad esempio, chiami "temperaturaPrecedente" e ci metti la prima lettura, poi, ogni lettura successiva la metti in una variabile "temperaturaAttuale", mostri la differenza tra le due, cancelli la vecchia riscrivendoci sopra la nuova e ... ricominci il giro con un ritardo di 5 secondi. ![]()
Guglielmo
int temperatura=0;
int temperaturaprecedente=0;
int temperaturaattuale=0;
variazione=0;
void setup(){
}
void loop(){
(calcolo temperatura)=temperatura;
temperaturaprecedente=temperatura;
delay(5000);
temperaturaattuale=temperatura;
variazione=temperaturaprecedente-temperaturaattuale;
}
Ho tralasciato tutto il codice relativo al calcolo della temperatura, ma così non funziona, :~
... c'è qualche piccolo errore di logica ... riassumo usando le tue abbreviazioni ...
fuori dal loop() visto che lo devi fare solo la prima volta :
(calcolo temperatura) ----> temperatura
temperatura ----> temperaturaPrecedente
nel loop() :
aspetto 5 sec
(calcolo temperatura) ----> temperatura
(temperaturaPrecedente - temperatura) ----> variazione
temperatura ----> temperaturaPrecedente
Questa è la logica ... ora a te metterla nel progamma ![]()
Guglielmo