|
Теги статьи: | Часы |
Часы на RGB матрицах + радио + BMP180+AM2321 +ПДУ
Автор: SergSV
Опубликовано 04.11.2016
Создано при помощи КотоРед.
Участник Конкурса "Поздравь Кота по-человечески 2015!"
Кнопка Вкл/Выкл - включение - выключение матрицы
Кнопка стрелка вверх и стрелка вниз - регулировка яркости матрицы или изменения данных в режиме настройки. Яркость этими кнопка регулируется во всех меню.
Кнопка стрелка влево или стрелка вправо - смена шрифта в режиме отображения времени, а в режиме настройки будильника перемещение по подменю будильника
Кнопка "1" - меню "Часы"
Кнопка "2" - меню "Радио"
Кнопка "3" - меню "Будильники"
Кнопка "4" - меню "Эквалайзер"
Кнопка "0" - автоматическая или ручная регулировка яркости
Кнопка CH+ и CH- перелистывание радио станций в режиме FM
Кнопка "Звук + " и "Звук - " регулировка громкости
Кнопка Вкл/Выкл звука - включение / выключение звука
Кнопка "МЕНЮ" - переход в основные настройки.
Переход в зависимости оттого в каком режиме находится устройство. Если находится в режиме "Время" ,то переход будет в основные настройки. Если в режиме "Радио" , то переход в настройки радио. Если в режиме "Будильники", то в настройки будильника
Кнопка "ESC" - выход из подменю и из меню
Кнопка "ОК" - подтверждение изменений в режимах настройки
В часах пока сделано два шрифта. первый шрифт широкий, а второй узкий. Переключение между шрифтами кнопками "Влево" или "Вправо" ПДУ.
Широкий шрифт:
Узкий шрифт:
Настройки в режиме отображения времени
В этом меню изменения параметров кнопками "Вверх" и "Вниз" подтверждения изменений кнопка "ОК". Выйти из настройки можно в любой момент нажав кнопку "ESC".
Нажимаем кнопку "Меню" пробежит бегущая строка "Основные настройки" далее строка "Цвет радио". Будет мигать целая часть диапазона FM , кнопками "Вверх" или "Вниз" устанавливаем нужный цвет и нажимаем кнопку "ОК". Начнет мигать дробная часть диапазона FM . Также устанавливаем нужный цвет и нажимаем "ОК".
Далее пробежит строка " Цвет бегущей строки" . Кнопками "Вверх" или "Вниз" устанавливаем нужный цвет и нажимаем кнопку "ОК".
Если будет установлен вариант цвета для бегущей строки как на фото:
То при выводе бегущей строки цвет ее будет каждый раз новый.
Далее пробежит строка " Установка часов". Начнут мигать значение часов. Кнопками "Вверх" или "Вниз" устанавливаем текущий час и нажимаем "ОК". Начнут мигать минуты. Кнопками "Вверх" или "Вниз" устанавливаем текущие минуты и нажимаем "ОК".
Далее пробежит строка "Цвет часов". В этом меню для каждого символа часов можно настроить свой цвет. Выбор цвета кнопками "Вверх" или "Вниз" . Всего 7 вариантов цветов. Восьмой вариант это разноцветный символ с чередующимися цветами. Как только выбрали нужный цвет нажимаем кнопку "ОК". Далее настраиваем цвет для следующих символов и жмем "ОК".
Далее пробежит строка "Установка даты". Цвета символов будут такие которые установили в предыдущем меню.Кнопками "Вверх" или "Вниз" устанавливаем текущую дату и нажимаем "ОК".
Далее пробежит строка "Установка месяца". Кнопками "Вверх" или "Вниз" устанавливаем текущий месяц и нажимаем "ОК".
Далее пробежит строка "Установка года". Кнопками "Вверх" или "Вниз" устанавливаем текущий год и нажимаем "ОК".
Далее пробежит строка "Установка дня недели". Дни недели отображаются в сокращении ВС- воскресение, СБ - суббота , ПТ - пятница и т.д. Кнопками "Вверх" или "Вниз" устанавливаем текущий день недели и нажимаем "ОК". На этом основная настройка завершена.
Далее пробежит бегущая строка с текущем днем недели, датой, годом , давлением , температурой и влажностью. Устройство перейдет в режим отображения времени. В этом режиме бегущая строка с выводом всей информации будет выводится примерно через 1 минуту 30 сек. Если по каким либо причинам какой-то датчик не будет установлен то информация с этого датчика не будет отображена в бегущей строке. Т.к датчик температуры есть во всех трех датчиках, то данные будут читаться из того датчика который установлен. По умолчанию температура читается с BMP180.
Режим Радио.
Переход в этот режим осуществляется нажатием кнопки "2" ПДУ.
В этом режиме бегущая строка также пробегает примерно через 1минуту 30 сек.
Отображается следующее меню:
Первые четыре цифры это частота принимаемой станции. Буква "М" или "С" принимаемый сигнал моно или стерео. Под буквой красным цветом уровень принимаемого сигнала. В самом низу отображается громкость.Перелистывание настроенных станций кнопками "СН+" и "СН-" , а регулировка громкости кнопками "Гр+" и "Гр-". Значение громкости сохраняется для каждой станции в отдельности. Так же для каждой станции отдельно сохраняются настройки эквалайзера ВЧ и НЧ. Для перехода в режим эквалайзера нажимаем кнопку "4" ПДУ ( описание настройки чуть ниже).
Для перехода в режим настройки радио нажимаем кнопку "Меню" ПДУ. Будет выведена бегущая строка " Настройка радио".
Буква обозначающая стерео или моно станет красного цвета. В режиме воспроизведения она синего цвета. Если в течении 15 секунд не будет нажата ни одна кнопка то устройство перейдет в режим воспроизведения радио.
Изменение частоты станции осуществляется кнопками "СН+" и "СН-" . Регулировка громкости кнопками "Гр+" и "Гр-". После выбора нужной частоты и уровня громкости нажимаем кнопку "ОК". Будет отображена ячейка для записи текущей станции. Если в ячейке уже есть записанная станция то номер ее будет красным цветом.
Если ячейка свободна то она будет зеленым цветом
Выбор нужной ячейки кнопками "СН+" и "СН-". Всего доступно 20 ячеек для записи. После выбора нужной ячейки нажимаем кнопку "ОК". В ячейку будет записана частота станции, уровень громкости. Устройство вернется в режим настройки. Что бы выйти из режима настройки нажимаем кнопку "ESC" или ничего не нажимаем в течении 15 секунд. Устройство перейдет в режим воспроизведения радио.
Настройка будильников
Переход в режим настройки будильников кнопкой "3" ПДУ. Будет выведена бегущая строка "Будильники". Если ни одна кнопка не будет нажата в течении 15 секунд устройство перейдет в режим отображения времени.
После перехода в меню будильников увидим следующее:
Б1 означает номер будильника. Всего их семь. Прочерки после номера означают что будильник не включен. Кнопками "Влево и "Вправо" изменяем номер будильника. Если будильник выключен будет не возможно просмотреть его настройки. Для включения будильника нажимаем кнопку "ОК". Включится светодиод обозначающий что есть включенные будильники и появится колокольчик.
Теперь можно просмотреть настройки будильника. Меню каждого будильника поделено на три части. В первой части настраивается время включения , день включения и громкость. Во второй части настраивается время выключения и режим звука линейный или нарастающий. В третьей части настраивается включаемая станция. Нажмем кнопку "Вправо" перед нами будет первая часть.
Здесь отображается время включения будильника. В правом углу день включения, а чуть ниже громкость. Для изменения настроек нажимаем кнопку "ОК". Начнет мигать часы включения. Кнопками "Влево" и "Вправо" изменяем значение и нажимаем кнопку "ОК". Так настраиваем все четыре параметра.
Для дней недели применены следующие сокращения:
ПН - Понедельник
ВТ - Вторник
СР - Среда
ЧТ - Четверг
ПТ - Пятница
СБ - Суббота
ВС - Воскресенье
ALL - Включение каждый день.
После настройки уровня громкости жмем "ОК" . Этим заканчиваем настройку в первой части будильника.
Далее жмем кнопку "Вправо" тем самым переходим в настройки второй части будильника.
В этой части настраивается время выключения и громкость нарастающая при срабатывании будильника или линейная.
Линейная громкость отображается справа в виде прямоугольника:
Нарастающая громкость отображается в виде треугольника:
Все действия для настройки такие же как и в первой части.
Немного о настройки громкости. В первом меню мы настраивали уровень громкости. Если во второй части будет установлена линейная громкость, то при срабатывании будильника максимальная громкость будет та, что была установлена в первой части. Если же громкость была установлена нарастающая, то при срабатывании будильника громкость с минимального значения будет постепенно увеличиваться до значения установленного в первой части.
После настройки второй части нажимаем кнопку "Вправо" и попадаем в третью часть настройки будильника.
В этой части настраивается включаемая станция радио. Настройка теми же кнопками что и в предыдущих частях. Станции выбираются только из тех что были настроены в режиме "Радио".
После настройки будильника нажимаем кнопку "Вправо " на ПДУ и переходим к следующему будильнику или нажимаем "ESC" и выходим в режим отображения времени.
При срабатывании будильника светодиод начнет мигать. Если во время работы будильника нажать кнопку выключения то светодиод перестанет мигать и будильник не выключится по достижению времени выключения т.е происходит отмена выключения будильника.
Настройка эквалайзера
Переход в меню настройки эквалайзера нажатием кнопки "4" ПДУ. Пробежит бегущая строка "Эквалайзер" .В этом режиме настраиваются НЧ и ВЧ частоты. Для каждого канала радио настройки эквалайзера сохраняются отдельно. Если ни одна из кнопок не будет нажата в течении 15 секунд то будет осуществлен переход в режим отображения времени.
Для настройки нужных частот нажимаем кнопку "Влево" или "Вправо" ПДУ.
Настройка НЧ и ВЧ максимум:
Для изменения фильтра НЧ или ВЧ нажимаем кнопку "ОК" . Начнет мигать полоса слева . Кнопками "Влево" и " Вправо" меняем значение. Для сохранения установленного значения жмем "ОК" ПДУ. В зависимости от величины значения также меняется цвет указатели и цифры обозначающие уровень. Ближе к максимальному значению будет красным. Ближе к минимальному значению синим цветом, а в среднем диапазоне зеленым цветом.
Настройка НЧ минимум:
Настройка НЧ среднее значение:
Управления при помощи кнопок
На задней панели часов размещены кнопки S4-S9. В зависимости в каком меню находимся функция кнопок изменяется.
Функции кнопок в меню часов:
S4 и S5 регулировка звука "+" и "-"
S6 и S7 изменение шрифта
S8 переход в меню "Радио"
S9 переход в основные настройки.
При нажатии S9 переходим в меню настройки.
В меню настроек действия кнопок:
S4 и S5 изменяем параметр
S6 переход к следующему настраиваемому параметру.
S8 и S9 не задействованы.
Выход из меню не возможен придется пройтись по всем настраиваемым параметрам или нажать кнопку "ESC" на ПДУ.
После настройки последнего параметра пробежит бегущая строка и устройство вернется в режим отображения времени.
Функции кнопок в меню радио:
S4 и S5 регулировка звука "+" и "-"
S6 и S7 переход по настроенным каналам "+" и "-"
S8 переход в меню "Будильники"
S9 переход в режим настройки радио
В меню настроек действие кнопок:
S4 и S5 регулировка звука "+" и "-"
S6 и S7 изменение частоты радиостанции "+" и "-"
S8 переход в меню "Будильники"
S9 переход в меню записи станции в память. Кнопками S6 и S7 меняем номер ячейки памяти, а кнопка S9 подтверждение записи.
Выход из меню настроек- не нажимаем ни какие кнопки и выход будет автоматический через 15-20 сек.
Функции кнопок в меню настройки будильников:
S4 и S5 перелистывание будильников "+" и "-"
S6 и S7 не задействованы
S8 переход в меню "Эквалайзер"
S9 Включение и выключение будильника
Если будильник включен нажимаем S4 попадая в основные настройки включенного будильника. Переход по подменю будильника S4 и S5. Для настройки параметра жмем S9 и S4 и S5 изменяем параметр. Следующее нажатие S9 переход к следующему настраиваемому параметру. Устройство выйдет из настроек будильника автоматически если в течении 15 сек. не будет нажата ни одна из кнопок.
Функции кнопок в меню эквалайзера:
S4 и S5 перелистывание настраиваемых параметров.
S6 и S7 не задействованы.
S8 переход в меню "Часы"
S9 вход в режим изменения выбранного параметра. В этом режиме S4 и S5 изменяет параметр, а S9 подтверждения изменения.
Выход из режима автоматический через 15 сек если ни одна из кнопок не нажималась.
Немного о примененных деталях их замене и наладке.
Все SMD элементы типоразмера 0805. Стабилизатор U1 LM317ADJ можно заменить на любой с напряжением стабилизации 3 Вольта например ASM1117-30. В этом случаи R18 заменить перемычкой , а R17 не устанавливать. Стабилизатор на 5В U8 LM2576-5 можно заменить на LM2596-5. Светодиоды D6 D7 D11 D12 D13 типоразмера 2835. Резистором R24 устанавливаем громкость работы зуммера. Не забываем выставить ток заряда для применяемого аккумулятора резисторами R44 R45 (см. таблицу на схеме). При большом токе заряда рекомендую на TP4056 установить радиатор. Резисторами R38 и R49 можно ограничить максимальную громкость или же их заменить перемычками. Конденсаторы С28 С29 С42 С43 в обвязке TEA6330T устанавливать которые указаны на схеме. Уход от емкости в ту или иную сторону изменить диапазон регулировки частот. С28 и С43 отвечают за НЧ, а С29 и С42 за ВЧ . Пробовал ставить 6.8nF C29 и С42 ВЧ практически не изменяются. Резисторами R28 R33 R31 можно изменить напряжение на выходе преобразователя. При номиналах указанных на схеме напряжение 11.86В.
Рассчитывается напряжение по формуле:
Uвых=1.26*(1+((R33+R28)/R31))
Диоды Шотки D4 D5 D1 D8 D10 можно заменить любыми на ток 2А. в данной схеме установлены на 3А. Стабилитрон D3 можно установить любой на напряжение стабилизации 4.7В или 5В.
Монтаж лучше начинать с установки всех стабилизаторов напряжения и проверить их на работоспособность, что бы не было обидно за спаленные контроллеры и датчики. Затем лучше смонтировать преобразователь и проверить его подав на 8 ногу LM3488 напряжение в пределах 3.2-5В . На выходе должно быть около 12В.
Далее монтируем элементы для заряда АКБ и контроля напряжения АКБ и проверяем на работоспособность. Для 2-х проводного АКБ не устанавливаем R39, а R43 заменяем перемычкой. Также поступаем для 3-х проводного если не нужен контроль температуры АКБ. Средний вывод АКБ остается болтаться. Если же контроль температуры нужен , то устанавливаем все элементы , хотя R43 можно и не ставить т.к он будет подключен параллельно терморезистору АКБ и сильно влиять на работу не будет.
Контролер напряжения собрана TL431 и LM358. На TL431 собран источник образцового напряжения на 2.5 В. Это напряжение поступает на 2 вывод LM358, а на 3 вавод LM358 поступает напряжение от АКБ через делитель R58 R62 как только напряжение на АКБ будет ниже 3.2 на 3 выводе также напряжение станет меньше 2.5 вольт и на 1 выводе будет 0. Q9 закроется . Положительное напряжение через R56 R51 поступит на базу Q8. Q8 Закроется тем и закроет транзистор Q7.1 и обесточивается все плата. После отключения запуск часов будет возможен только при подключении внешнего блока питания т.к LM358 питается от внешнего источника питания.
Если есть микросхема BU4832 то TL431 LM358 их обвязку и R56 не устанавливаем. Если же собираем на TL431 и LM358 то не устанавливаем R53 и возможно придется подстроить порог срабатывания отключения всей платы делителем R58 R62. При наличии основного питания должен идти заряд АКБ , а на выходе преобразователя не должно быть напряжения. Если напряжение АКБ выше 3.2 вольт то на базе транзистора Q9 должно быть примерно 0.7- 0.8В. Теперь проверяем работу резервного источника питания. Сначала схему запитываем от основного иточника. Затем его выдергиваем из сети и на выходе преобразователя должно появится 12В. Если преобразователь не запустился то смотрим что на базе Q9 . Если там напряжение меньше 0.7В , а АКБ заряжена, то измеряем напряжение на 2 выводе LM358 должно быль 2.5В и на 3 выводе больше 2.5В . Если все нормально, то неисправна LM358 или не подключено к ней питание. Порог отключения можно отрегулировать R62 . При увеличении его номинала порог отключения увеличивается т.е устройство будет полностью обесточено при более глубоком разряде АКБ. При уменьшении номинала порог уменьшается.
Конденсаторы C6 C11 C21 C20 C37 рекомендуется применять с низким ESR.
Если все работает то монтируем процессор , прошиваем его и монтируем все остальные элементы.. На плате для удобства прошивки предусмотрены контакты для ISP разъема. Вывод GND для ISP паяем в любом удобном месте.
Если плохой прием радиостанций то берем конденсатор емкостью от 0.1 мкФ до 0.47мкФ с длинными выводами и припаиваем один вывод на антенный вход, а второй на землю. Выводы не обрезаем иначе не поможет. Качество приема заметно улучшится.
Индикация светодиодов
Светодиод D11 светится , то значит установлен режим автоматической регулировки яркости. Ручная регулировка не работает. Переключается режим кнопкой "0" ПДУ.
Светодиод D12 светится, то значит есть включенные будильники. Если мигает , то сработал будильник.
Светодиод D13 светится , то значит нужно заменить резервную батарейку часов. Даже если вытащить батарейку время не сбросится т.к за счет заряда конденсаторов некоторые время будет питаться DS3231. Так что минут 5 есть на замену батарейки. Это если нет резервного АКБ.
Светодиод D6 светится, то значит идет заряд АКБ
Светодиод D7 светится , то значит АКБ заряжена.
Если оба светодиода D6 и D7 не светятся , то это значит, что часы работают от внутреннего АКБ.
Изготавливаем печатные платы
Для начала 3D вид из DipTrace
Печатные платы изготавливаю при помощи негативного фоторезиста. Печатаю шаблон на пленке струйным принтером Epson L800 в негативном виде. Очищаю заготовку при помощи порошка "Пемолюкс". На мокрую заготовку наношу пленочный фоторезист. За неимением ламинатора проглаживаю утюгом выставленным на деление 1. Накладываю шаблон и засвечиваю тремя УФ лампами по 20W каждая в течении 1 мин 10 сек. Далее опять под утюг, затем смываю не задубленные участки и травить. Сверлю несколько отверстий в крайних контактных площадках и делаю проколы в этих же местах в шаблоне. Плата и шаблон совмещается при помощи иголок. Травлю вторую сторону , а первая заклеивается скотчем.
После травление решил просверлить отверстия но пришел контролер и наложил хвост на плату запрещая дальнейшее сверление т.к есть пару косяков:
Но после уговоров дал добро для дальнейшего сверления.
Переходные отверстия обычно сверлю диаметром 0.4 мм и запаиваю в них проволочки. Не забываем , что где есть заливка там тоже есть переходные отверстия, а то получится что не везде будет шина GND.
Запаиваем элементы. С вырезами под динамики получился просчет и пришлось мудрить крепление. В архиме все исправлено.
К монтажу относимся внимательней что бы потом не искать почему не работает. Некоторые выводные элементы нужно запаивать с двух сторон. Выводы этих элементов как переходые отверстия. Под кварц необходимо прилепить изоленту или скотч что бы не было контакта с дорожками или запаять его на сторону Atmega32. На TP4056 при токе заряда более 500 мА рекомендую установить радиатор. Радиатор был установлен через термопрокладку и закреплен при помощи клеевого пистолета.
Устанавливаем аккумулятор. Закрепил его при помощи двухстороннего скотча
Если общий вывод для программатора будет запаян рядом с основным разъемом , то необходимо установить перемычку как на фото:
На фото ниже описание светодиодов . У меня установлены таким цветом каким сделаны надписи и так же указаны критичные переходные отверстия.
Корпус был изготовлен из 4мм мягкого пластика. Режится отлично канцелярским ножом. Т.к светодиоды находятся глубоко то нужны световоды. В качестве световодов использована крышка коробки от автомобильных ламп. Корпус был начерчен в CorelDRAW распечатан на простой бумаге и с помощью двухстороннего скотча закреплен на пластике и вырезан. Прячем все в корпус, прикручиваем антенну :
Датчики торчат сверху:
Что бы был нормальный вид и не торчали просто датчики из корпуса был куплен в автомагазине набор для крипления номера и светоотражающие колпачки приклеены сверху на корпус.
Получилось так:
Вот вроде и все. Не забываем прошивать EEPROM. Фьюзы устанавливаем на внешний кварц. Схемы и платы нарисованы в DipTrace .
В планах добавить возможность управления с пульта формата RC-5 , сделать вывод информации с RDS , добавить беспроводный датчик для улицы.
PS: Вы можете заметить отличие фото от платы в архиве. Некоторые изменения пришлось делать на готовой плате. Был добавлен резистор R63. Изменены номиналы резисторов R36 R37 и увеличена площадь охлаждения на плате под мс TP4056. Также добавлены контакты K5 и K6 для подключения кнопки с нормально замкнутыми контактами. Она нужна если нужно принудительно отключить устройство при работе от аккумулятора. Достаточно нажать ее и будет снято питание со всей схемы.
Файлы:
Последняя прошивка от 10.12.2015 со всеми изменениями
Схема и плата основного модуля
Схема и плата матриц
Все вопросы в Форум.
Эти статьи вам тоже могут пригодиться:
Тёплые ламповые часы на Нумитронах