const int LIGHT_SENSOR_PIN = A4;
const int RELAY_PIN = 7;
const int BUTTON_PIN = 2;
const int DARKNESS_THRESHOLD = 600;
// инверсия реле (у тебя именно такая)
const int RELAY_STATE_ON = LOW;
const int RELAY_STATE_OFF = HIGH;
void setup() {
Serial.begin(9600);
pinMode(RELAY_PIN, OUTPUT);
pinMode(BUTTON_PIN, INPUT_PULLUP);
digitalWrite(RELAY_PIN, RELAY_STATE_OFF);
}
void loop() {
int lightValue = analogRead(LIGHT_SENSOR_PIN);
int buttonState = digitalRead(BUTTON_PIN);
Serial.print("Свет: ");
Serial.print(lightValue);
Serial.print(" | Кнопка: ");
Serial.println(buttonState);
// ✅ ГЛАВНОЕ УСЛОВИЕ ИЗ ЗАДАНИЯ
if (lightValue > DARKNESS_THRESHOLD && buttonState == LOW) {
digitalWrite(RELAY_PIN, RELAY_STATE_ON); // включаем
Serial.println("Темно + нажата кнопка → ВКЛ");
} else {
digitalWrite(RELAY_PIN, RELAY_STATE_OFF); // выключаем
Serial.println("Условия не выполнены → ВЫКЛ");
}
delay(200);
}