Grove DHT22 erreur généré par ARDUINO

Comment utiliser le GROVEDHT22 au connecteur IIC de la carte d’extension XIAO?
Le port IIC ne fourni que 3,3V au DHT22 et j’aurais besoin de 5V.
un DHT22 connecter au XIAO affiche très bien le SSD1306 de la carte d’extension, car j’utilise le VCC de 5V du XIAO.

if (isnan(h) || isnan(t)
Erreur…Serial.println(F(“Échec de lecture du capteur DHT22”));

Denis

this DHT22 is not IIC… it is one wire based on the silk screen on the board

You should not need 5V 3v3 will work fine

connect this device to D0 Grove Port

1 Like

Hello
Merci pour ce très utile document TinkerGen que je ne connaissais pas.
J’ai commis une erreur de frappe, ce nétait pas un DHT22 mais un Grove DHT20
Je retourne à mon code pour corriger les erreurs.
Nini

Awesome… I make the same mistake… i double checked after i started typing! lol

Ensuite, dans votre code, ajustez la pin utilisée pour lire les données du DHT22 en fonction de celle que vous avez choisie (par exemple D2).

Voici un exemple de code Arduino pour lire le DHT22 :

cpp

Copy code

#include "DHT.h"

#define DHTPIN 2     // Pin de lecture du signal DATA du DHT22
#define DHTTYPE DHT22   // Définition du type de capteur

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  dht.begin();
}

void loop() {
  // Lecture de la température et de l'humidité
  float h = dht.readHumidity();
  float t = dht.readTemperature();

  // Vérification si la lecture a échoué
  if (isnan(h) || isnan(t)) {
    Serial.println(F("Échec de lecture du capteur DHT22"));
    return;
  }

  // Affichage des valeurs
  Serial.print(F("Humidité : "));
  Serial.print(h);
  Serial.print(F("%  Température : "));
  Serial.print(t);
  Serial.println(F("°C"));
  
  delay(2000); // Pause de 2 secondes avant la prochaine lecture
}