часы за сутки торопятся на 30 секунд. Это как то лечится?
Если вы используете оригинальный код автора, то отклонение времени лечится в коде, нужно
включить (исправить) функцию антиотравления, и указать на какой минуте перебирать катоды, сделать хотя бы три таких перебора, смотри этот
комментарий скорость обхода индикаторов задается в начале скетча в
#define BURN_TIME например 200 мс.
в исходном файле ino синхронизация времени с RTC происходит только после перебора катодов, но из-за ошибки в коде МК считает время лишь по своему внутреннему генератору, и поэтому часы у одних убегает на минуту а у других на пол часа в сутки.
Еще если вы используете датчик DTH22, можно добавить синхронизацию после показа температуры и влажности.
Также важно - на модуле RTC нужно выпаять (убрать) диод или резистор, через который подзаряжается батарейка, или использовать
литий-ионный аккумулятор LIR2032 вместо одноразовой батарейки CR2032
Микросхема часов реального времени
DS3231 работает при напряжении питания от
2,3 В до 5,5 В на основном выводе VCC, так что ничего критического не произойдет если модуль будет подключен к 5 В стабилизатору.
питать
DS3231 также можно от пина ардуинки
3.3V но важно не забывать, что это напряжение генерирует встроенный стабилизатор
внутри микросхемы USB-TTL преобразователя (FT232RL или CH340), поэтому линия 3.3V предназначена исключительно для слаботочной логики, как правило безопасный предел —
около 25–30 мА.
Вообще код автора это стартовая модель, здесь есть всё необходимое для работы но с небольшими ошибками, которые нужно найти и решить самостоятельно, куда ж без этого. Например не работающий будильник при 00 минут каждого часа)))