RTC часы реального времени DS3231 - Arduino

loker95
Offline
Зарегистрирован: 11.02.2017
Ребята подскажите, код универсальный и простой,запускаю все нормально работает, когда отключаю ардуинку время сбивается, что надо сделать что бы время сохранилась на памяти и работал там? (свой источник проверил есть напр. 3.3В)
#include <iarduino_RTC.h>

iarduino_RTC time(RTC_DS3231);
void setup() {
    delay(300);
    Serial.begin(9600);
    time.begin();
   //time.settime(0,57,10,11,02,17,6);  // 0  сек, 51 мин, 21 час, 27, октября, 2015 года, вторник
}
void loop(){
    if(millis()%1000==0){ // если прошла 1 секунда
      Serial.println(time.gettime("d-m-Y, H:i:s, D")); // выводим время
      delay(1); // приостанавливаем на 1 мс, чтоб не выводить время несколько раз за 1мс
    }
}

 

 

bwn
Offline
Зарегистрирован: 25.08.2014

Не поленитесь, поищите по форуму. Их здесь раз десять настраивали.

loker95
Offline
Зарегистрирован: 11.02.2017

bwn пишет:

Не поленитесь, поищите по форуму. Их здесь раз десять настраивали.

попросил помощи потому что не нашел

bwn
Offline
Зарегистрирован: 25.08.2014

Правый верхний угол "Поиск". Забиваем DS3231 - наслаждаемся темами.

Genri5
Offline
Зарегистрирован: 31.05.2016

loker95 пишет:

Ребята подскажите, код универсальный и простой,запускаю все нормально работает, когда отключаю ардуинку время сбивается, что надо сделать что бы время сохранилась на памяти и работал там? (свой источник проверил есть напр. 3.3В)




#include <iarduino_RTC.h>

iarduino_RTC time(RTC_DS3231);
void setup() {
    delay(300);
    Serial.begin(9600);
    time.begin();
   //time.settime(0,57,10,11,02,17,6);  // 0  сек, 51 мин, 21 час, 27, октября, 2015 года, вторник
}
void loop(){
    if(millis()%1000==0){ // если прошла 1 секунда
      Serial.println(time.gettime("d-m-Y, H:i:s, D")); // выводим время
      delay(1); // приостанавливаем на 1 мс, чтоб не выводить время несколько раз за 1мс
    }
}

 

Есть для этой микросхемы прекрасная библиотека -  #include "ds3231.h", а той что ты пользуешся я не знаю.

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

loker95 пишет:

что надо сделать что бы время сохранилась на памяти и работал там? 

Установить в 0 бит 7 регистра 0E микросхемы (см. стр. 13 даташита)

Если следующим вопросом будет "Как это сделать с помощью моей библиотеки?", то ответом будет "не знаю, и не хочу разбираться". Как это делать с другой библиотекой (которую я знаю) я буквально на прошлой неделе объяснял коллеге (это к тому, что Вы "искали"). Смотрите вот с этого поста. Там и на библиотеку ссылка есть.