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

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

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


Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

В одном из последних постов я выкладывал прошивки. Это последнее, что есть на текущий момент.
Конкретно вам, как я понимаю, нужны файлы ampcontrol_tda7318_ks0066_tea5767.hex и eeprom_tda7318_ru.bin
ZyaK писал(а):при регулировке громкости шкала ползет, циферки показывают -сколько-то потом раз и на полную показывают а шкала до конца еще не дошла :) как так? это нормально? от начала до конца шкалы это повторяется то ли 4 то ли 3 раза

Похоже на то, что к eeprom и flash были прошиты для разных аудиопроцессоров - у них там разные диапазоны регулировок громкости.

Часы странные, потому как там внутри DS-ки может быть что угодно. Если секунды тикают - всё хорошо. Настройка часов - нажать 3 кнопку (появятся часы), последующие нажатия этой кнопки переключают режимы редактирования часов/минут/секунд/даты/месяца/года. Текущий редактируемый параметр должен быть виден по мерцающему курсору на соответствующем параметре, хотя у некоторых дисплеев курсор не очень отображается. Правка параметра - энкодером.

Тестовый режим должен работать в любом случае. Длительное одновременное нажатие 1 и 2 кнопки.

Насчёт программатора Громова ничего не скажу. Мой совет - шить через avrdude, который поддерживает практически любой программатор и идёт в комплекте с WinAVR.

P.S. Не поленился, подключил 16x2 символьный дисплей (без радиоприёмника). Зашил ampcontrol_tda7318_ks0066_tea5767.hex и eeprom_tda7318_ru.bin. Все шкалы работают нормально, в тестовый режим входит, часы настраиваются.
Последний раз редактировалось WiseLord Ср июн 18, 2014 21:35:28, всего редактировалось 1 раз.
Аватара пользователя
VeryLazyCat
Опытный кот
Сообщения: 832
Зарегистрирован: Пн май 17, 2010 22:21:01
Откуда: Madagaskar

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

Сообщение VeryLazyCat »

WiseLord писал(а): Мой совет - шить через avrdude, который поддерживает практически любой программатор и идёт в комплекте с WinAVR.

испытал по совету автора avrdudeprog - шустро работает,
если надо по быстрому прошить мк.
Вложения
avrdudeprog33.rar
(690.92 КБ) 587 скачиваний
ZyaK
Потрогал лапой паяльник
Сообщения: 361
Зарегистрирован: Сб май 03, 2014 20:01:51
Откуда: Ижевск

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

Сообщение ZyaK »

и им прбовал, тоже ругается на бин, флеш шьет без проблем. программатор авр910 прошитый под stk500
Электроника -очень точная наука, бубен необходимо держать в левой руке!!!
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

ZyaK писал(а):и им прбовал, тоже ругается на бин
Ну покажите тогда вывод avrdude с ошибкой.

Подозреваю, с Вашим программатором должно быть как-то так:

Код: Выделить всё

avrdude -p m16 -c stk500v2 -P COM2 -U flash:w:ampcontrol_tda7318_ks0066_tea5767.hex:i

avrdude -p m16 -c stk500v2 -P COM2 -U eeprom:w:eeprom_tda7318_ru.bin:r


P.S. На bin в принципе ругаться не должно. Файлы bin размером 512 байт ложатся ровно в eeprom. Там в этих 512 байтах может быть что угодно, любой мусор, можно редактировать этот файл как угодно - прошиваться будет всё. Это hex-файл так не поправишь, ибо там контрольные суммы пересчитываются.
ZyaK
Потрогал лапой паяльник
Сообщения: 361
Зарегистрирован: Сб май 03, 2014 20:01:51
Откуда: Ижевск

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

Сообщение ZyaK »

Хорошо. Завтра попробую еще раз прошить, возьму фотоаппарат, сфотаю. на работе у меня все это...
Ничего думаю страшного, что запускаю пока без TDAшки ?
По поводу пульта есть пульт от Mistery MTV770 маленький авто телек черт его знает что там за протокол у пульта, в инете ничего не нашел, ИК датчик взял от этого же телевизора, т.к у телека сдохла матрица...
Пульт не разборный по ходу, черт его знает что там внутри, скорее всего сверху на нем наклейка с кнопками, отдирать жалко... потом наверное не красиво будет :) завтра тоже сфотаю.
Вчера еще раз попробовал ЛУТ и о чудо! получилось!!! то ли тонер в принтере на работе поменяли, то ли черт его знает :) щастлиф как удаф :)
Электроника -очень точная наука, бубен необходимо держать в левой руке!!!
ZyaK
Потрогал лапой паяльник
Сообщения: 361
Зарегистрирован: Сб май 03, 2014 20:01:51
Откуда: Ижевск

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

