#include <LiquidCrystal_I2C>
// Definisikan Pin
const int ldr1Pin = A0; // Pin untuk LDR1
const int ldr2Pin = A1; // Pin untuk LDR2
const int ledPin = 9; // Pin Untuk LED
LiquidCrystal_I2C lcd(0x27, 16, 2); // Alamat I2C bisa berbeda
// Ambang Batas Cahaya Untuk Menyalakn LED
const int threshold = 100;
void setup() {
pinMode(ledPin, OUTPUT); // Setel Pin LED sebagai output
lcd.begin();
Serial.begin(9600); // Mulai komunikasi serial
}
void loop() {
int ldr1Value = analogRead(ldr1Pin); // Baca nilai dari LDR1
int ldr2Value = analogRead(ldr2Pin); // Baca nilai dari LDR2
// Tampilakan nilai LDR ke serial monitor (opsional)
Serial.print("NILAI LDR1: ");
Serial.println(ldr1Value);
Serial.print("NILAI LDR2: ");
Serial.println(ldr2Value);
// JIka nilai LDR kurang Dari ambang batas, Nyalakan LED
if((!ldr1Value > threshold) || (ldr2Value > threshold)) {
digitalWrite(ledPin, HIGH); // Nyalakan LED
} else{
digitalWrite(ledPin, LOW); // Matikan LED
}
if ((ldr1Value < threshold)) {
lcd.setCursor(1.0);
lcd.print("In1=on ");
} else {
lcd.setCursor(1,0);
lcd.print("In1=off ")
}
if ((ldr2Value < threshold)) {
lcd.setCursor(9.0);
lcd.print("In2=on ");
} else {
lcd.setCursor(9.0);
lcd.print("in2=off" );
}
if ((ldr1Value > threshold) || (ldr2Value > threshold)) {
lcd.setCursor(3.3);
lcd.print("output=off");
} else {
lcd.setCursor(3.3);
lcd.print("output=on");
}
delay(100); // Tunggu sejenak sebelum pembacaan berikutnya
}