#include "Servo.h"
// пин сервопривода
#define SERVO_PIN 4
// пин пищалки
#define BUZZER_PIN 3
int sensorPin = A0; // устанавливаем входную ногу для АЦП
unsigned int sensorValue = 0; // цифровое значение фоторезистора
Servo SERVO;
void setup() {
// сообщаем пользователю, что мы запустились
tone(BUZZER_PIN, 600, 100);
delay(100);
Serial.begin(115200);
}
void loop() {
static bool open = true;
sensorValue = analogRead(sensorPin); // считываем значение с фоторезистора
if (sensorValue <= 500 && open == false) {
Serial.println("Opening blinds");
open = true;
SERVO.attach(SERVO_PIN);
SERVO.write(0);
// ждём указанное время открытия/закрытие жалюзей
delay(2000);
// самый простой способ остановить серву постоянного вращения
// отсоединиться от неё
SERVO.detach();
}
else if (sensorValue > 740 && open == true) {
Serial.println("Closing blinds");
open = false;
SERVO.attach(SERVO_PIN);
SERVO.write(180);
// ждём указанное время открытия/закрытие жалюзей
delay(2000);
// самый простой способ остановить серву постоянного вращения
// отсоединиться от неё
SERVO.detach();
}
}