#include <Wire.h>
#include <RTClib.h>
RTC_DS1307 RTC; // Створення об'єкту RTC_DS1307
char weekDay[][7] = { "Пн", "Вт", "Ср", "Чт", "Пт", "Сб", "Нд" }; // Масив для назви днів тижня
//DateTime dt(2011, 11, 10, 15, 18, 0); // Задання початкової дати та часу
void setup() {
Serial.begin(57600); // Ініціалізація порту зі швидкістю передачі 57600 бод
Wire.begin(); // Ініціалізація I2C шини
RTC.begin(); // Ініціалізація модуля DS1307
// RTC.adjust(dt); // Встановлення початкової дати та часу на модулі DS1307
}
void loop() {
DateTime now = RTC.now(); // Отримання поточної дати та часу з модуля DS1307
if (now.day() < 10) // Корегування формату виводу (додавання 0 перед числами до 0)
Serial.print("0");
Serial.print(now.day(), DEC);
Serial.print('/');
if (now.month() < 10)
Serial.print("0");
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.year(), DEC);
Serial.print(' ');
if (now.hour() < 10) // Корегування формату виводу (додавання 0 перед числами до 0)
Serial.print("0");
Serial.print(now.hour(), DEC);
Serial.print(':');
if (now.minute() < 10) // Корегування формату виводу (додавання 0 перед числами до 0)
Serial.print("0");
Serial.print(now.minute(), DEC);
Serial.print(':');
if (now.second() < 10) // Корегування формату виводу (додавання 0 перед числами до 0)
Serial.print("0");
Serial.print(now.second(), DEC);
Serial.print(' ');
Serial.print(weekDay[now.dayOfTheWeek()-1]);
Serial.println();
delay(1000);
}