• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Średnia temperatura
#1
Witam,

Przy pomocy czujnika DS18B20 wykonuję pomiar temperatury. Wszystko działa poprawnie poza wyświetlaniem wartości średniej.

Kod:
Kod:
void loop(){
 if (sensors.available())
 {
 int temperature = sensors.readTemperature(address);
 
 lcd.clear();
 lcd.setCursor(0, 0);
 lcd.print("Temperatura: ");
 lcd.setCursor(0,1);
 lcd.print(temperature);
 lcd.print(F("'C "));
 srednia_temperatura=(srednia_temperatura+temperature)/i;
 lcd.print(srednia_temperatura);
 sensors.request(address);
 i++;
}

Poniższa linia zamiast wyświetlać wartość średnią, przy każdym obiegu pętli wyświetla coraz mniejszą liczbę zmierzającą do zera.

Kod:
srednia_temperatura=(srednia_temperatura+temperature)/i;

Proszę o pomoc
 
Odpowiedź
#2
Witam
I nic dziwnego...:-)... nie myli się ten co nic nie robi :-)
Użyj może dodatkowej zmiennej suma i do niej dodawaj
suma+=temperature;
a potem 
srednia_temperatura=suma/i;
Pozdrawiam
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości