🌡️ ماموریت ۷۸: ایستگاه هوا: دما و رطوبت

DHT22 را به D2 و LCD I2C را به A4/A5 وصل کن. readTemperature و readHumidity را هر ۲ ثانیه بخوان.

سطح: متوسط ⭐⭐ · مود: آردوینو — با کد

هدف‌ها

قطعه‌های لازم

▶ همین ماموریت را در شبیه‌ساز امتحان کن
💡 گیر کردی؟ داخل شبیه‌ساز راهنما را ببین، و اگر باز هم نشد دکمه‌ی «برام حلش کن» مدار را برایت می‌چیند تا ببینی چطور کار می‌کند.

جواب کامل

اول خودت امتحان کن! بعد جواب را ببین 👀

سیم‌کشی

  1. Arduino Uno (VCC5) ⟷ dht-sensor (VCC)
  2. Arduino Uno (D2) ⟷ dht-sensor (DATA)
  3. dht-sensor (GND) ⟷ Arduino Uno (GND2)
  4. Arduino Uno (VCC5) ⟷ LCD 16×2 I2C (VCC)
  5. LCD 16×2 I2C (GND) ⟷ Arduino Uno (GND1)
  6. Arduino Uno (A4) ⟷ LCD 16×2 I2C (SDA)
  7. Arduino Uno (A5) ⟷ LCD 16×2 I2C (SCL)

کد

// Temperature + humidity from a DHT22 on an I2C LCD
#include <DHT.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

DHT dht(2, DHT22);
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  dht.begin();
  lcd.init();
  lcd.backlight();
}

void loop() {
  float t = dht.readTemperature();
  float h = dht.readHumidity();
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("Temp: ");
  lcd.print(t, 1);
  lcd.print(" C");
  lcd.setCursor(0, 1);
  lcd.print("Hum:  ");
  lcd.print(h, 0);
  lcd.print(" %");
  delay(2000);          // a DHT22 needs about 2 s between readings
}

ماموریت‌های مشابه

📈

ماموریت ۷۷: نمودار زنده روی OLED

🕰️

ماموریت ۷۹: ساعت واقعی با DS3231

🖥️

ماموریت ۷۶: سلام روی نمایشگر OLED

😊

ماموریت ۸۱: شکلک روی ماتریس ۸×۸

📚 برای یاد گرفتن پایه‌ها سری به دوره‌ی آموزش آردوینو بزن · 🎯 همه‌ی ماموریت‌ها