Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Ответить

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Ср авг 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 версии, а потом стала только ухудшаться

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Ср авг 18, 2021 22:48:50

Да у меня winavr установлена. А оно сто лет не обновлялось. Лучше чем скачать gcc 11-й версии и просто скопировать с заменой файлов в папку winavr я не придумал. Хз как на винду avr gcc поставить, но компилироваться начало без ошибок и ладно)))

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Чт авг 19, 2021 09:54:06

Правильный путь на windows - это скачать нужную версию gcc, распаковать куда-нибудь и прописать в системную переменную %path% новый путь к avr-gcc так, чтобы он шёл там раньше WinAVR.

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Пт авг 20, 2021 08:51:38

Здравствуйте! atmega16_ks0066_16x2_8bit_tda7439_rda580x - вот в такой связке решил собрать очередную конструкцию. Просто завалялись несколько atmega16 без дела, ну не выбрасывать же их... Столкнулся с проблемой - не работает подсветка на прошивке от 1 мая 2018 года. При включении на мгновение подсветка вспыхивает и гаснет, никакие последующие манипуляции эффекта не дают. Перепрошивал флеш прошивкой от 2016 года - подсветка работает! Если это не проблемно, то подскажите пожалуйста в каком месте исправить, прошивку сам соберу. А если оно того не стоит, то просто запаяю резистор параллельно транзистору для дежурного режима и подам управление от стентбая на базу транзистора. Спасибо огромное за этот замечательный проект!

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Чт авг 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 скачал?

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Чт авг 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 ещё один. Но насколько хорошо это будет работать - не знаю.

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Вт сен 21, 2021 16:01:05

Господа , приветствую !
Решил повторить данный чудесный агрегат.
Железо :
Мега32
ST7920
PGA2310
Без тюнера.

1.Поясните , что значат настройки спектрографа - Stereo - Bar Level - Mixed?
2.Как можно преобразовать бинарный файл , получаемый от редактора в понятный программе программатора (.eep)? РЕШЕНО.Нашел конвертор.
3.В данный момент какая прошивка актуальна для данного дисплея ? Если актуальна прошивка , выложенная здесь на странице проекта , то какие для нее должны быть фьюзы ?

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Чт сен 23, 2021 02:21:26

С вопросами разобрался сам ...

Направил вопрос автору , но , может кто-то еще поможет ,т.к. собственно , вопрос ерундовый , для понимающих в программировании ...
Возможно ли собрать на М32 и ST7920 такой вариант функционала.

При включении сразу включаем спектроанализатор (т.е. без дежурных режимов , сна и т.д , усилитель включается физически , выключателем ).
Часы , дни недели , тюнеры и прочая шелуха , наводящая лишние помехи не нужна.
С энкодера )и пульта) управляем громкостью "регулятором Никитина".
Логика регулятора - переключение 6 реле для получения регулировки громкости в 64 дб с шагом 1 дб. Переключаемые звенья ослабления 1-2-4-8-16-32 дб.

Смысл - простая и не перегруженная система управления простым усилителем с наименьшим влиянием на сигнал. Само-собою , при экранировании блока ЖКИ-Процессор.

Собственно , регулятор :
https://radiokot.ru/artfiles/6558/

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Чт сен 23, 2021 06:22:37

Это типа а можно ли в ваш Порше поставить мотор вон от тех Жигули?

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Чт сен 23, 2021 10:19:02

DerStorm писал(а):с наименьшим влиянием на сигнал
Ох не уверен, что при прохождении через длинную (физическое расстояние имею в виду) цепочку контактов сразу шести реле получится меньшее влияние на сигнал, чем в том же, например, PGA2310. Мне кажется, получившаяся "антенна" может ловить помехи.

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Чт сен 23, 2021 11:32:59

DerStorm писал(а):с наименьшим влиянием на сигнал
Ох не уверен, что при прохождении через длинную (физическое расстояние имею в виду) цепочку контактов сразу шести реле получится меньшее влияние на сигнал, чем в том же, например, PGA2310. Мне кажется, получившаяся "антенна" может ловить помехи.


