#include <DHT.h>
#define DHTPIN 2 // Pin data DHT11 terhubung ke pin 2 Arduino
#define DHTTYPE DHT11 // Tipe sensor yang digunakan (DHT11)
#define LED1 3 // LED1 terhubung ke pin 3 Arduino
#define LED2 4 // LED2 terhubung ke pin 4 Arduino
#define LED3 5 // LED3 terhubung ke pin 5 Arduino
#define LED4 6 // LED4 terhubung ke pin 6 Arduino
#define LED5 7 // LED5 terhubung ke pin 7 Arduino
#define LED6 8 // LED6 terhubung ke pin 8 Arduino
#define LED7 9 // LED7 terhubung ke pin 9 Arduino
#define BUTTON1 A0 // Tombol 1 terhubung ke pin A0 Arduino
#define BUTTON2 A1 // Tombol 2 terhubung ke pin A1 Arduino
#define BUTTON3 A2 // Tombol 3 terhubung ke pin A2 Arduino
#define BUTTON4 A3 // Tombol 4 terhubung ke pin A3 Arduino
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
dht.begin();
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(LED4, OUTPUT);
pinMode(LED5, OUTPUT);
pinMode(LED6, OUTPUT);
pinMode(LED7, OUTPUT);
pinMode(BUTTON1, INPUT_PULLUP);
pinMode(BUTTON2, INPUT_PULLUP);
pinMode(BUTTON3, INPUT_PULLUP);
pinMode(BUTTON4, INPUT_PULLUP);
}
void loop() {
delay(2000); // Tunggu beberapa saat antara pembacaan
float humidity = dht.readHumidity(); // Baca kelembaban
float temperature = dht.readTemperature(); // Baca suhu dalam Celcius (default)
// Cek jika bacaan berhasil
if (isnan(humidity) || isnan(temperature)) {
Serial.println("Gagal membaca sensor DHT11");
return;
}
// Tampilkan hasil pembacaan ke Serial Monitor
Serial.print("Kelembaban: ");
Serial.print(humidity);
Serial.print(" %\t");
Serial.print("Suhu: ");
Serial.print(temperature);
Serial.println(" °C");
// Baca status tombol dan kontrol LED
if (digitalRead(BUTTON1) == LOW) {
Serial.println("Tombol 1 ditekan!");
digitalWrite(LED1, HIGH);
// Logika untuk mengontrol LED saat tombol 1 ditekan
// Contoh: digitalWrite(LED1, HIGH);
} else if (digitalRead(BUTTON2) == LOW) {
Serial.println("Tombol 2 ditekan!");
digitalWrite(LED2, HIGH);
// Logika untuk mengontrol LED saat tombol 2 ditekan
} else if (digitalRead(BUTTON3) == LOW) {
Serial.println("Tombol 3 ditekan!");
digitalWrite(LED3, HIGH);
// Logika untuk mengontrol LED saat tombol 3 ditekan
} else if (digitalRead(BUTTON4) == LOW) {
Serial.println("Tombol 4 ditekan!");
digitalWrite(LED4, HIGH);
// Logika untuk mengontrol LED saat tombol 4 ditekan
} else {
Serial.println("Tidak ada tombol yang ditekan.");
digitalWrite(LED5, HIGH);
digitalWrite(LED6, HIGH);
digitalWrite(LED7, HIGH);
// Logika saat tidak ada tombol yang ditekan
}
}