#define CLK 25
#define DIO 26
#include <GyverTM1637.h>
#include <RTClib.h>
GyverTM1637 disp(CLK,DIO);
RTC_DS1307 rtc;
void setup() {
disp.clear();
disp.brightness(7);
disp.point(1);
rtc.begin();
Serial.begin(115200);
}
void loop() {
dispTime();
dispSec();
Timenow();
}
void dispSec(void){
disp.point(1);
delay(1000);
disp.point(0);
delay(1000);
}
void dispTime (void){
DateTime now=rtc.now();
byte hrs=now.hour();
byte mins=now.minute();
disp.displayClock(hrs,mins);
}
void Timenow(){
DateTime now = rtc.now(); // รับเวลาปัจจุบันจาก RTC
int currentMinute = (now.hour() * 60) + now.minute(); // คำนวณเวลาปัจจุบันเป็นนาที
// กำหนดเวลาที่ต้องการให้อาหารปลา
const int feedTimeMorning = 9 * 26; // 8:00 น.
const int feedTimeEvening = 18 * 60; // 18:00 น.
// ตรวจสอบเวลาให้อาหารปลา
if (currentMinute == feedTimeMorning || currentMinute == feedTimeEvening) {
Serial.println("กำลังให้อาหารปลา");
// digitalWrite(RELAY_FEED_PIN, HIGH); // เปิดมอเตอร์ให้อาหารปลา
delay(5000); // ให้อาหาร 5 วินาที (ปรับตามต้องการ)
Serial.println("หยุดให้อาหารปลา");
// digitalWrite(RELAY_FEED_PIN, LOW); // ปิดมอเตอร์ให้อาหารปลา
delay(60000); // หน่วงเวลา 1 นาที เพื่อหลีกเลี่ยงการให้อาหารซ้ำ
}
delay(1000); // หน่วงเวลา 1 วินาที
}