#include "DHT.h"
#define DHTPIN 14 // Pin digital untuk DHT22
#define DHTTYPE DHT22 // Tipe sensor DHT (DHT22)
// Inisialisasi objek sensor
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600); // Inisialisasi komunikasi serial
Serial.println("Tes Sensor DHT22!");
dht.begin(); // Inisialisasi sensor
}
void loop() {
// Tunggu 2 detik antara pengukuran
delay(1000);
// Baca kelembaban
float h = dht.readHumidity();
// Baca suhu dalam Celsius
float t = dht.readTemperature();
// Periksa nilai suhu dan ambil tindakan
if (t < 18) {
Serial.println("Suhu dingin!");
// Kode untuk kondisi dingin
} else if (t >= 18 && t <= 28) {
Serial.println("Suhu nyaman!");
// Kode untuk kondisi nyaman
} else if (t > 28) {
Serial.println("Suhu panas!");
// Kode untuk kondisi panas
}
}
void loop() {
delay(2000);
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t)) {
Serial.println("Gagal membaca sensor!");
return;
}
// LED merah menyala jika suhu > 30°C
if (t > 30) {
digitalWrite(LED_MERAH, HIGH);
} else {
digitalWrite(LED_MERAH, LOW);
}
// Buzzer berbunyi jika kelembaban < 40%
if (h < 40) {
digitalWrite(BUZZER, HIGH);
} else {
digitalWrite(BUZZER, LOW);
}
// Tampilkan data
Serial.print("Kelembaban: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Suhu: ");
Serial.print(t);
Serial.println(" *C");
}