Реле времени на основе модуля точного времени DS3231

zepto23
Offline
Зарегистрирован: 30.05.2018

Подскажите пожалуйста, есть данный код, мне нужно модифицировать его так, чтобы условно говоря каждый день в 4 утра подавалось питание на ногу D10 на 10 минут. Я полный профан, прошу помощи. Модуль времени уже настроен на локальное время. Плата Arduino Micro(ATmega32u4)

// during an alarm the INT pin of the RTC is pulled low
//
// this is handy for minimizing power consumption for sensor-like devices,
// since they can be started up by this pin on given time intervals.

#include
#include "ds3231.h"

#define BUFF_MAX 256

// time when to wake up
uint8_t wake_HOUR = 15;
uint8_t wake_MINUTE = 49;
uint8_t wake_SECOND = 9;

// how often to refresh the info on stdout (ms)
unsigned long prev = 5000, interval = 5000;

void set_alarm(void)
{

// flags define what calendar component to be checked against the current time in order
// to trigger the alarm - see datasheet
// A1M1 (seconds) (0 to enable, 1 to disable)
// A1M2 (minutes) (0 to enable, 1 to disable)
// A1M3 (hour) (0 to enable, 1 to disable)
// A1M4 (day) (0 to enable, 1 to disable)
// DY/DT (dayofweek == 1/dayofmonth == 0)
uint8_t flags[5] = { 0, 0, 0, 1, 1 };

// set Alarm1
DS3231_set_a1(wake_SECOND, wake_MINUTE, wake_HOUR, 0, flags);

// activate Alarm1
DS3231_set_creg(DS3231_INTCN | DS3231_A1IE);
}

void setup()
{
Serial.begin(9600);
Wire.begin();
DS3231_init(DS3231_INTCN);
DS3231_clear_a1f();
set_alarm();
}

void loop()
{
char buff[BUFF_MAX];
unsigned long now = millis();
struct ts t;

// once a while show what is going on
if ((now - prev > interval) && (Serial.available() <= 0)) {
DS3231_get(&t);

// display current time
snprintf(buff, BUFF_MAX, "%d.%02d.%02d %02d:%02d:%02d", t.year,
t.mon, t.mday, t.hour, t.min, t.sec);
Serial.println(buff);

// display a1 debug info
DS3231_get_a1(&buff[0], 59);
Serial.println(buff);

if (DS3231_triggered_a1()) {
// INT has been pulled low
Serial.println(" -> alarm1 has been triggered");
// clear a1 alarm flag and let INT go into hi-z
DS3231_clear_a1f();
}
prev = now;
}
}

b707
Offline
Зарегистрирован: 26.05.2017

вы не в тот раздел написали, в этом выкладывают готовые проекты, а не вопросы задают.

И если будете выкладывать в другом месте - вставляйте код в сообщение правильно, иначе с вами никто разговаривать не станет.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

zepto23 пишет:
мне нужно модифицировать его

Если Вы

zepto23 пишет:
полный профан,

То Вам нужно запостить свою просьбу в разделе "Ищу исполнителя", заплатить деньги и получить готовое решение.