Итак, прошло чуть более, чем 1 месяц с момента написания предыдущей статьи. Можно делать первые пристрелочные выводы и получившихся часиках.
Из хорошего - время действительно видно ночью, то есть основная цель достигнута. Простая настройка не даёт запутаться в процессе выставления времени.
Из не оч хорошего - точность часов примерно 2 минуты в месяц. Примерно на пару минут они спешат. Даташиты говорят, что всё зависит от точности кварцевого резонатора и надёжности защиты от шумов как самого резонатора, так и цепи подключения его к чипу, в моём случае к DS1307. Исправить систематическую ошибку можно софтово, главное понимать какая часть ошибки регулярная (то есть постоянная) и связана с особенностью кварцевого резонатора, а какая часть ошибки - это случайная составляющая и зависит от окружающей температуры и шумов. Соответственно, можно один раз в сутки просто отнимать несколько секунд от текущего времени и сохранять результат в RTC-модуль.
Толстый кабель :) но тут особого выбора не было. Хорошо, что это многожилка и он относительно мягкий.
Яркость индикатора днём, если в комнату заглядывает солнце, показаний часов не видно. Причём, не обязательно солнце должно падать на часы, достаточно, чтобы в комнате было очень светло. Это был индикатор с "обычной" яркостью - FYQ-5641BG 21, это 14-18 милликандел. Почти сразу я заказал FYQ-5641BUG 21, который пришёл через 3 недели и пришёл не BUG, который с общим анодом, а AUG, который с общим катодом. Его яркость по документам уже выше - 60-100 милликандел, и, судя по всему, этого тоже не оч хватает, т.к. различить что там нарисовано в ярко освещённой комнате хоть и можно, но с огромным трудом. Однако есть пара моментов. Во-первых, индикатор работает в схеме "динамической" индикации, то есть горит не постоянно, во-вторых, при максимальном токе в 30ма на сегмент, в текущей схеме подаётся около 15ма, так как если подавать больше, то возникают перегрузки уже на самом микроконтроллере. Если получится организовать питание индикатора с помощью т.н. "драйверов", то есть транзисторов, коммутирующих цепи питания как минимум общих уже катодов, то можно будет поиграть с резисторами и пустить уже порядка 25-30ма на сегмент. И тут мы подходим к максимуму на digital output ноги - это ~40ма на ногу и 200ма сумарно на все ноги (согласно рефернсу на МК). А здесь надо расситывать по второму индикатору справа (на котором задействованы все сегменты + точка), а это 25*8 = 200ма. То есть хочешь дать 30ма на сегмент, подключай ещё и сегменты через транзисторы. В данном случае может быть проще отыскать что-то аналогичное FYQ-5641BPG 21 там уже заявлены 260-310 милликандел и такого прожектора уже должно быть достаточно. И скорее всего на такой яркости надо будет думать о затенении индикаторов в ночное время (фоторезистор и все дела).
Отсутствие ножек на корпусе. Всё-такие ножки нужны, чтобы прибор не так сильно скользил.
Алгоритм накручивания циферок, подстройки времени. Сейчас инкремент происходит один раз в секунду при нажатой кнопке, это не удобно, нужна более сложная механика: начальная задержка после нажатия, далее инкремент 1 раз в секунду в течение 3 или 4-х секунд, далее инкремент 1 раз в четверть или 0.2 секунды.
Из факультативных работ - анимация индикаторов в момент переключения :) колхоз, конечно, но почему бы и нет - пробегать по часовой стрелке по внешним сегментам знака, чтобы горел только один сегмент, в течение +/- 20-50мс, а потом зажигалась цифра. Общая скорость анимации до 250-400мс, чтобы она была почти незаметной, т.к. это декоративный элемент, который не должен акцентировать на себе внимание.