ардуино ds3231 подключение, библиотека

ардуино ds3231 подключение, библиотека

В прошлый раз в уроке по установке библиотек мы скачали библиотеку RTC и установили её в Arduino IDE,  и чтобы наш труд не пропал напрасно сразу рассмотрим интересный пример как её использовать.

Сегодня речь пойдёт о модуле RTC DS3231, который играет ключевую роль в управлении временем в ваших проектах.

Что такое RTC DS3231?

Модуль RTC DS3231 — это высокоточные часы, календарь, дни недели, будильники, и даже термометр. 
Он оснащен микросхемой DS3231, которая обеспечивает точность хода, работает по интерфейсу I2C(TWI), поэтому для работы часов надо подключить всего 2 провода не считая питания. А ещё там есть батарейка, так что если у вас пропадёт электричество часы будут работать и при повторном включении время не собьётся. В модуле RTC DS3231 есть память EEPROM на микросхеме 24C32 объемом 32 Кбит от производителя Atmel в которой и хранится вся информация. 

Вот несколько ключевых характеристик:

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

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

Первое подключение и установка времени

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

Первым делом надо указать какой модуль будем использовать. У меня DS3231 поэтому я его и буду подключать.
Раскомментируем строчку с нужным модулем.

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

Модуль может работать в режиме 12 и 24-часовым форматами. По умолчанию в примере установлен 12 часовой режим. Вы можете выбрать подходящий формат в зависимости от вашего проекта.

Теперь всё хорошо. Часы выводят, что сегодня пятница,24-11-2023, а время 14:39:47

Мы установили время,теперь можно переходить к следующему примеру.

Загрузив этот пример мы получим все данные, что хранятся в модуле DS3231/

Слева пример который лежит в Примере библиотеки, а справа тот же, но переведён на русски и первый день установлен как понедельник, иначе дни недели будут показаны неправильно.
Как можно видеть:

  • Модуль - RTC DC3231
  • Часы работают
  • Режим 24 часа
  • 1 будильник установлен в 00:00:00
  • Ни один из будильников не сработал
  • Смещение времени 0
  • Температура 19.75 С
  • пт 24-11-2023 14:40:36

 

Теперь имея эти данные вы можете сделать всё что угодно, например посмотреть примеры внизу страницы которые я сделал используя этот модуль.

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