Вопросы и замечания по статьям и схемам, представленным на нашем сайте
При поддержке РадиоКОТструктор.ру
Ср авг 18, 2021 15:11:00
- Код:
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 версии, а потом стала только ухудшаться
Ср авг 18, 2021 22:48:50
Да у меня winavr установлена. А оно сто лет не обновлялось. Лучше чем скачать gcc 11-й версии и просто скопировать с заменой файлов в папку winavr я не придумал. Хз как на винду avr gcc поставить, но компилироваться начало без ошибок и ладно)))
Чт авг 19, 2021 09:54:06
Правильный путь на windows - это скачать нужную версию gcc, распаковать куда-нибудь и прописать в системную переменную %path% новый путь к avr-gcc так, чтобы он шёл там раньше WinAVR.
Пт авг 20, 2021 08:51:38
Здравствуйте! atmega16_ks0066_16x2_8bit_tda7439_rda580x - вот в такой связке решил собрать очередную конструкцию. Просто завалялись несколько atmega16 без дела, ну не выбрасывать же их... Столкнулся с проблемой - не работает подсветка на прошивке от 1 мая 2018 года. При включении на мгновение подсветка вспыхивает и гаснет, никакие последующие манипуляции эффекта не дают. Перепрошивал флеш прошивкой от 2016 года - подсветка работает! Если это не проблемно, то подскажите пожалуйста в каком месте исправить, прошивку сам соберу. А если оно того не стоит, то просто запаяю резистор параллельно транзистору для дежурного режима и подам управление от стентбая на базу транзистора. Спасибо огромное за этот замечательный проект!
Чт авг 26, 2021 08:30:22
Вопрос тут один возник: есть так сказать экраны по-умолчанию, это часы, спектроанализатор, экран радио. А можно добавить экран с названием текущего входа? Чтобы вместо часов или спектроанализатора отображалось, например, «Bluetooth» или какое либо название включённого в данный момент входа. Где в исходниках это можно поправить? Или много переделывать в коде надо?
Добавлено after 6 minutes 31 second:Правильный путь на windows - это скачать нужную версию gcc, распаковать куда-нибудь и прописать в системную переменную %path% новый путь к avr-gcc так, чтобы он шёл там раньше WinAVR.
Не получилось по-правильному, ругается на отсутствие «tr». Если копирую tr.exe в папку с gcc, то потом начинает ругаться на отсутствие ещё каких-то компонентов. Вобщем установить gcc 11 на windows это то ещё занятие. Может я не весь пакет gcc скачал?
Чт авг 26, 2021 11:36:18
А 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 ещё один. Но насколько хорошо это будет работать - не знаю.
Вт сен 21, 2021 16:01:05
Господа , приветствую !
Решил повторить данный чудесный агрегат.
Железо :
Мега32
ST7920
PGA2310
Без тюнера.
1.Поясните , что значат настройки спектрографа - Stereo - Bar Level - Mixed?
2.Как можно преобразовать бинарный файл , получаемый от редактора в понятный программе программатора (.eep)? РЕШЕНО.Нашел конвертор.
3.В данный момент какая прошивка актуальна для данного дисплея ? Если актуальна прошивка , выложенная здесь на странице проекта , то какие для нее должны быть фьюзы ?
Чт сен 23, 2021 02:21:26
С вопросами разобрался сам ...
Направил вопрос автору , но , может кто-то еще поможет ,т.к. собственно , вопрос ерундовый , для понимающих в программировании ...
Возможно ли собрать на М32 и ST7920 такой вариант функционала.
При включении сразу включаем спектроанализатор (т.е. без дежурных режимов , сна и т.д , усилитель включается физически , выключателем ).
Часы , дни недели , тюнеры и прочая шелуха , наводящая лишние помехи не нужна.
С энкодера )и пульта) управляем громкостью "регулятором Никитина".
Логика регулятора - переключение 6 реле для получения регулировки громкости в 64 дб с шагом 1 дб. Переключаемые звенья ослабления 1-2-4-8-16-32 дб.
Смысл - простая и не перегруженная система управления простым усилителем с наименьшим влиянием на сигнал. Само-собою , при экранировании блока ЖКИ-Процессор.
Собственно , регулятор :
https://radiokot.ru/artfiles/6558/
Чт сен 23, 2021 06:22:37
Это типа а можно ли в ваш Порше поставить мотор вон от тех Жигули?
Чт сен 23, 2021 10:19:02
DerStorm писал(а):с наименьшим влиянием на сигнал
Ох не уверен, что при прохождении через длинную (физическое расстояние имею в виду) цепочку контактов сразу шести реле получится меньшее влияние на сигнал, чем в том же, например, PGA2310. Мне кажется, получившаяся "антенна" может ловить помехи.
Чт сен 23, 2021 11:32:59
DerStorm писал(а):с наименьшим влиянием на сигнал
Ох не уверен, что при прохождении через длинную (физическое расстояние имею в виду) цепочку контактов сразу шести реле получится меньшее влияние на сигнал, чем в том же, например, PGA2310. Мне кажется, получившаяся "антенна" может ловить помехи.
Именно так , но саму "антенну" можно поместить компактно у входа УМЗЧ и получить очень короткую цепочку сигнала в целом - вход-регулятор Никитина-УМЗЧ. т.е. удалить блок реле и резисторов от плат анализатора связав их шлейфом. По шлейфу своих помехи , ежели он экранирован , не идут. Там , по сути статика , вне переключений.
Ну и это , как бы , единственный способ полного разделения аналоговой и цифровой земли ...
Добавлено after 4 minutes 11 seconds:Это типа а можно ли в ваш Порше поставить мотор вон от тех Жигули?
Отнюдь. Скорее стремление не сделать своим жигулям хуже.Обойтись без переключения на полупроводниках , ибо PGA это , по сути тот же регулятор Никитина , только интегральный .
Мне кажется , что разработку Владимира сильно недооценивают ... т.к. прикручивают к ней посредственные по шумам и помехам вещи , хотя на основе этой системы управления можно строить очень качественный звук. И проект в одном шаге от этой реализации - надо лишь выгружать двоичное число от 1 до 64 в 6 бит какого-нибудь порта и отображать это на экране.
Зы: По визуализации на 16х2 дисплеях - если полоску закрашивать не полностью , а не зажигать центральную полоску , то выглядит живее и красивее. Т.е. ряд в полоске заполнять как 11011
Вт окт 19, 2021 10:35:47
Привет! Я использовал экран atmel328p и ssd1306, кнопки работают нормально, только кодировщик не работает, я использую кодировщик ec11. Нужно ли заставлять использовать ec12 для работы? Спасибо
Сб ноя 27, 2021 00:18:06
есть здесь кто с
https://forum.flprog.ru/ ?
Добавлено after 1 minute 49 seconds:Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864хочется перенести код проекта "Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864" в блоки этого редактора.
Сб ноя 27, 2021 11:05:18
Вот и дерзайте.
Сб янв 08, 2022 00:18:51
Уважаемые форумчане, приветствую!!! Собрал данный проектик давно уже,
но вот прям напасть какая-то с помехами, видимо от шины I2C, а именно, на убавленной в ноль громкости в колонках явно присутствует звук помех, похожий на работу этой самой шины, да и звук идёт на громкости не совсем чистый(с еле уловимой хрипотцой), пробовал играться с предусилением, пытался соглассовать оконечный усилитель с выходом TDA7439 резисторами, по итогу, ничего путёвого из этого не получилось, специально собрал оконечный усилочек на TDA2004, ну и пробовал на PAM8403. Вот сколько не собирал подобного, везде похожая ситуация, плюс минус, собственно, может, я чего-то не так делаю, вроде уже и земли развожу по Феншую и всё, и всё равно противный призвук в колонках и прихрипывает на громкости, уже этой шины бояться стал патологически))). Если пнёте в нужном направлении, буду крайне признателен, кстати, собиралось всё это на плате из статьи.
Косвенно, могу подозревать DRA5807 по выходу...
Сб янв 08, 2022 07:54:51
А чтобы точно убедиться, что дело в I²C - пробовали её отключать "на лету". То есть, выставить нужный уровень громкости, и отключить от аудиопроцессора.
Если TDA7439 действительно частично пропускает шум от I²C - тут сложно что-то поделать. Потому что по этой же шине постоянно, несколько раз в секунду, опрашивается тюнер (уровень сигнала, флаги стерео/RDS и т.п.), плюс опрашиваются часы.
Судя по тому, что у TDA7439 есть вывод отдельной, "цифровой" земли для I²C-интерфейса, проектировать схему надо как-то так, чтобы у усилителя и аудиопроцессора была своя отдельная земля (аналоговая), а у ampcontrol - своя отдельная (цифровая), ну а 29-й вывод TDA7439 (DIG_GND) должен быть частью этой цифровой земли, не соединённой напрямую с аналоговой.
Правда, тут всё усложняется тем, что в других модулях (типа того же RDA5807) уже нет такого разделения земель, и всё равно получается, что они где-то объединяются...
P.S. Погуглил немного схемы автомагнитол, где этот аудиопроцессор используется - нигде отдельно этут землю и не используют. Но вот сигналы на SDA и SCL обычно не напрямую на микроконтроллер идут, а через резисторы, от 100 Ом до 1кОм. Возможно, если их поставить, это как-то проблему ослабит.
Вс янв 30, 2022 20:56:56
Приветствую всех!
Подскажите может у кого было такое.... мега32,дисплей 1602, радио RDA5807, так вот радио например настраивается на 106,3 а RDS показывает 106,5 .....и так на всех частотах... что может быть?
https://img.radiokot.ru/files/141398/me ... 3ftem9.jpg
Вт фев 08, 2022 00:28:47
Господа , к каким портам МК присоединяются какие линии данных PGA2311 ?
Цифровой блок собрал по печатке из темы для ДИП компонентов - все работает.
Вт фев 08, 2022 08:31:19
Добавлено after 6 minutes 42 seconds:Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864DerStorm,Похоже PGA2311 и PGA2310 одинаковые по управлению .....
https://radiokot.ru/circuit/audio/other/45/ Тут есть ответ на Ваш вопрос.
Ср фев 09, 2022 00:10:26
Добавлено after 6 minutes 42 seconds:Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864DerStorm,Похоже 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 , а что СЕ ... Так-то сигналы там совсем по-другому называются.
- Вложения
-
- 2310.gif
- (25.53 KiB) Скачиваний: 201
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.