DS3231 подключение

RTC DS3231

Сегодня я расскажу, как подключить модуль часов реального времени RTC DS3231 и вывести результат на экран дисплея NOKIA 5110. Это второй урок про этот дисплей и если вы не смотрели первый, то вам будет труднее разобраться.
Модуль часов точного времени RTC DS3231.

Модуль часов DS3231 НИЗ

Аббревиатура RTC означает - Часы Реального Времени от английского Real Time Clock.
В этом уроке мы познакомимся.
С самим модулем.
Научимся устанавливать и записывать в него, время, день, месяц и год.
Считывать данные из памяти и разбивать их на значения, чтобы можно было выводить их на экран дисплея.
Покажу как вывести свой шрифт на экран.

ШРИФТ

Как это сделать я рассказывал в прошлом уроке.
Посмотрим, что получилось.
Видео я ускорил в 5 раз, чтобы был лучше виден результат, так что двоеточия мигают быстрее чем на самом деле.

В нашей жизни мы уже не можем представить себя без того, чтобы не знать сколько сейчас времени.
Часы есть у каждого. Они могут быть в телефоне, в фитнес браслете или просто наручные. Дома тоже куда не глянь везде часы. В бытовой технике они встроены так чтобы видеть который час.
Но есть и скрытые часы.
Они могут быть в телевизоре, электроплите и других гаджетах.
Служат для включения и отключения по времени или по таймеру.

Модуль часов DS3231 ВЕРХ

Модуль часов DS3231 НИЗ

Во многих проектах Ардуино требуется отслеживать и фиксировать время. 
Модуль часов реального времени RTC DS3231 лучше всего подходит для этой работы.
Он оснащён дополнительной батареей которая, позволяет хранить текущую дату, не завися от наличия питания на самом устройстве.
Так как модуль работает от автономного питания – батареек, аккумуляторов, и продолжают проводить отсчёт, даже если на Ардуино отключилось питание. 

Модуль часов реального времени RTC DS3231 позволяет устанавливать и считывать: 

  • Секунды, 
  • минуты, 
  • часы, 
  • дни,
  • недели,
  • месяцы и годы,
  • а также температуру.

Дата, по окончании месяца, автоматически подстраивается для месяцев, у которых дней меньше 31, включая учёт февраля и коррекцию дней для високосного года.
Модуль часов может работать в 24-чaсoвoм, или в 12-чaсoвoм формате с индикатором AM/PM.
Есть два программируемых по времени будильника, и программируемый выход прямоугольного сигнала. 
Адрес и данные передаются последовательно через двунаправленную шину I2C или по-другому она называется TWI.

Подключение DS3231 к Ардуино

Что может модуль. 

  • Установить календарь до 2100 года с учётом високосных лет
  • Выбор режимов 12(AM/PM) или 24-часового режима
  • Возможность настроить 2 будильника
  • Использовать в качестве генератора прямоугольных импульсов
  • Измерять температуру микросхемы. Она практически не нагревается поэтому можно сказать, что она равна температуре окружающей среды.


На основе этого модуля можно построить .

  • Часы,
  • будильник,
  • секундомер,
  • таймер,
  • генератор прямоугольных импульсов,
  • термометр,
  • включать/выключать внешние устройства по расписанию.

Для удобного использования контакты расположены с двух сторон платы.

Если вам интересно, то можно посмотреть моё видео, где я делал часы с кукушкой. Там был использован индикатор TM1637, а для вывода звуков кукушки я использовал мп3 плеер.

Если модуль питается от платы Arduino, то он не использует батарею на модуле. При питании от батарейки модуль отслеживает дату и время, но не работает с шиной I2C.
При отсутствии обоих источников питания модуль прекращает работать и сбрасывает все данные в заводские настройки.
С резервной батарейкой часы способны проработать несколько лет.

Группы контактов 

Контакты DS3231

Группы контактов - J1

  • 32K:   выход генератора, частота 32 кГц
  • SQW: Выход прямоугольного(Square-Wave) сигнала.
  • SCL:   Serial CLock - шина тактовых импульсов интерфейса I2C
  • SDA:  Serial Data - шина данных интерфейса I2C;
  • VCC:  «+» питание модуля
  • GND: «-» питание модуля

Группы контактов - J2

  • SCL:   линия тактирования (Serial CLock)
  • SDA:  линия данных (Serial Data)
  • VCC:  «+» питание модуля
  • GND: «-» питание модуля

Подключение модуля DS3231 RTC Arduino к шине I2C(например, для Arduino UNO, Nano, Pro Mini):
SCL → A5
SDA → A4
VCC → +5 В
GND → земля

Подключение происходит по двухпроводной шине I2C(TWI)
Выводы SDA и SCL подключаются к аналогичным выводам на Arduino 
Питание VCC к +5 Вольт, а GND к GND на плате Arduino

Характеристики

  • Микросхема: DS3231
  • Рабочее напряжение: 3,3 В - 5 В.
  • Потребляемый ток (в режиме ожидания): до 170 мкА.
  • Потребляемый ток (во время передачи данных): до 300 мкА.
  • Потребляемый ток (во время резервного питания, без передачи данных): до 3,5 мкА.
  • Тактовая частота шины I2C: до 400 кГц.
  • Рабочая температура: 0 ... 70 °C.
  • Точность хода: ±2 ppm (примерно ± 1 минута в год) при температуре от 0 до 40C
  • внутренний термометр с диапазоном от −40…+85°C.
  • Размер: мм 38 мм (длина) мм * 22 мм (Ш) мм * 14 мм (высота)
  • Вес: 8 г

Для работы необходимо установить библиотеку DS3231. Скачать можно по ссылке в описании к видео.

В видео я подробно рассказываю как подключить этот модуль часов, объясняю что делает каждая строчка кода в скетче.
 

Самодельные часы с кукушкой и боем курантов
Мир удивительных часов. Часы с кукушкой или с боем.
DS3231 Подключение к Arduino, настройка и установка времени.
часы на ардуино с дисплеем tft и ds3231
Часы на Ардуино без модуля часов
Время и дата без часов. Вывод на разные дисплеи.
Точное время и дата без часов. NTP сервер точного времени.
DS3231 Подключение к Arduino, настройка и установка времени.
DS3231 Настройка даты и времени. Управление энкодером.
часы на светодиодах ws2812
DS3231 подключение
Точное Время. Проекты с модулем часов DS3231 на Arduino и ESP8266