Новая версия прошивки с новыми гладкими шрифтами и обновлённой библиотекой вывода на дисплей. В архиве прошивка для обоих вариантов пульта (изменённый, как в статье, и без изменений) и исходники.
Все проверено, работает отлично!!! Шрифты красивые!!! Спасибо большое буду теперь встраивать в усилитель. Единственно еще такой вопрос, управление кулерами охлаждения, DS18B20 будет, или как у вас эта система работает??
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
WiseLord напишите, если не сложно, полное название дисплея с красными знаками и где покупали. На фото выглядит красивее чем в том видео. А прошивку под TDA7313 тоже хотел бы попросить.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Полное название моего дисплея - SG12864ABMT-HB-G. Покупал у нас в Минске на радиорынке.
Без изменения прошивки должны работать дисплеи WG12864A, но я не проверял. Интересно узнать полное название дисплея, который использовал masy, т.к. у него тоже заработало.
По поводу TDA7313 - я уже эту микросхемку купил, сейчас займусь доработкой прошивки и под неё.
Потом в планах попробовать запустить со знакосинтезирующими дисплеями вроде WH1602.
masy писал(а):
управление кулерами охлаждения, DS18B20 будет, или как у вас эта система работает??
На данный момент термодатчики я не подключал. Прошивка уже и так разрослась до 15кБ за счёт шрифтов, не уверен, что уложусь.
Пока кулеры работают постоянно, отключаются только при переходе в ждущий режим.
По периферии: выходы FAN (PC2), MUTE (PC5), STDBY (PC6) работают почти одинаково: 0В в ждущем режиме, 5В в рабочем. Только что MUTE включается с задержкой относительно STDBY, а выключается при переходе в ждущий режим, наоборот, раньше.
В этом проекте используется дисплей, аппаратно построенный на двух чисто графических контроллерах, без встроенных знакогенераторов. Поэтому шрифты/картинки нужно генерировать самому.
Ещё у меня есть опыт работы с WG240128. Он построен на базе контроллера T6963, который "повкуснее". У него уже есть три области памяти (ОЗУ) - одна по размеру дисплея - для вывода графики, во вторую можно независимо писать текст (и он будет "накладываться" на графику), в третьей можно создать свои символы (8x8 или 6x8) (как в знакосинтезирующи на базе hd44780, только в них - 8 символов, а здесь - все 256). При этом в ПЗУ дисплея уже есть свои встроенные символы 6x8 (140 символов), поэтому третью область ОЗУ уже можно не использовать, если латинки ASCII достаточно, а можно использовать частично (досоздать недостающее).
Вышеупомянутый люминесцентный дисплей чем-то похож на этот, но явно на другом контроллере, так как, похоже, имеет ещё и последовательный интерфейс.
Сегодня купил ещё один пульт (как я уже писал раньше, готовое устройство отдал брату), переделал было как описывал в статье - и не работает...
После долгих ковыряний с пультом, оказалось, что, видимо, микросхема ET3010MTC (в новом пульте) всё же отличается от BW3010 (в старом). По идее, закоротка её ножки 14 на любую из 3..13 должна приводить к тому, что пульт будет выдавать те же команды, но разные адреса устройства. По умолчанию соединены 14-3 (код устройства 0x00 - TV). В статье я соединял 14-10 (код 0x10). Новая микросхема так работать отказалась, работать смогла только при соединении с ножками 3..6.
Посему, сейчас "дефолтным" для проекта будет считаться код 0x19 (соединение ножки 14 с 4). Раз уж обе микросхемы поддерживают такое подключение.
Прошивка переделана, код пульта теперь вычитывается из eeprom, что позволяет использовать без смены прошивки любой пульт с любой подобной переделкой. Только в eeprom.bin нужно по адресу 0x0C (см дефайны в eeprom.h) вписать нужный код пульта (0x00 для пульта без переделки).
Сам файл прошивки для TDA7439 и TDA7313 один и тот же. Параметры используемой микросхемы вычитываются из EEPROM. Бинарный файл eeprom каждый может отредактировать под себя в любом hex-редакторе (поменять текстовые метки, ограничить минимумы-максимумы громкости/тембров и т.п. Где что по каким адресам в EEPROM - можно проследить по исходникам, в файле eeprom.h.
Вот итоговый краткий обзор возможностей:
Для TDA7439 регулируются: - Громкость (-79..0дБ с шагом 1дБ) (выходной каскад микросхемы). - Тембры НЧ, СЧ, ВЧ (-14..14дБ с шагом 2дБ). - Предусиление (-47..0дБ с шагом 1дБ) (каскад в микросхеме после блока выбора входа и перед тембрами). - Баланс (-21..21дБ с шагом 1дБ) (программная реализация, совмещена с громкостью). - Уровень усиления независимо по каждому из 4-х входов (0..30дБ с шагом 2дБ).
Для TDA7313 регулируются: - Громкость (-78.75..0дБ с шагом 1.25дБ) (входной каскад микросхемы). - Тембры НЧ, ВЧ (-14..14дБ с шагом 2дБ). - Балансы фронт-тыл и левый-правый (-18.75..18.75дБ с шагом 2дБ) (выходные каскады микросхемы). - Уровень усиления независимо по каждому из 3-х входов (0..11.25дБ с шагом 3,75дБ).
Включаются/выключаются, правда, без индикации, режимы MUTE и, для TDA7313, LOUDNESS (тонкоррекция).
Переключается режим спектроанализатора: смешанный спектр обоих каналов и два отдельных спектра по каждому.
Функции аппаратных кнопок:
1. Включение-выключение ждущего режима. В ждущем режиме на пониженной яркости отображаются часы. В рабочем режиме - спектр сигнала, а при регулировке параметра - индикация этой регулировки. 2. Перебор входов. 3. Короткое нажатие - показать время. Длительное нажатие - вход в режим настройки времени, в котором очередное нажатие кнопки переключает регулируемый параметр - часы, минуты и т.д. 4. Короткое нажатие - MUTE. Длительное нажатие - LOUDNESS. 5. Короткое нажатие - меню (Громкость/Тембр...). Длительное нажатие - смена режима отображения спектра (см выше).
Пульт используется такой как описан в статье. Переделка пульта - у микросхемы в пульте вывод 14 отключен от вывода 3 и подключен к выводу 4. Это меняет генерируемый пультом адрес устройства с 0x00 на 0x19. Если ваш RC5-пульт не переделывался, надо в eeprom*.bin файле установить в 0x00 байт по адресу 0x0010.
Использованные кнопки пульта:
Прошивка с учётом шрифтов заняла почти все 16кБ ATmega16, поэтому дорабатывать её ещё и для знакосинтезирующих дисплеев наверное, смысла нет. Больше смысла делать отдельный проект, возможно на это хватит и ATmega8. Ну а сюда можно ещё, если кому-то надо, добавить и поддержку TDA7318, благо она фактически не отличается от TDA7313, только в ней вместо тонкомпенсации используется 4-й вход. Тем более, что плата разработана под обе микросхемы.
Вот несколько фотографий:
Как обычно, свежие исходники можно взять на googlecode.
Последний раз редактировалось WiseLord Вт янв 21, 2014 11:34:38, всего редактировалось 1 раз.
Добавлена поддержка TDA7318 и индикация режимов MUTE и LOUDNESS
На реальной микросхеме TDA7318 не тестировал ввиду её отсутствия. Но это практически полный аналог TDA7313 (не удивлюсь, если реально у них один и тот же кристалл внутри, просто разваренный по-разному на выводы), только у TDA7313 3 входа и тонкомпенсация, а у TDA7318 4 входа но без неё.
Плата в посте выше подходит и для TDA7318, только вместо конденсаторов 0.1мкф тонкопенсации, подключенных на землю, нужны конденсаторы большей ёмкости (я использовал неполярные 0.47мкф, вместо требуемых по даташиту 2,2мкф электролитов) на четвёртый вход. Посадочные отверстия в плате предусмотрены.
Заодно, чуть свежее прошивка: мелкие внутренние изменения, добавлена возможность работы без подключенного дисплея (раньше ожидало флаг готовности дисплея, и, если он не был подключен, не реагировало на команды с пульта и кнопок).
Альтернативная прошивка (ampcontrol_lcd.hex) - для работы со знакосинтезирующими дисплеями на базе контроллера HD44780 (KS0066). Сделано под размер дисплея 16x2.
Проверено на двух экземплярах дисплеев. Выглядит как-то так:
На самом деле, на графическом дисплее спектр выглядит "покруче", а этот вариант - как опция.
Ещё некоторые программные мелочи недоработаны (например, шкалы громкости/тембров на данный момент отображаются неоптимально. Будет время - доделаю. Важно, что в железе всё работает.
Подключается дисплей точно так же как и графический. С вывода 1 по вывод 14 назначение ножек у них совпадает (проверьте только выводы 1 и 2 - в некоторых моделях питание и земля идут в другом порядке). Дальше у знакосинтезирующего дисплея 15 и 16 выводами может быть подсветка, которая подключатся туда же, где подключались 19 и 20 ножки графического. Для регулировки контрастности графический дисплей с вывода 18 даёт отрицательное напряжение, идущее на потенциометр. У знакосинтезирующего дисплея надо на этот потенциометр дать +5В. Например, поставив перемычку между ножками 18-19 разъёма дисплея.
Исходники всё там же, на googlecode, в отдельной для знакосинтезирующих дисплеев ветке.
Вариант прошивки и печатной платы для дисплея WG12864B
Графический дисплей WG12864B отличается от WG12864A несколько меньшими размерами, другой разводкой выводов и инвертированными входами выборки чипа CS1/CS2.
Также небольшие внутренние изменения (при отсутствии микросхемы часов прошивка могла подвисать, бесконечно ожидая ответа по шине I2C).
Печатные платы, схемы и прошивки в архиве. Или на googlecode, вместе с исходниками.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 43
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения