#include <Servo.h>
Servo doorServo;
int pos = 0;
boolean Signal = false;
boolean btnSignal = false;
void setup() {
Serial.begin(9600);
pinMode(13, OUTPUT);
doorServo.attach(9);
}
void loop() {
if (digitalRead(12)) { // кнопка вкл/выкл сигнализации
delay(20);
if (digitalRead(12) && btnSignal == false ) {
btnSignal = true;
Signal = !Signal; // при нажатии на кнопку меняем состояние сигнализации на обратное
}
} else {
btnSignal = false;
}
Serial.println(Signal);
if (Signal) { // Сигнализация включена
// Свет выключить
digitalWrite(13, LOW);
// Дверь закрыть
while (pos <= 180){
doorServo.write(pos);
pos += 1 ;
delay(15);
}
// Окно закрыть
// Датчик движения включить
} else { // Сигнализация выключена
// Свет включается в зависимости от освещения
//Serial.println(lightValue);
if (analogRead(A0) > 500) { // темно
digitalWrite(13, HIGH);
} else { // светло
digitalWrite(13, LOW);
}
// Дверь открыть
while (pos >= 0){
doorServo.write(pos);
pos -= 1 ;
delay(15);
}
// Окно открыть
// Датчик движения выключить
}
// delay(1000);
}