Сообщение ZyaK »

То ли лыжи не едут, то ли я... включил комп, не трогая плату руками запустил авердудку, все прошивалось без проблем с первого раза! в чем был косяк так и не понял... пробовал разные прошивки и разные еепромы - шьет все подряд! в общем почти доволен.
Зашел в сервисный режим, пробовал нажимать кнопки на пультах все подряд, на дисплее ничего не изменилось, это значит что протокол другой? промерял напряжение на выходе ик приемника в свободном состоянии там что-то около 4.8 вольта, при нажатии на кнопки пультов напряжение падает на 200-500 милливольт в зависимости от нажатой кнопки, то есть приемник я так понимаю работает... или ошибаюсь?
Завалялся еще пульт от тюнера AverTV 307, попробую его...
С часами разобрался, и правда мерцает курсор, но как то кривенько, еле заметно... время поправил, дату тоже все четко!
Кстати после прошивки часы показывали 48:56:15 и стояли пока не настроил время, после настройки пошли.
Испытываю пока так же без ТДАшки, завтра если время будет доеду до радиомагазина...
Занят поиском полумертвых автомагнитол :) Есть какая-то документация по тюнерам в какие майфоны они втыкались?
Электроника -очень точная наука, бубен необходимо держать в левой руке!!!
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

ZyaK писал(а):Завалялся еще пульт от тюнера AverTV 307, попробую его
Вряд ли подойдёт. Обычно RC5-код используется в ТВ Philips, ну и "наши" Витязи-Горизонты его всегда применяли.
На любом рынке, где торгуют пультами, RC5-пульты копейки стоить должны.
ZyaK
Потрогал лапой паяльник
Сообщения: 361
Зарегистрирован: Сб май 03, 2014 20:01:51
Откуда: Ижевск

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

Сообщение ZyaK »

У меня телевизор самсунг вроде 6 или 7 поколения, там есть функция универсального пульта и выносной ик передатчик. умеет рулить тв приставками, проигрывателями блюрей и домашними кинотеатрами. в кинотеатрах есть филипс, в проигрывателях тоже.
А почему именно RC5 нужен?
и как узнать у чего какой протокол?
Электроника -очень точная наука, бубен необходимо держать в левой руке!!!
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

ZyaK писал(а):А почему именно RC5 нужен?
Потому что только он поддерживается прошивкой.
ZyaK писал(а):и как узнать у чего какой протокол?
Читать даташиты или анализировать осциллографом.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

Небольшое обновление прошивки.

- Исправлена ошибка инициализации тюнера TUX032 после обесточивания (не загружалась последняя рабочая частота).
- Небольшие оптимизации для компилятора (размер кода уменьшился в среднем на 120 байт).
Аватара пользователя
VeryLazyCat
Опытный кот
Сообщения: 832
Зарегистрирован: Пн май 17, 2010 22:21:01
Откуда: Madagaskar

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

Сообщение VeryLazyCat »

Если кому то охота прикрутить к этому проекту lcd LS020 - отпишитесь,
рабочая версия разводки модуля дисплея LS020 есть,
вот схема :
СпойлерИзображение

дисплей в родном кронштейне и с родным разъёмом (съемный в смысле),
в дежурном режиме включается минимальный уровень подсветки,
хотя при желании - подсветку можно полностью выключать,
на плате предусмотрены оба варианта.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

По просьбе одного форумчанина сегодня попытался портировать код на ATmega8.

Естественно, в этом случае поддержка графических дисплеев (KS0108, LS020) отпадает в принципе, так как шрифты для них занимают очень много места.

В итоге вроде как удалось ужать прошивку до размера меньше 8кБ.

Прошивка пока не проверена ни в железе, ни в эмуляторе. Но если кому-то хочется заморочиться по этому поводу - буду признателен.

Схема с ATmega8 полностью аналогична этой c ATmega16, кроме распиновки выводов контроллера.
Звук с операционника подаётся на PC0 (второй канал можно на пока неиспользуемый PC1 бросить).

