const int LDR_PIN = A0;
const int LED_PIN = 13;
const int THRESHOLD = 500;
int ldrValue = 0;
class LightSensor {
private:
int pin;
public:
LightSensor(int pin) {
this->pin = pin;
}
int read() {
return analogRead(pin);
}
};
class LEDController {
private:
int pin;
public:
LEDController(int pin) {
this->pin = pin;
pinMode(pin, OUTPUT);
}
void turnOn() {
digitalWrite(pin, HIGH);
}
void turnOff() {
digitalWrite(pin, LOW);
}
void control(int ldrValue, int threshold) {
if (ldrValue < threshold) {
turnOn();
} else {
turnOff();
}
}
};
LightSensor ldr(LDR_PIN);
LEDController led(LED_PIN);
void setup() {
Serial.begin(9600);
}
void loop() {
ldrValue = ldr.read();
Serial.print("LDR Value: ");
Serial.println(ldrValue);
led.control(ldrValue, THRESHOLD);
delay(500);
}