// inclure le code de la bibliothèque: #include <LiquidCrystal.h>
// initialiser la bibliothèque avec les numéros des broches de l'interface LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
// Inclure le code de la bibliothèque : #include "DHT.h" // La broche numérique 13 est reliée au capteur DHT. On lui donne le nom DHTPIN. #define DHTPIN 13 // Défini le type de capteur utilisé #define DHTTYPE DHT11 // DHT 11 // On indique la broche et le type de capteur² DHT dht(DHTPIN, DHTTYPE);
void setup() { // configurer le nombre de colonnes et de lignes de l'écran LCD : lcd.begin(16, 2); // Initialise le capteur DHT. dht.begin(); }
void loop() { // Attend 2 secondes entre les mesures. delay(2000);
// La lecture de la température ou de l'humidité prend environ 250 millisecondes ! // Les lectures du capteur peuvent également être "anciennes" jusqu'à 2 secondes (c'est un capteur très lent)
// Lit l'humidité et stock ça valeur dans h au format float. float h = dht.readHumidity(); // Lit la température en degrés Celsius et stock ça valeur dans t au format float. float t = dht.readTemperature();
// Vérifiez si des lectures ont échoué et quitte plus tôt le programme pour réessayer. if (isnan(h) || isnan(t)) { Serial.println(F("Impossible de lire à partir du capteur DHT!")); return; }
// placer le curseur sur la colonne 0, ligne 0 // (note : la ligne 0 est la première ligne, puisque le comptage commence par 0): lcd.setCursor(0, 0); // Imprime un message lcd.print ("Temp:"); // placer le curseur sur la colonne 6, ligne 0 lcd.setCursor(6, 0); // Imprime la température en degrés Celsius qui est stockée dans t lcd.print(t); // ETC... lcd.setCursor(13, 0); lcd.print((char)223); lcd.setCursor(14, 0); lcd.print("C"); lcd.setCursor(0, 1); lcd.print ("Hum:"); lcd.setCursor(6, 1); lcd.print(h); lcd.setCursor(13, 1); lcd.print("%"); }