Ce site contient essentiellement des notes de travail. Le contenu est en constante évolution, et loin d'être achevé. (+ d'infos)
La plupart des documentations informatiques sont orientées Debian / Ubuntu.

Electronique/Hardware/Sensors/DHT11-DHT22/DHT11-22 - Arduino

De Ordinoscope.net
Sauter à la navigation Sauter à la recherche

Librairie DHTLib

Librairie proposée depuis mi 2011, compatible avec DHT11 et DHT22 - http://playground.arduino.cc/Main/DHTLib

La librairie DHTLib requiert le numéro réel du port. Pour le port A0, il s'agit du 14 sur un Arduino Uno, et du 54 sur un Ardiuno Mega.

// FILE: DHT11.pde
// PURPOSE: DHT library test sketch for Arduino
// Source: http://arduino.cc/playground/Main/DHTLib

#include <dht.h>

dht DHT;

#define DHT22_PIN 14

void setup () {
  Serial.begin (115200);
  Serial.println ("DHT TEST PROGRAM ");
  Serial.print ("LIBRARY VERSION: ");
  Serial.println (DHT_LIB_VERSION);
  Serial.println ();
  Serial.println ("Type,\tstatus,\tHumidity (%),\tTemperature (C)");
}

void loop() {
  // READ DATA
  Serial.print ("DHT22, \t");
  int chk = DHT.read22 (DHT22_PIN);
  switch (chk) {
    case 0:  Serial.print ("OK,\t"); break;
    case -1: Serial.print ("Checksum error,\t"); break;
    case -2: Serial.print ("Time out error,\t"); break;
    default: Serial.print ("Unknown error,\t"); break;
  }
  
  // DISPLAT DATA
  Serial.print (DHT.humidity,1);
  Serial.print (",\t");
  Serial.println (DHT.temperature,1);

  delay (1000);
}

Installation

J'ai préparé un fichier ZIP contenant tous la librairie et les exemples séparés (DHT11 / DHT22):

  • Télécharger le fichier DHT-0.1.05.zip
  • Dézipper le contenu dans le répertoire libraries d'Arduino
  • Redémarrer l'IDE (interface graphique de développement) - obligatoire

adruino-DHT

Une autre librairie est disponible sur https://github.com/markruys/arduino-DHT. Elle supporte les capteurs DHT11 et DHT22, et utilise moins de mémoire que DHTLib.

Références