Difference between revisions of "Crowtail-DHT20"
| (One intermediate revision by the same user not shown) | |||
| Line 45: | Line 45: | ||
---- | ---- | ||
| − | Code sur Oled | + | Code sur Oled & Serial |
[[File:Grove Base for XIAO 1.PNG|200px]] | [[File:Grove Base for XIAO 1.PNG|200px]] | ||
| Line 56: | Line 56: | ||
Grove Base for XIAO ✅<br> | Grove Base for XIAO ✅<br> | ||
XIAO-ESP32S3 <br> | XIAO-ESP32S3 <br> | ||
| − | Crowtail-DHT20 <br> | + | Crowtail-DHT20 (Port <b>I2C</b> : 0x38) <br> |
OLED Display 128×64 (Port <b>I2C</b> : 0x3C)<br> | OLED Display 128×64 (Port <b>I2C</b> : 0x3C)<br> | ||
Latest revision as of 23:58, 30 October 2025
https://www.elecrow.com/wiki/crowtail--dht20.html
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 & Serial
Grove Base for XIAO ✅
XIAO-ESP32S3
Crowtail-DHT20 (Port I2C : 0x38)
OLED Display 128×64 (Port I2C : 0x3C)
#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);
}