// fully bright 8-15 LDR value
// partial between 15 to 1000 LDR value
// dark above 1000 LDR value
// fully bright 41687 to 100000 lux value
// partial between 0.5 to 36308 lux value
// dark 0.1 to 0.4 lux value
const int ldrPin = A0; // LDR connected to analog pin A0
const int led1Pin = 13; // LED1 connected to digital pin `13 (for bright light)
const int led2Pin = 12; // LED2 connected to digital pin 12 (for partial light)
const int led3Pin = 11; // LED3 connected to digital pin 11 (for dark)
void setup() {
pinMode(led1Pin, OUTPUT); // Set LED1 pin as output
pinMode(led2Pin, OUTPUT); // Set LED2 pin as output
pinMode(led3Pin, OUTPUT); // Set LED3 pin as output
Serial.begin(9600); // Initialize serial communication at 9600 baud
}
void loop() {
int ldrValue = analogRead(ldrPin); // Read LDR value
Serial.print("LDR Value: "); // Print the text "LDR Value: "
Serial.println(ldrValue); // Print the LDR value
// Logic to turn on one LED at a time based on LDR value
if (ldrValue > 1000) { // It's dark
digitalWrite(led1Pin, LOW); // Turn off LED1
digitalWrite(led2Pin, LOW); // Turn off LED2
digitalWrite(led3Pin, HIGH); // Turn on LED3
} else if (ldrValue > 15 && ldrValue <= 1000) { // It's partially bright
digitalWrite(led1Pin, LOW); // Turn off LED1
digitalWrite(led2Pin, HIGH); // Turn on LED2
digitalWrite(led3Pin, LOW); // Turn off LED3
} else { // It's Fully bright
digitalWrite(led1Pin, HIGH); // Turn on LED1
digitalWrite(led2Pin, LOW); // Turn off LED2
digitalWrite(led3Pin, LOW); // Turn off LED3
}
delay(500);
}