Да, и я про то же. Просто придётся хорошо перелопатить Makefile, чтобы за одну команду make делалось сразу несколько прошивок (раньше так было для A/B типов дисплеев, сейчас тип дисплея определяется "на лету").
Александр76 писал(а):
Есть закрепленное за кнопками какое то действие?
Да, конечно. На данный момент: Кнопка 1: Включение/выключение. Длинное нажатие - отключение подсветки. Кнопка 2: Переключение входов. Если на данный момент активен вход FM-тюнера, длинное нажатие включает его интерфейс (правда, там пока только частота отображается). Кнопка 3: Вывод времени. Повторное нажатие - редактирование времени. В режиме FM-тюнера —100кГц, длинное нажатие - сканирование вниз по диапазону. Кнопка 4: Mute. В режиме FM-тюнера +100кГц, длинное нажатие - сканирование вверх по диапазону. Кнопка 5: Перебор параметров (Громкость-Тембр...).
В планах, если получится немного ужать прошивку, длинное нажатие кнопки 5 будет сохранять текущую частоту в EEPROM. Причём, для упрощения, список частот в EEPROM будет, наверное, всегда отсортированным. Т.е. нажали кнопку "сохранения частоты" - она "вклинилась" между двумя соседними сохранёнными. Второй раз нажали - удалилась из списка.
А с пульта сейчас кнопками CH_UP/CH_DOWN пока только ±100кГц. Потом будет перемещение по станциям. Т.е. настройка станций предполагается с передней панели, а пультом только щёлкать по ним.
С ATMega16 жить было бы, конечно, много проще. Тем более что они с ATmega16 фактически полностью идентичны, исключая больший размер RAM/Flash/EEPROM у первой. Там бы вообще можно было бы из половины ОЗУ (128x64 / 8 = 1кБайт) сделать фреймбуфер для вывода на дисплей, что открыло бы совсем другие возможности по интерфейсу. Но.. это на будущее, а пока хочется на ATmega16 до ума довести. _____
P.S. На googlecode можно взять самые свежие прошивки (для графических дисплеев). В них в плане FM-радио работает практически всё, кроме пока сохранения списка станций в EEPROM (осталось пару функций дописать). Сам EEPROM уже совершенно в новом формате, так что нужно не забыть его тоже прошить.
Финальная версия прошивки с поддержкой FM-модуля TEA5767.
(для графических дисплеев)
Особенности прошивки (по сравнению с версией без FM-радио):
1. Поддерживается сканирование вверх/вниз по диапазону (с передней панели), ручной проход по шкале (±100кГц), сохранение частот станций в EEPROM (до 64 станций).
2. Список станций всегда сохраняется отсортированным по частоте. При сохранении какой-то частоты номера станций с частотами выше сдвигаются вправо, при удалении - наоборот, влево.
3. Кнопка сохранения/удаления общая. Если станции нет в списке - вставляется в список в нужном месте (между соседними ближайшими по частоте), если уже есть - то удаляется из списка.
4. Цифровые кнопки на пульте также задействованы - быстрый доступ к первым десяти станциям в списке.
Раскладка по элементам управления (пульт и кнопки передней панели):
5. По-новому организован EEPROM: - Код пульта расположен по смещению 0x003C (по умолчанию там значение 0x19, что соответствует переделанному пульту. - Коды кнопок пульта расположены по смещению 0x0040. Порядок кодов кнопок следующий: СпойлерCMD_RC5_STBY, CMD_RC5_MUTE, CMD_RC5_MENU, CMD_RC5_VOL_UP, CMD_RC5_VOL_DOWN, CMD_RC5_INPUT_0, CMD_RC5_INPUT_1, CMD_RC5_INPUT_2, CMD_RC5_INPUT_3, CMD_RC5_NEXT_INPUT, CMD_RC5_TIME, CMD_RC5_BACKLIGHT, CMD_RC5_SP_MODE, CMD_RC5_LOUDNESS, CMD_RC5_CHAN_UP, CMD_RC5_CHAN_DOWN, CMD_RC5_FM_DEC, CMD_RC5_FM_INC, CMD_RC5_FM_STORE, CMD_RC5_1, CMD_RC5_2, CMD_RC5_3, CMD_RC5_4, CMD_RC5_5, CMD_RC5_6, CMD_RC5_7, CMD_RC5_8, CMD_RC5_9, CMD_RC5_0,Изучить коды, выдаваемые пультом, и занести их в EEPROM можно с помощью тестового режима, вход в который осуществляется из ждущего режима одновременным зажатием кнопок 1 и 2.
- Текстовые метки расположены по смещению 0x00E0. Каждая текстовая метка должна отделяться от следующей минимум одним нулевым (0x00) символом. Порядок меток следующий: СпойлерLABEL_VOLUME, LABEL_BASS, LABEL_MIDDLE, /* Also loudness */ LABEL_TREBLE, LABEL_PREAMP, LABEL_BALANCE, LABEL_GAIN_0, LABEL_GAIN_1, LABEL_GAIN_2, LABEL_GAIN_3, LABEL_MUTE, LABEL_ON, LABEL_OFF, LABEL_DB, LABEL_MONDAY, LABEL_THUESDAY, LABEL_WEDNESDAY, LABEL_THURSDAY, LABEL_FRIDAY, LABEL_SADURDAY, LABEL_SUNDAY,Более подробно организацию EEPROM можно изучить по файлам eeprom.h и display.h исходного кода.
P.S. Перезалил архив, так как в предыдущую версию прошивки вкралась досадная ошибка инициализации дисплея. А обнаружилась она только после отключения питания от контроллера/дисплея.
Обновление прошивки. Теперь радио поддерживается и на символьных дисплеях на базе ks0066/hd44780.
Код подвергся сильной реструктуризации, "мухи отделены от котлет", так что теперь добавить поддержку другого дисплея/радиомодуля/аудиопроцессора стало гораздо проще. Было бы железо под рукой и даташиты.
Выглядит радио на 16x2 дисплее так:
Mazzz писал(а):
Пожалуйста подскажите вместо MCP602T подойдет MCP6022?
Подойдёт абсолютно любой сдвоенный ОУ, лишь бы умел работать при питании 5В. MCP6022 более чем подходит.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Вопрос к автору проекта: Не планируете ли вы при конструировании темброблоков вместо TDA-образных "аудиопроцессоров" использовать программируемый DSP, например ADAU1401? Главной "фишкой" этой микросхемы есть возможность программного построения аудиотракта. То есть, в специальном графическом редакторе выстраивается аудиотракт, который может содержать от простого регулятора громкости, до цепочки устройств со всевозможными энхансерами, эквалайзерами, эффекторами и процессорами сабвуферного канала, dolby sorround и т.д. Потом это все компилится, и заливается либо во внешнюю память (если ADAU работает автономно), либо встраивается в прошивку для микроконтроллера. Помимо этого, данный DSP может принимать на вход как аналоговый, так и цифровой аудиосигнал.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Ту Леонид Иванович: Если предыдущее сообщение адресовано мне, то пример с тюнером не уместный, ибо там места для творчества немного, а с применением указанной мной микросхемы, обычный предварник на микроконтроллерном управлении может превратиться в студию звукозаписи, включающую набор всего необходимого для этого оборудования, и все это без изменения аппаратной части! Достаточно лишь в графическом редакторе смастерить необходимый аудиотракт, и прошить контроллер) Завод Рязаньприбор практически только за счет реализации разработок на этих микросхемах и живет!)
EXT1, EXT2 в настоящее время не выполняют никаких функций. Потенциально, в будущем, могут быть использованы для каких-то ещё функций, например подключения термодатчика.
В какой-то момент - поменялось. Не уверен насчёт последней прошивки, выложенной здесь, но сейчас для тюнера используется самый первый вход.
Так получилось в результате "экономии на байтах". Первый вход есть всегда, поэтому проще делать проверку вроде if (chan == 0), чем брать последний вход, номер которого разный в разных микросхемах.
Так что вопрос весьма в тему.
Тут по просьбе одного форумчанина добавил минимальную поддержку радиомодуля TUX-032, который можно вроде как выковырять из автомагнитол SONY. Судя по отзывам, работает, но, возможно, нужна некоторая доработка. Пока официально не анонсирую, но кому интересно, может взять из отдельной ветки на git-сервере.
В какой-то момент - поменялось. Не уверен насчёт последней прошивки, выложенной здесь, но сейчас для тюнера используется самый первый вход.
Хочу развести плату предварительного с уже встроенным тюнером, поэтому и интересуюсь. И как поведет себя прошивка без физически распаянного тюнера? Тюнер пока в пути, а включить и проверить руки уже чешутся
_________________ Гнев - мгновенное разрушение реальности! Делай всегда хорошо, а хреново и так получится!!!!!
У кого нибудь кто прошивал мегу16, есть скриншот фьюзов под CodeVision AVR? Выложите пожалуйста, а то я в этих счетчиках-калькуляторах АВР ну не разбираюсь.. Плата уже вытравлена, все детали есть,а фьюзы - нет
И как поведет себя прошивка без физически распаянного тюнера?
Ничего особенного. Просто не будут работать функции, характерные для тюнера. А если при этом не вносить в EEPROM коды кнопок управления тюнером (SCAN_UP, SCAN_DOWN, FREQ_UP, FREQ_DOWN), то поведение входа тюнера будет неотличимо от других входов, т.е. систему можно использовать как обычный темброблок с 4-мя равнозначными входами.
Собрал цифровую часть Первое что бросилось в глаза, отдельно кнопка включения тюнера и отдельно можно выбрать вход Тюнер. Не проще сделать включение тюнера при выборе соответствующего входа. Кнопкой выбора входа включаем вход "Тюнер" и соответственно включается сам тюнер.
_________________ Гнев - мгновенное разрушение реальности! Делай всегда хорошо, а хреново и так получится!!!!!
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 62
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения