modified: feeder_v2.1.ino

This commit is contained in:
George Butskivsky 2023-11-24 11:29:09 +03:00
parent ce9cde2989
commit b5d685f9e2
1 changed files with 3 additions and 19 deletions

View File

@ -27,10 +27,7 @@ bgp, 2023
#include "microDS3231.h" #include "microDS3231.h"
MicroDS3231 rtc; MicroDS3231 rtc;
#include "EncButton.h" #include "EncButton.h"
// #include <Sleep_n0m1.h> //подключение библиотеки для режимов сна
// #include <Wire.h>
#include <GyverPower.h>
// #include <I2C_RTC.h>
EncButton<EB_TICK, BTN_PIN> btn; EncButton<EB_TICK, BTN_PIN> btn;
EncButton<EB_TICK, BTN_PIN2> btn2; EncButton<EB_TICK, BTN_PIN2> btn2;
@ -60,7 +57,7 @@ int paymentsCount = 0;
int onTime = 6; // время включения int onTime = 6; // время включения
int offTime = 20; // время выключения int offTime = 20; // время выключения
// Sleep sleep; //объект для работы с режимами сна
unsigned long sleepTime; //переменная для задания времени сна unsigned long sleepTime; //переменная для задания времени сна
@ -87,17 +84,6 @@ void setup() {
pinMode(TERM_COIN, INPUT); // прием сигнала от терминала pinMode(TERM_COIN, INPUT); // прием сигнала от терминала
pinMode(RELAY, OUTPUT); pinMode(RELAY, OUTPUT);
power.autoCalibrate(); // автоматическая калибровка ~ 2 секунды , средняя но достаточная точность
// отключение ненужной периферии
power.hardwareDisable(PWR_ADC | PWR_TIMER1); // см раздел константы в GyverPower.h, разделяющий знак " | "
// управление системной частотой
power.setSystemPrescaler(PRESCALER_2); // см константы в GyverPower.h
// настройка параметров сна
power.setSleepMode(STANDBY_SLEEP); // если нужен другой режим сна, см константы в GyverPower.h (по умолчанию POWERDOWN_SLEEP)
power.bodInSleep(false); // рекомендуется выключить bod во сне для сохранения энергии (по умолчанию false - выключен!!)
sleepTime = 60 * 60 * 1000; sleepTime = 60 * 60 * 1000;
//Debug //Debug
@ -131,12 +117,10 @@ void loop() {
// Serial.println(rtc.getYear()); // Serial.println(rtc.getYear());
if (voltage < 13.2) { if (voltage < 13.2) {
digitalWrite(RELAY, LOW); digitalWrite(RELAY, LOW);
// sleep.pwrDownMode(); //установка режима сна PWR_DOWN delay(sleepTime);
power.sleep(sleepTime); //заснуть на указанное время
} }
if ((now.hour >= onTime && now.hour < offTime && voltage > 13.2)) { //&& voltage > 10.2 if ((now.hour >= onTime && now.hour < offTime && voltage > 13.2)) { //&& voltage > 10.2
digitalWrite(RELAY, HIGH); // работаем если время рабочее И напряжение выше минимума digitalWrite(RELAY, HIGH); // работаем если время рабочее И напряжение выше минимума
// digitalWrite(TERM_INHIB, LOW);
} else { } else {
digitalWrite(RELAY, LOW); digitalWrite(RELAY, LOW);
} }