#include <Wire.h>
#include <RTClib.h>
#include <Servo.h>
RTC_DS1307 rtc; // DS1307 RTC modülü için nesne oluştur
Servo myServo; // Servo motor nesnesi oluştur
int servoPin = 9; // Servo motorun bağlı olduğu pin
int openAngle = 90; // Servo motorun açılacağı açı
int closeAngle = 0; // Servo motorun kapanacağı açı
void setup() {
Serial.begin(9600);
// RTC'yi başlat
if (!rtc.begin()) {
Serial.println("RTC bağlantısı başarısız!");
while (1);
}
if (!rtc.isrunning()) {
// Eğer RTC çalışmıyorsa saati ayarlayın
Serial.println("RTC çalışmıyor, saat ayarlanıyor!");
rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); // Arduino'nun derleme zamanına göre saati ayarlar
}
myServo.attach(servoPin); // Servo motoru belirtilen pine bağla
}
void loop() {
DateTime now = rtc.now(); // RTC'den mevcut zamanı al
Serial.print("Saat: ");
Serial.print(now.hour());
Serial.print(":");
Serial.print(now.minute());
Serial.print(":");
Serial.println(now.second());
// Belirli saat aralığında servo motoru aç/kapa
if (now.hour() == 23 && now.minute() == 3) {
myServo.write(openAngle); // Servo motoru aç (90 derece)
delay(5000); // 5 saniye bekle
myServo.write(closeAngle); // Servo motoru kapa (0 derece)
// burda kapama kısmında bug oluyor
}
delay(1000);
}