wiselord@home /home/AVR/Projects/ampcontrol-m32/src $ make -j8 -s text data bss dec hex filename 31926 60 1703 33689 8399 build/ampcontrol_atmega32_st7920.elf wiselord@home /home/AVR/Projects/ampcontrol-m32/src $ avr-gcc --version avr-gcc (Gentoo 10.3.0-r2 p3) 10.3.0
Но собиралось и 9-м gcc, и более ранними версиями.
Слишком старые - да, могут -flto не поддерживать. А без этого полная сборка может в 32768 байтов не влезть.
P.S. Эксперимента ради пособирал проект разными версиями GCC. Всё собирается без ошибок, но интересна разница в итоговом размере прошивки:
Код:
6.5.0 text data bss dec hex filename 31970 60 1703 33733 83c5 build/ampcontrol_atmega32_st7920.elf 7.5.0 text data bss dec hex filename 31636 60 1703 33399 8277 build/ampcontrol_atmega32_st7920.elf 8.5.0 text data bss dec hex filename 31622 60 1703 33385 8269 build/ampcontrol_atmega32_st7920.elf 9.3.0 text data bss dec hex filename 31774 60 1703 33537 8301 build/ampcontrol_atmega32_st7920.elf 9.4.0 text data bss dec hex filename 31774 60 1703 33537 8301 build/ampcontrol_atmega32_st7920.elf 10.3.0 text data bss dec hex filename 31926 60 1703 33689 8399 build/ampcontrol_atmega32_st7920.elf 11.2.0 text data bss dec hex filename 32074 98 1703 33875 8453 build/ampcontrol_atmega32_st7920.elf
Видно, что оптимизация по размеру улучшалась по мере перехода от 6 до 8 версии, а потом стала только ухудшаться
Да у меня winavr установлена. А оно сто лет не обновлялось. Лучше чем скачать gcc 11-й версии и просто скопировать с заменой файлов в папку winavr я не придумал. Хз как на винду avr gcc поставить, но компилироваться начало без ошибок и ладно)))
Правильный путь на windows - это скачать нужную версию gcc, распаковать куда-нибудь и прописать в системную переменную %path% новый путь к avr-gcc так, чтобы он шёл там раньше WinAVR.
Заголовок сообщения: Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12
Добавлено: Пт авг 20, 2021 08:51:38
Встал на лапы
Зарегистрирован: Вс май 24, 2015 12:05:50 Сообщений: 124 Откуда: Смоленск
Рейтинг сообщения:0
Здравствуйте! atmega16_ks0066_16x2_8bit_tda7439_rda580x - вот в такой связке решил собрать очередную конструкцию. Просто завалялись несколько atmega16 без дела, ну не выбрасывать же их... Столкнулся с проблемой - не работает подсветка на прошивке от 1 мая 2018 года. При включении на мгновение подсветка вспыхивает и гаснет, никакие последующие манипуляции эффекта не дают. Перепрошивал флеш прошивкой от 2016 года - подсветка работает! Если это не проблемно, то подскажите пожалуйста в каком месте исправить, прошивку сам соберу. А если оно того не стоит, то просто запаяю резистор параллельно транзистору для дежурного режима и подам управление от стентбая на базу транзистора. Спасибо огромное за этот замечательный проект!
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Вопрос тут один возник: есть так сказать экраны по-умолчанию, это часы, спектроанализатор, экран радио. А можно добавить экран с названием текущего входа? Чтобы вместо часов или спектроанализатора отображалось, например, «Bluetooth» или какое либо название включённого в данный момент входа. Где в исходниках это можно поправить? Или много переделывать в коде надо?
Правильный путь на windows - это скачать нужную версию gcc, распаковать куда-нибудь и прописать в системную переменную %path% новый путь к avr-gcc так, чтобы он шёл там раньше WinAVR.
Не получилось по-правильному, ругается на отсутствие «tr». Если копирую tr.exe в папку с gcc, то потом начинает ругаться на отсутствие ещё каких-то компонентов. Вобщем установить gcc 11 на windows это то ещё занятие. Может я не весь пакет gcc скачал?
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
А tr, по идее, должен идти вместе с WinAVR. То есть, всякие make и т.п. будут браться оттуда, а сам gcc, будучи прописан ДО WinAVR в Path - уже нужной версии.
А по поводу дополнительного экрана по умолчанию можно попробовать в функции handleActions() (actions.c) вставить ещё один режим межд имеющимися, например заменить
Код:
case CMD_RC_DEF_DISPLAY: switch (getDefDisplay()) { case MODE_TIME: setDefDisplay(MODE_SPECTRUM); break;
на что-то вроде
Код:
case CMD_RC_DEF_DISPLAY: switch (getDefDisplay()) { case MODE_TIME: setDefDisplay(MODE_SND_GAIN0 + aproc.input); break; case MODE_SND_GAIN0 + aproc.input: setDefDisplay(MODE_SPECTRUM); break;
по сути, вставив между режимами TIME и SPECTRUM ещё один. Но насколько хорошо это будет работать - не знаю.
Господа , приветствую ! Решил повторить данный чудесный агрегат. Железо : Мега32 ST7920 PGA2310 Без тюнера.
1.Поясните , что значат настройки спектрографа - Stereo - Bar Level - Mixed? 2.Как можно преобразовать бинарный файл , получаемый от редактора в понятный программе программатора (.eep)? РЕШЕНО.Нашел конвертор. 3.В данный момент какая прошивка актуальна для данного дисплея ? Если актуальна прошивка , выложенная здесь на странице проекта , то какие для нее должны быть фьюзы ?
Направил вопрос автору , но , может кто-то еще поможет ,т.к. собственно , вопрос ерундовый , для понимающих в программировании ... Возможно ли собрать на М32 и ST7920 такой вариант функционала.
При включении сразу включаем спектроанализатор (т.е. без дежурных режимов , сна и т.д , усилитель включается физически , выключателем ). Часы , дни недели , тюнеры и прочая шелуха , наводящая лишние помехи не нужна. С энкодера )и пульта) управляем громкостью "регулятором Никитина". Логика регулятора - переключение 6 реле для получения регулировки громкости в 64 дб с шагом 1 дб. Переключаемые звенья ослабления 1-2-4-8-16-32 дб.
Смысл - простая и не перегруженная система управления простым усилителем с наименьшим влиянием на сигнал. Само-собою , при экранировании блока ЖКИ-Процессор.
Ох не уверен, что при прохождении через длинную (физическое расстояние имею в виду) цепочку контактов сразу шести реле получится меньшее влияние на сигнал, чем в том же, например, PGA2310. Мне кажется, получившаяся "антенна" может ловить помехи.
Ох не уверен, что при прохождении через длинную (физическое расстояние имею в виду) цепочку контактов сразу шести реле получится меньшее влияние на сигнал, чем в том же, например, PGA2310. Мне кажется, получившаяся "антенна" может ловить помехи.
Именно так , но саму "антенну" можно поместить компактно у входа УМЗЧ и получить очень короткую цепочку сигнала в целом - вход-регулятор Никитина-УМЗЧ. т.е. удалить блок реле и резисторов от плат анализатора связав их шлейфом. По шлейфу своих помехи , ежели он экранирован , не идут. Там , по сути статика , вне переключений.
Ну и это , как бы , единственный способ полного разделения аналоговой и цифровой земли ...
Это типа а можно ли в ваш Порше поставить мотор вон от тех Жигули?
Отнюдь. Скорее стремление не сделать своим жигулям хуже.Обойтись без переключения на полупроводниках , ибо PGA это , по сути тот же регулятор Никитина , только интегральный .
Мне кажется , что разработку Владимира сильно недооценивают ... т.к. прикручивают к ней посредственные по шумам и помехам вещи , хотя на основе этой системы управления можно строить очень качественный звук. И проект в одном шаге от этой реализации - надо лишь выгружать двоичное число от 1 до 64 в 6 бит какого-нибудь порта и отображать это на экране.
Зы: По визуализации на 16х2 дисплеях - если полоску закрашивать не полностью , а не зажигать центральную полоску , то выглядит живее и красивее. Т.е. ряд в полоске заполнять как 11011
Привет! Я использовал экран atmel328p и ssd1306, кнопки работают нормально, только кодировщик не работает, я использую кодировщик ec11. Нужно ли заставлять использовать ec12 для работы? Спасибо
Добавлено after 1 minute 49 seconds: Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864 хочется перенести код проекта "Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864" в блоки этого редактора.
Уважаемые форумчане, приветствую!!! Собрал данный проектик давно уже, но вот прям напасть какая-то с помехами, видимо от шины I2C, а именно, на убавленной в ноль громкости в колонках явно присутствует звук помех, похожий на работу этой самой шины, да и звук идёт на громкости не совсем чистый(с еле уловимой хрипотцой), пробовал играться с предусилением, пытался соглассовать оконечный усилитель с выходом TDA7439 резисторами, по итогу, ничего путёвого из этого не получилось, специально собрал оконечный усилочек на TDA2004, ну и пробовал на PAM8403. Вот сколько не собирал подобного, везде похожая ситуация, плюс минус, собственно, может, я чего-то не так делаю, вроде уже и земли развожу по Феншую и всё, и всё равно противный призвук в колонках и прихрипывает на громкости, уже этой шины бояться стал патологически))). Если пнёте в нужном направлении, буду крайне признателен, кстати, собиралось всё это на плате из статьи. Косвенно, могу подозревать DRA5807 по выходу...
А чтобы точно убедиться, что дело в I²C - пробовали её отключать "на лету". То есть, выставить нужный уровень громкости, и отключить от аудиопроцессора.
Если TDA7439 действительно частично пропускает шум от I²C - тут сложно что-то поделать. Потому что по этой же шине постоянно, несколько раз в секунду, опрашивается тюнер (уровень сигнала, флаги стерео/RDS и т.п.), плюс опрашиваются часы.
Судя по тому, что у TDA7439 есть вывод отдельной, "цифровой" земли для I²C-интерфейса, проектировать схему надо как-то так, чтобы у усилителя и аудиопроцессора была своя отдельная земля (аналоговая), а у ampcontrol - своя отдельная (цифровая), ну а 29-й вывод TDA7439 (DIG_GND) должен быть частью этой цифровой земли, не соединённой напрямую с аналоговой.
Правда, тут всё усложняется тем, что в других модулях (типа того же RDA5807) уже нет такого разделения земель, и всё равно получается, что они где-то объединяются...
P.S. Погуглил немного схемы автомагнитол, где этот аудиопроцессор используется - нигде отдельно этут землю и не используют. Но вот сигналы на SDA и SCL обычно не напрямую на микроконтроллер идут, а через резисторы, от 100 Ом до 1кОм. Возможно, если их поставить, это как-то проблему ослабит.
Приветствую всех! Подскажите может у кого было такое.... мега32,дисплей 1602, радио RDA5807, так вот радио например настраивается на 106,3 а RDS показывает 106,5 .....и так на всех частотах... что может быть? https://img.radiokot.ru/files/141398/me ... 3ftem9.jpg
Добавлено after 6 minutes 42 seconds: Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864 DerStorm,Похоже PGA2311 и PGA2310 одинаковые по управлению ..... https://radiokot.ru/circuit/audio/other/45/ Тут есть ответ на Ваш вопрос.
Добавлено after 6 minutes 42 seconds: Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864 DerStorm,Похоже PGA2311 и PGA2310 одинаковые по управлению ..... https://radiokot.ru/circuit/audio/other/45/ Тут есть ответ на Ваш вопрос.
Да , одинаковы . Порты со стороны контролера понятны Порт С2,3,4 , а вот к каким линиям ПГА она присоединяются - сам вопрос Как видите , линии данных принципиально разно называются для стандартного интерфейса и интерфейса ПГА , в котором , к слову , больше ног (что , как-бы , намекает , что используются не все) ...
Добавлено after 1 hour 5 minutes 16 seconds: Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864 Под знай , что там автор в SPI интерфейсе назвал CL , а что СЕ ... Так-то сигналы там совсем по-другому называются.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 60
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения