Station Météo Minimum Maximum

La boucle loop nous permet de vérifier à chaque prise de mesure si la température maximale est dépassée et si le minimum est atteint. Pour cela, nous initialisons les deux variables minimum et maximum. Puis, nous comparons les deux valeurs avec la mesure en cours.

 

#define DHTPIN 2 // Broche du capteur

#define DHTTYPE DHT11 // Pour le DHT 11

#include <LiquidCrystal.h>

 

DHT dht(DHTPIN, DHTTYPE);

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

 

float minimum;

float maximum;

 

 

void loop() {

 

 Serial.print("Lecture capteur");

 float h = dht.readHumidity();

 float t = dht.readTemperature();

 

 //On verifie si la lecture a echoué, si oui on quitte la boucle pour recommencer.

 if (isnan(h) || isnan(t))

 {

   Serial.println("Échec de lecture");

   return;

 }

 

if(temperature>maximum)maximum=temperature;

if(temperature<minimum)minimum=temperature;

 

 

 // Calcul de l'indice de temperature en Celsius

 float hic = dht.computeHeatIndex(t, h, false);

 

 lcd.setCursor(0,1);

 lcd.print("Hum: ");lcd.print(h);

 lcd.setCursor(0,0);

 lcd.print("Temp: ");lcd.print(t);lcd.print("C");

 }