Если кто-то сделает макетку, буду благодарен за отзывы по поводу его (не)работоспособности. Самому проверить в железе удастся хорошо если через недельку.
koka5555
Потрогал лапой паяльник
Сообщения: 344
Зарегистрирован: Вт окт 22, 2013 23:09:06

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

Сообщение koka5555 »

Прошу автора,пожалуйста,в последнюю прошивку для графических 12864 дисплеев добавить на выходы fan ext1 b ext2 смену логического 0 с пульта ду на свободные кнопки для включения дополнительных гаджетов.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

Эти выводы МК зарезервированы для будущего использования в качестве входов управления аналоговым тюнером.
Да и свободных кнопок на, как минимум, моём пульте осталась ровно одна штука.
koka5555
Потрогал лапой паяльник
Сообщения: 344
Зарегистрирован: Вт окт 22, 2013 23:09:06

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

Сообщение koka5555 »

Эту просьбу прошу чисто для себя.У меня на ду есть лишние кнопки и я подставлю коды своих.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

Рабочая прошивка под ATmega8 (только для 16x2 дисплеев).

Проверено в Proteus.

P.S. Также небольшое обновление основной прошивки (немного уменьшен размер кода) + появилась потенциальная возможность использования до 48 RC5-команд (сейчас - до 32, из них 31 уже задействованы).

P.P.S.

2 koka5555:
Если управление неиспользуемыми (пока) выходами нужно лично Вам, то вот:

1. Краткое руководство по компиляции проекта через WinAVR в одном из моих предыдущих постов.
2. Пример патча для добавления управления тем же выходом EXT1 во вложении (или тут).

Аналогично, если надо, и для других входов можно добавить (EXT2, FAN) аналогичные переменные, команды и функции.
Исходники брать именно отсюда, так как в основную ветку будет скоро добавлена поддержка синтезатора частоты LM7001 для аналоговых радиоприёмников, и использоваться для управления им будут именно эти три вывода.
koka5555
Потрогал лапой паяльник
Сообщения: 344
Зарегистрирован: Вт окт 22, 2013 23:09:06

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

Сообщение koka5555 »

Я в программировании абсолютный ноль и далёк я от winavr.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

Сформулируйте задачу конкретнее.
1. Под какой дисплей/темброблок/тюнер? (не так важно)
2. Какие уровни нужны на этих трёх выводах (важнее):
а) в дежурном режиме;
б) в рабочем режиме;
3. Должны ли уровни сохраняться в eeprom (и восстанавливаться после обесточивании схемы) или всегда стартовать, например, с нуля?
4. Должны ли в ждущем режиме эти выходы реагировать на кнопки пульта?

В общем, опишите детальнее на словах, как это должно работать.

Тогда, так и быть, соберу нужную прошивку.

А пока - практически полностью доработанная прошивка под ATmega8. Единственное, что не работает - это "подсвечивание" курсором активного параметра (часов/минут/даты и т.д.) при настройке времени.
koka5555
Потрогал лапой паяльник
Сообщения: 344
Зарегистрирован: Вт окт 22, 2013 23:09:06

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

Сообщение koka5555 »

При каждом нажатии менялось с нуля на единицу и при втором нажатии обратно ,в рабочем состоянии усилителя, но если работать будет и в дежурном режиме ,то тоже неплохо .Графический дисплей 12864,TDA7439 и тюнер tea5767. Сегодня приобрёл набор мастер кит МР5613 (усилитель с технологией PurePath HD).Буду пробовать как он будет на выходе.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

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

Сообщение WiseLord »

Конкретнее надо, конкретнее...

По вопросу 3: после обесточивания схемы что должно быть на выходах? Нули или предыдущее бывшее на выходах состояние?

Я вижу несколько вариантов, которые в коде будут реализовываться по разному.
а) Управление входами EXT* работает независимо от ждущего/активного режима. После полного обесточивания схемы (не ждущий режим, а именно полное обесточивание) и повторного включения выходы находятся в 0.
б) Управление входами EXT* работает независимо от ждущего/активного режима. После полного обесточивания и повторного включения выходы вовращаются в предыдущее состояние.
в) Управление входами EXT* работает только в активном режиме. В ждущем режиме - нули, они же и после обесточивания/включения.
г) Управление входами EXT* работает только в активном режиме. В ждущем режиме - нули, после обесточивания/включения возврат в последнее сохранённое активное состояние.

Возможны и другие варианты. Какой именно нужен?
Ответить

Вернуться в «Статьи»