Подскажите, в чем проблема???

gfi
Offline
Зарегистрирован: 19.03.2016

Всем доброго времени суток! Подскажите пожалуйста решить проблему. Я только начал разбираться с ардуинкой.

У меня такая проблема:

gfi
Offline
Зарегистрирован: 19.03.2016

Штирлиц
Штирлиц аватар
Offline
Зарегистрирован: 13.06.2015

установи библиотеку RTClib

gfi
Offline
Зарегистрирован: 19.03.2016

В папке LIBRARIAS библиотека RTClib стоит. Прога что-то на RTC_DS3231 RTC ругается.

За ответ спасибо.

gfi
Offline
Зарегистрирован: 19.03.2016

Никак не въеду, на что ругается

gfi
Offline
Зарегистрирован: 19.03.2016

#include <DS3231.h>                                 //Подключаем библиотеку для использования модуля часов реального времени RTC

#include <Wire.h>                                   //Подключаем библиотеку для использования I2C интерфейса с модулем RTC 

DS3231 RTC;                                        //Создаем переменную класса - для использования RTC

//----------Объявляем разные переменные------------

const int RelayChn = 13;                            //Используем цифровой ПОРТ 13 для ПЕРВОГО канала релейного модуля

//----------Настройки времени и продолжительности включения реле

const int StartRelCn = 25;                        //Время срабатывания в канале релейного модуля (в секундах от начала суток) 
                            
const int DurationCh = 10;                        //ДЛИТЕЛЬНОСТЬ срабатывания реле в канале (в секундах) 

//----------Модуль инициализации setup() - выполняется один раз при инициализации платы при подаче напряжение (и аналогичных событиях) 
void setup(){
  
  pinMode(RelayChn,OUTPUT);                        //Инициализируем порт для канала как ВЫХОД
  
  digitalWrite(RelayChn,LOW);                      //Устанавливаем на входах релейного модуля НИЗКИЙ уровень 
  
  Wire.begin();                                    //Инициируем I2C интерфейс
  DTC.begin();                                     //Инициирум RTC модуль

//    RTC.adjust(DateTime(__DATE__, __TIME__));     

}                                                   // КОНЕЦ ИНИЦИАЛИЗАЦИИ

//--------------------------------------------------
void loop()                                         // ПРОГРАММЫй безусловный ЦИКЛ 
{
    DateTime myTime = RTC.now();                    //Читаем данные времени из RTC при каждом выполнении цикла

    //----------Раздел обработки реле по времени ----
    long utime = myTime.unixtime();                  //сохраняем в переменную - время в формате UNIX
    utime %= 60;                                  //Сохраняем в этой же переменной остаток деления на кол-во секнд в сутках, 
                                                     //Это дает количество секунд с начала текущих суток

  //------------КАНАЛ 1------------------------------
    if ((utime >= StartRelCn) && 
       (utime < (StartRelCn+DurationCh)))
                                                      //Если секунд с начала суток больше, чем задано для включения 
                                                      //Но, одновременно и меньше, чем задано для включения + длительность 
      {
          digitalWrite(RelayChn,HIGH);                //Устанавливаем на входе релейного модуля ВЫСОКИЙ уровень - реле срабатывает
      }  
    else                                              //во всех остальных случаях 
      {
          digitalWrite(RelayChn,LOW);               //Устанавливаем на входе релейного модуля НИЗКИЙ уровень - реле выключается
      } 

    
}//------------Конец ЦИКЛА-----------------------------

 

gfi
Offline
Зарегистрирован: 19.03.2016

Код не мой, позаимствовал с сайта аквариумистов. переделал малость под себя, удалил лишнее. Нужно чтобы срабатывал на 13 пине в определенное время на заданное количество секунд.

автополивайку горожу малость.

T.Rook
Offline
Зарегистрирован: 05.03.2016

А это что такое:

 DTC.begin();                                     //Инициирум RTC модуль

Где определение и объявление ЭТОГО "DTC"?

T.Rook
Offline
Зарегистрирован: 05.03.2016

Кроме того, методы:

  RTC.begin();                                     //Инициирум RTC модуль

  DateTime myTime = RTC.now();                    //Читаем данные времени из RTC при каждом выполнении цикла

существуют в библиотеке RTCLib.h, а не в DS3231.h

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

DTC , RTC....... D и R рядом , по диагонали.....

gfi
Offline
Зарегистрирован: 19.03.2016

Спасибо парни!!!

Библа RTClib рулит!!!!! Вопрос снят. Начинающий...

Штирлиц
Штирлиц аватар
Offline
Зарегистрирован: 13.06.2015

Да , и картинки такие "огромные" к чему тут выставлять? Очки и микроскоп отвалились сразу.

И скетч с первого поста , по мойму, не  такой как в постах  ниже