Crowtail-DHT20

From
Revision as of 23:40, 30 October 2025 by Ows wiki (talk | contribs)
Jump to: navigation, search


https://www.elecrow.com/wiki/crowtail--dht20.html

Crowtail-DHT20 1.png

Crowtail-DHT20
Model: CRT10251D
Port I2C 0x38 in default

https://www.elecrow.com/wiki/image/5/52/Crowtail-DHT20.zip Librairie

DHT20.ino

#include <DHT20.h>
/*!
 * @brief Construct the function
 * @param pWire IC bus pointer object and construction device, can both pass or not pass parameters, Wire in default.
 * @param address Chip IIC address, 0x38 in default.
 */
DHT20  dht20;
void setup()
{
  Serial.begin(115200);
  //Initialize sensor
  while(dht20.begin())
{
    Serial.println("Initialize sensor failed");
    delay(1000);
   }
}

void loop()
{
  //Get ambient temperature
  Serial.print("temperature:"); Serial.print(dht20.getTemperature());Serial.print("C");
  //Get relative humidity
  Serial.print("  humidity:"); Serial.print(dht20.getHumidity()*100);Serial.println(" %RH");

  delay(1000);
}



Code sur Oled

#include <Wire.h>
#include <U8g2lib.h>
#include "DHT20.h"

// Initialisation de l'écran OLED SSD1306 via I2C
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);

// Initialisation du capteur DHT20
DHT20 dht20;

void setup() {
  Wire.begin();
  Serial.begin(115200);
  dht20.begin();
  u8g2.begin();
}

void loop() {
  float temp = dht20.getTemperature();
  float hum = dht20.getHumidity();

  Serial.print("Température : ");
  Serial.print(temp);
  Serial.print(" °C, Humidité : ");
  Serial.print(hum);
  Serial.println(" %");

  // Affichage sur OLED
  u8g2.clearBuffer();
  u8g2.setFont(u8g2_font_ncenB14_tr); // Police lisible
  u8g2.setCursor(0, 24);
  u8g2.print("T: ");
  u8g2.print(temp, 1);
  u8g2.print(" C");

  u8g2.setCursor(0, 48);
  u8g2.print("H: ");
  u8g2.print(hum, 1);
  u8g2.print(" %");

  u8g2.sendBuffer();

  delay(2000);
}