/
jazonvisor
/
GrayBox
Обзор
Документация
Войти
/
jazonvisor
/
GrayBox
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
GrayBox.ino
61 строка
2 KB
jazon
Шаг первый - настройка 4-х каналов реле
14 дек 2024, 23:13
14 дек 2024, 23:13
f0e54ff
Код
Авторство
О чём код?
#include "defines.h" #include "variables.h" #include "Relay.h" #include <TimerOne.h> #include <iarduino_RTC.h> /*Создаём объект для работы с текущим значением времени*/ iarduino_RTC watch(RTC_DS1307); /*Создаём объектs для управления, первое реле управляется по времени, второе включается напрямую с кнопки*/ Relay RelayLigth(Relay1Pin); Relay RelayPump(Relay2Pin); Relay RelayGas(Relay3Pin); Relay RelayFeed(Relay4Pin); /* На реальном физическом устройстве, слева-направо 1. Подача корма 2. Подача двуокиси углерода 3. Помпа 4. Освещение */ void setup(){ Serial.begin(9600); /*Установка временного диапазона включения/выключения освещения*/ RelayLigth.SetOnOffTime(120000,220000); /*Делаем управление доступным*/ RelayLigth.SetActivity(ON); /*Установка временного диапазона включения/выключения помпы фильтрации*/ RelayPump.SetOnOffTime(200000,190000); /*Делаем управление доступным*/ RelayPump.SetActivity(ON); /*Установка временного диапазона включения/выключения подачи двуокиси углерода CO2*/ RelayGas.SetOnOffTime(130000,210000); /*Делаем управление доступным*/ RelayGas.SetActivity(ON); /*Установка временного диапазона включения/выключения подачи корма*/ RelayFeed.SetOnOffTime(191000,191001); /*Делаем управление доступным*/ RelayFeed.SetActivity(ON); /*Базовая настройка TimerOne*/ Timer1.initialize(500000); Timer1.attachInterrupt(TimingISR); /*Запускаем RTC-модуль*/ watch.begin(); } void loop(){ /**/ if(Update==ON){ /**/ Serial.println(watch.gettime("His")); /*Управляем релейным модулем, вызываем перегруженный метод DailyControl()*/ RelayLigth.DailyControl(watch.gettime("His")); RelayPump.DailyControl(watch.gettime("His")); RelayGas.DailyControl(watch.gettime("His")); RelayFeed.DailyControl(watch.gettime("His")); Update=OFF; } }