Pour installer la première bibliothèque, allez dans le menu Outils / Gérer les bibliothèques... puis entrée DTH dans le champ de recherche et installé la bibliothèque DHT sensor library.
Bibliothèque Adafruit pour les capteurs d'humidité et de température de la série DHT. Cette bibliothèque dépend de la bibliothèque de capteurs unifiés Adafruit . Pour utiliser la bibliothèque DHT sensor library, vous devez télécharger également la bibliothèque Adafruit Unified Sensor.
Pour installer la deuxième bibliothèque, allez dans le menu Outils / Gérer les bibliothèques... puis entrée adafruit unified sensor dans le champ de recherche et installé la bibliothèque Adafruit Unified Sensor.
/*
Connecter le capteur DHT11 avec la carte Esp32 Seekool
Bibliothèque Adafruit DHT sensor
Arduino IDE, prg18a5.ino
http://nano-ordinateur-info.fr/
*/
#include "DHT.h"
#define DHTPIN 5
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
Serial.println("Capteur DHT11, Humidité et température.");
dht.begin();
}
void loop() {
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t)) {
Serial.println("Impossible de lire le capteur DHT11 !");
return;
}
Serial.print("Humidité: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Température: ");
Serial.print(t);
Serial.println(" *C ");
delay(2000);
}
Principales commandes pour afficher la température et l'humidité dans le moniteur.
Inclue la bibliothèque Adafruit DHT.
#include "DHT.h"
Utilisation du port GPIO 5 de l'ESP32 pour lire les données.
#define DHTPIN 5
Donne un nom (DHTTYPE) à une valeur constante (DHT11).
#define DHTTYPE DHT11
Initialisation d’une nouvelle instance.
DHT (DHTPIN, DHTTYPE);
Définit le débit de données en bits par seconde pour la transmission de données série.
Serial.begin (115200);
Affiche les données sur le port série sous forme de texte ASCII suivi d'un caractère de retour chariot (println).
Serial.println("Capteur DHT11, Humidité et température.");
Initialiser l'objet DHT à l'aide de la fonction begin().
dht.begin();
Lecture de la l'humidité en % (par défaut).
float h = dht.readHumidity();
Lecture de la température en Celsius (par défaut).
float t = dht.readTemperature();
On vérifie si la lecture a échoué, si oui on quitte la boucle pour recommencer.
if (isnan(h) || isnan(t)) {
Serial.println("Impossible de lire le capteur DHT11 !");
return;
}
Affiche la chaine de caractère Humidité.
Serial.print("Humidité: ");
Affiche la valeur de l'humidité
Serial.print(h);
Affiche le signe pour cent (%), plus une tabulation (\t).
Serial.print(" %\t");
Affiche la chaine de caractère Température.
Serial.print("Température: ");
Affiche la valeur de la température.
Serial.print(t);
Affiche la valeur de la température suivi d'un caractère de retour chariot (println).
Serial.println(" °C ");
Le capteur est un peu lent, les valeurs peuvent être lues toutes les deux seconde.
delay(2000);
Téléchargé le programme à l'adresse suivante...
...ou coller le code suivant dans l'IDE Arduino.
Allez dans le menu Fichier / Outils... pour ouvrir le Moniteur série...
... les valeurs de la température et de l'humidité doivent s'afficher sur le moniteur série.
Cliquer sur le bouton Téléverser pour transférer le programme à l'ESP32.