Set up scheduled program cycles #24
|
@ -33,6 +33,7 @@
|
||||||
AsyncWebServer server(80);
|
AsyncWebServer server(80);
|
||||||
|
|
||||||
RTC_DS3231 rtc; // set up RTC
|
RTC_DS3231 rtc; // set up RTC
|
||||||
|
const int alarmPin = 4; // pin to monitor for RTC alarms
|
||||||
|
|
||||||
// Read from config.h
|
// Read from config.h
|
||||||
const char* ssid = WIFI_SSID;
|
const char* ssid = WIFI_SSID;
|
||||||
|
@ -403,6 +404,14 @@ bool start_program(){
|
||||||
void setup() {
|
void setup() {
|
||||||
Serial.begin(115200);
|
Serial.begin(115200);
|
||||||
|
|
||||||
|
pinMode(alarmPin, INPUT_PULLUP); // Set alarm pin as pullup
|
||||||
|
// Disable and clear both alarms
|
||||||
|
// rtc.disableAlarm(1);
|
||||||
|
// rtc.disableAlarm(2);
|
||||||
|
// rtc.clearAlarm(1);
|
||||||
|
// rtc.clearAlarm(2);
|
||||||
|
// rtc.writeSqwPinMode(DS3231_OFF); // Place SQW pin into alarm interrupt mode
|
||||||
|
|
||||||
// https://github.com/JChristensen/DS3232RTC/blob/master/examples/TimeRTC/TimeRTC.ino
|
// https://github.com/JChristensen/DS3232RTC/blob/master/examples/TimeRTC/TimeRTC.ino
|
||||||
// rtc.begin();
|
// rtc.begin();
|
||||||
// setSyncProvider(rtc.get); // the function to get the time from the RTC
|
// setSyncProvider(rtc.get); // the function to get the time from the RTC
|
||||||
|
@ -427,6 +436,11 @@ void setup() {
|
||||||
//rtc.adjust(DateTime(2023, 9, 2, 17, 32, 0));
|
//rtc.adjust(DateTime(2023, 9, 2, 17, 32, 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Are there any RTC alarms set?
|
||||||
|
DateTime alarm_two = rtc.getAlarm2(); // Get the current time
|
||||||
|
char buff[] = "Alarm 2 set for at hh:mm:ss DDD, DD MMM YYYY";
|
||||||
|
Serial.println(alarm_two.toString(buff));
|
||||||
|
|
||||||
// Timer example, blink main LED
|
// Timer example, blink main LED
|
||||||
pinMode(LED_BUILTIN, OUTPUT); // set LED pin to OUTPUT
|
pinMode(LED_BUILTIN, OUTPUT); // set LED pin to OUTPUT
|
||||||
// call the toggle_led function every 10000 millis (10 second)
|
// call the toggle_led function every 10000 millis (10 second)
|
||||||
|
@ -645,15 +659,16 @@ void loop() {
|
||||||
// We don't want old alarms, though.
|
// We don't want old alarms, though.
|
||||||
//& (rtc.getAlarm2() >= rtc.now())
|
//& (rtc.getAlarm2() >= rtc.now())
|
||||||
// if ((rtc.alarmFired(2) == 1) ){
|
// if ((rtc.alarmFired(2) == 1) ){
|
||||||
|
if (digitalRead(alarmPin) == LOW) {
|
||||||
|
|
||||||
// // Print current time and date
|
// Print current time and date
|
||||||
// DateTime now = rtc.now(); // Get the current time
|
DateTime now = rtc.now(); // Get the current time
|
||||||
// char buff[] = "Alarm triggered at hh:mm:ss DDD, DD MMM YYYY";
|
char buff[] = "Alarm triggered at hh:mm:ss DDD, DD MMM YYYY";
|
||||||
// Serial.println(now.toString(buff));
|
Serial.println(now.toString(buff));
|
||||||
|
|
||||||
// // Disable and clear alarm
|
// Disable and clear alarm
|
||||||
// rtc.clearAlarm(2);
|
rtc.clearAlarm(2);
|
||||||
// }
|
}
|
||||||
|
|
||||||
// DateTime now = rtc.now();
|
// DateTime now = rtc.now();
|
||||||
// Serial.print(now.year(), DEC);
|
// Serial.print(now.year(), DEC);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user