Именно так , но саму "антенну" можно поместить компактно у входа УМЗЧ и получить очень короткую цепочку сигнала в целом - вход-регулятор Никитина-УМЗЧ. т.е. удалить блок реле и резисторов от плат анализатора связав их шлейфом. По шлейфу своих помехи , ежели он экранирован , не идут. Там , по сути статика , вне переключений.

Ну и это , как бы , единственный способ полного разделения аналоговой и цифровой земли ...

Добавлено after 4 minutes 11 seconds:
Это типа а можно ли в ваш Порше поставить мотор вон от тех Жигули?


Отнюдь. Скорее стремление не сделать своим жигулям хуже.Обойтись без переключения на полупроводниках , ибо PGA это , по сути тот же регулятор Никитина , только интегральный .

Мне кажется , что разработку Владимира сильно недооценивают ... т.к. прикручивают к ней посредственные по шумам и помехам вещи , хотя на основе этой системы управления можно строить очень качественный звук. И проект в одном шаге от этой реализации - надо лишь выгружать двоичное число от 1 до 64 в 6 бит какого-нибудь порта и отображать это на экране.

Зы: По визуализации на 16х2 дисплеях - если полоску закрашивать не полностью , а не зажигать центральную полоску , то выглядит живее и красивее. Т.е. ряд в полоске заполнять как 11011

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Вт окт 19, 2021 10:35:47

Привет! Я использовал экран atmel328p и ssd1306, кнопки работают нормально, только кодировщик не работает, я использую кодировщик ec11. Нужно ли заставлять использовать ec12 для работы? Спасибо

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Сб ноя 27, 2021 00:18:06

есть здесь кто с https://forum.flprog.ru/ ?

Добавлено after 1 minute 49 seconds:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864
хочется перенести код проекта "Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864" в блоки этого редактора.

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Сб ноя 27, 2021 11:05:18

Вот и дерзайте.

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Сб янв 08, 2022 00:18:51

Уважаемые форумчане, приветствую!!! Собрал данный проектик давно уже,
но вот прям напасть какая-то с помехами, видимо от шины I2C, а именно, на убавленной в ноль громкости в колонках явно присутствует звук помех, похожий на работу этой самой шины, да и звук идёт на громкости не совсем чистый(с еле уловимой хрипотцой), пробовал играться с предусилением, пытался соглассовать оконечный усилитель с выходом TDA7439 резисторами, по итогу, ничего путёвого из этого не получилось, специально собрал оконечный усилочек на TDA2004, ну и пробовал на PAM8403. Вот сколько не собирал подобного, везде похожая ситуация, плюс минус, собственно, может, я чего-то не так делаю, вроде уже и земли развожу по Феншую и всё, и всё равно противный призвук в колонках и прихрипывает на громкости, уже этой шины бояться стал патологически))). Если пнёте в нужном направлении, буду крайне признателен, кстати, собиралось всё это на плате из статьи.
Косвенно, могу подозревать DRA5807 по выходу...

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Сб янв 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кОм. Возможно, если их поставить, это как-то проблему ослабит.

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Вс янв 30, 2022 20:56:56

Приветствую всех!
Подскажите может у кого было такое.... мега32,дисплей 1602, радио RDA5807, так вот радио например настраивается на 106,3 а RDS показывает 106,5 .....и так на всех частотах... что может быть?
https://img.radiokot.ru/files/141398/me ... 3ftem9.jpg

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Вт фев 08, 2022 00:28:47

Господа , к каким портам МК присоединяются какие линии данных PGA2311 ?

Цифровой блок собрал по печатке из темы для ДИП компонентов - все работает.

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Вт фев 08, 2022 08:31:19

Добавлено after 6 minutes 42 seconds:
Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864
DerStorm,Похоже PGA2311 и PGA2310 одинаковые по управлению ..... https://radiokot.ru/circuit/audio/other/45/ Тут есть ответ на Ваш вопрос.

Re: Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12

Ср фев 09, 2022 00:10:26

Добавлено 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 , а что СЕ ... Так-то сигналы там совсем по-другому называются.
Вложения
2310.gif
(25.53 KiB) Скачиваний: 201
Ответить