P.S ПМСМ для удобства поиска свежих схем/прошивок не плохо было бы все собрать в кучку в самом первом посте этой ветки, что бы не рыть глубоко.
Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864
- Сергей_74
- Опытный кот
- Сообщения: 707
- Зарегистрирован: Чт фев 21, 2008 12:32:06
- Откуда: Россия г.Уфа
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Спасибо WiseLord за проделанную работу, интересный девайс получился, железки как раз почти все лежат можно попробовать будет 
P.S ПМСМ для удобства поиска свежих схем/прошивок не плохо было бы все собрать в кучку в самом первом посте этой ветки, что бы не рыть глубоко.
P.S ПМСМ для удобства поиска свежих схем/прошивок не плохо было бы все собрать в кучку в самом первом посте этой ветки, что бы не рыть глубоко.
-hands made-
Опытный Электрик, даже жену не берет одновременно за две сиськи!!!
Опытный Электрик, даже жену не берет одновременно за две сиськи!!!
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
ОК, выкладываю последние на сегодняшний день прошивки и варианты. Информацию ниже модератор может добавить и в первый пост темы.
Добавил viewtopic.php?f=25&t=98758
kоyodza
Все прошивки на данный момент поддерживают (жирным выделены варианты для которых у меня нет железа и их работа не проверена мною):
а) Аудиопроцессоры:
- TDA7439;
- TDA7313 (PT2313);
- TDA7318;
б) Тюнеры:
- FM-модули на базе TEA5767;
- FM-модули на базе RDA5807M;
- тюнеры на базе синтезатора частоты LM7001;
- тюнеры TUX032 из разного рода автомагнитол ф. Sony;
в) Регулировку яркости подсветки дисплея.
Основной прошивкой на текущий момент является вариант на ATmega32 с кадровым буфером (исходний код). Он поддерживает графические дисплеи 128x64:
а) на базе KS0108:
- тип А (прямые лог. уровни на входах CS1/CS2) (схема подключения);
- тип Б (обратные лог. уровни на CS1/CS2), с другой распиновкой (схема подключения);
б) на базе контроллера ST7920, с распиновкой совпадающей с с KS0108A (схема подключения).
Данный вариант прошивки наиболее предпочтителен ввиду наибольшей функциональности:
- Поддержка режима обучения кнопкам любого пульта стандарта RC5 без необходимости ручной правки EEPROM в hex-редакторе
- Управление вентиляторами охлаждения усилителя мощности на базе данных от термодатчиков типа DS18B20 (функциональность лично мною проверена только в эмуляторе, не в железе)
- Высокая скорость обновления дисплея за счёт кадрового буфера
- Графические значки для регулируемых функций.
Именно этот вариант прошивки будет расширяться функционально в будущем.
Также этот вариант прошивки может быть легко перекомпилирован под любой другой контроллер AVR с достаточным объёмом RAM(2kB)/Flash(32kB)/EEPROM(1кБ). Потребуется лишь перенастроить таймеры и источник внешнего прерывания для обработки сигнала с пульта ДУ и описать подключение ножек в отдельном файле pins.h. В частности, исходники под ATmega64.
Чуть менее функционален вариант на ATmega16 (исходный код). Его также можно собрать и под ATmega32 без правки исходников, изменив соответственно переменную MCU в Makefile.
Достоинства этого варианта:
- поддержка символьных дисплеев 16x2 (схема подключения).
- поддержка графических дисплеев LS020 из телефонов Siemens *65 (мною вариант проверялся только в эмуляторе, по поводу схемы подключения интересуйтесь у форумчан или по файлу ls020.h
Недостатки:
- заметно медленнее работает дисплей ST7920
- нет режима обучения пульту (только отображение кодов нажимаемых кнопок, которые можно записать на бумажку и потом руками внести в EEPROM)
- нет поддержки термодатчиков для управления вентиляторами.
Данный вариант функционально больше расширяться не будет (некуда - памяти не осталось), разве что будут исправляться находимые ошибки.
Также есть "дешёвый" вариант на ATmega8 (исходный код), поддерживающий только символьные дисплеи 16x2 (схема). Его достоинство - легко перекомпилировать под другое расположение ножек (править файл pins.h).
Добавил viewtopic.php?f=25&t=98758
kоyodza
Все прошивки на данный момент поддерживают (жирным выделены варианты для которых у меня нет железа и их работа не проверена мною):
а) Аудиопроцессоры:
- TDA7439;
- TDA7313 (PT2313);
- TDA7318;
б) Тюнеры:
- FM-модули на базе TEA5767;
- FM-модули на базе RDA5807M;
- тюнеры на базе синтезатора частоты LM7001;
- тюнеры TUX032 из разного рода автомагнитол ф. Sony;
в) Регулировку яркости подсветки дисплея.
Основной прошивкой на текущий момент является вариант на ATmega32 с кадровым буфером (исходний код). Он поддерживает графические дисплеи 128x64:
а) на базе KS0108:
- тип А (прямые лог. уровни на входах CS1/CS2) (схема подключения);
- тип Б (обратные лог. уровни на CS1/CS2), с другой распиновкой (схема подключения);
б) на базе контроллера ST7920, с распиновкой совпадающей с с KS0108A (схема подключения).
Данный вариант прошивки наиболее предпочтителен ввиду наибольшей функциональности:
- Поддержка режима обучения кнопкам любого пульта стандарта RC5 без необходимости ручной правки EEPROM в hex-редакторе
- Управление вентиляторами охлаждения усилителя мощности на базе данных от термодатчиков типа DS18B20 (функциональность лично мною проверена только в эмуляторе, не в железе)
- Высокая скорость обновления дисплея за счёт кадрового буфера
- Графические значки для регулируемых функций.
Именно этот вариант прошивки будет расширяться функционально в будущем.
Также этот вариант прошивки может быть легко перекомпилирован под любой другой контроллер AVR с достаточным объёмом RAM(2kB)/Flash(32kB)/EEPROM(1кБ). Потребуется лишь перенастроить таймеры и источник внешнего прерывания для обработки сигнала с пульта ДУ и описать подключение ножек в отдельном файле pins.h. В частности, исходники под ATmega64.
Чуть менее функционален вариант на ATmega16 (исходный код). Его также можно собрать и под ATmega32 без правки исходников, изменив соответственно переменную MCU в Makefile.
Достоинства этого варианта:
- поддержка символьных дисплеев 16x2 (схема подключения).
- поддержка графических дисплеев LS020 из телефонов Siemens *65 (мною вариант проверялся только в эмуляторе, по поводу схемы подключения интересуйтесь у форумчан или по файлу ls020.h
Недостатки:
- заметно медленнее работает дисплей ST7920
- нет режима обучения пульту (только отображение кодов нажимаемых кнопок, которые можно записать на бумажку и потом руками внести в EEPROM)
- нет поддержки термодатчиков для управления вентиляторами.
Данный вариант функционально больше расширяться не будет (некуда - памяти не осталось), разве что будут исправляться находимые ошибки.
Также есть "дешёвый" вариант на ATmega8 (исходный код), поддерживающий только символьные дисплеи 16x2 (схема). Его достоинство - легко перекомпилировать под другое расположение ножек (править файл pins.h).
- Вложения
-
- m8-c8bfbe4.7z
- (171.86 КБ) 518 скачиваний
- Сергей_74
- Опытный кот
- Сообщения: 707
- Зарегистрирован: Чт фев 21, 2008 12:32:06
- Откуда: Россия г.Уфа
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
WiseLord писал(а):ОК, выкладываю последние на сегодняшний день прошивки и варианты.
СПАСИБО БОЛЬШОЕ! Так будет удобнее в будущем при появлении обновлений
WiseLord писал(а):Именно этот вариант прошивки будет расширяться функционально в будущем.
Также этот вариант прошивки может быть легко перекомпилирован под любой другой контроллер AVR с достаточным объёмом RAM(2kB)/Flash(32kB)/EEPROM(1кБ). Потребуется лишь перенастроить таймеры и источник внешнего прерывания для обработки сигнала с пульта ДУ и описать подключение ножек в отдельном файле .
Скажите а можно ли в таком случаи скомпилировать проект под mega 128? Лежат без дела 3шт.
-hands made-
Опытный Электрик, даже жену не берет одновременно за две сиськи!!!
Опытный Электрик, даже жену не берет одновременно за две сиськи!!!
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Можно. Судя по тому, что ATmega128 - это фактически та же ATmega64 с большим количеством Flash-памяти, просто возьмите ветку исходников m64, всего лишь поменяв тип контроллера (MCU) в Makefile без других правок кода.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
а если в место ATmega8 применить ATmega168, переделка исходника большая?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Нет, не думаю. Там вроде как минимальная разница по настройке таймеров и прерывания INT1 для ИК-приёмника, а в остальном должно работать аналогично.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
ясно а где и че поправить
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Читаем соответствующий документ от Atmel, видим разницу в настройках прерываний TIMER0/TIMER2, отличия в регистрах TIMSKx и соответственно правим код.
Ну и в Makefile контроллер заменить - уже это подскажет места в программе с ошибками.
Ориентировочно, патча ниже должно быть достаточно.
Ну и в Makefile контроллер заменить - уже это подскажет места в программе с ошибками.
Ориентировочно, патча ниже должно быть достаточно.
- Вложения
-
- m8_m168.patch.7z
- (1.1 КБ) 243 скачивания
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
можно ли поставить дисплей с телефона lg kp500 или нокиа 5230 самсунг 5230 с какого можно подставить ???
заранее спасибо
заранее спасибо
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
99.9% вероятности, что нельзя.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
от каких телефонов это возможно может нокиа е52 или 6300 телефонные на порядок дешевле и проще найти
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
подскажите любую альтернативу 128x64 по размерам можно и больше
Последний раз редактировалось AlekseyEnergo Сб ноя 01, 2014 22:30:26, всего редактировалось 1 раз.
Причина: Нарушение пункта 2.2 правил форума. Предупрежден!
Причина: Нарушение пункта 2.2 правил форума. Предупрежден!
- loki_amorf
- Открыл глаза
- Сообщения: 69
- Зарегистрирован: Пт апр 23, 2010 13:04:48
- Откуда: г.Киев
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Собрал на макетной плате устройство, применил Атмегу 64, пока что все крутится без аудиопроцессора (планирую применить PGA2310 - CS3310, в пользу качества звука в жертву будет принесен функционал устройства, естественно исходник будет правиться), конструкция прекрасная, интерфейс управления на высоте, автору конструкции желаю творческих успехов и спасибо за Ваш труд!
Считаю полезным к алгоритму регулировки громкости добавить переменный шаг регулировки громкости, в зависимости от уровня громкости: от 0 до -40дб - шаг 1 дб, от -40 до -60 - шаг 5 дб, -60 и ниже шаг 10 дб.
Покритикуйте.
С уважением, Сергей.
Считаю полезным к алгоритму регулировки громкости добавить переменный шаг регулировки громкости, в зависимости от уровня громкости: от 0 до -40дб - шаг 1 дб, от -40 до -60 - шаг 5 дб, -60 и ниже шаг 10 дб.
Покритикуйте.
С уважением, Сергей.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
на сколько реально подключить такие варианты?
http://bascom.at.ua/publ/biblioteka_bas ... /1-1-0-112
http://vrtp.ru/index.php?showtopic=1120&st=1530
http://bascom.at.ua/publ/biblioteka_bas ... /1-1-0-112
http://vrtp.ru/index.php?showtopic=1120&st=1530
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
В принципе - подключить реально. Аналогично LS020 под вариант с ATmega16 - делать преобразователи уровней 5В->3.3В, написать драйвера для дисплеев соответствующие.
В реальности - лично я этим заниматься не буду. Если Вы хотите - welcome, исходники доступны.
Проще и дешевле купить в Китае уже поддерживаемый дисплей подешевле и не усложнять себе жизнь.
В реальности - лично я этим заниматься не буду. Если Вы хотите - welcome, исходники доступны.
Проще и дешевле купить в Китае уже поддерживаемый дисплей подешевле и не усложнять себе жизнь.
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Доброго вечера! На реализацию Вами поддержки тюнера TDA7703 рассчитывать стоит? Или же ориентироваться на уже опробованные решения.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Наверное, всё-таки этим заниматься я не буду. По крайней мере, в ближайшее время. Всё-таки этот проект не ради тюнера задумывался.
P.S. Если у Вас этот тюнер работет с каким-нибудь проектом с открытыми исходниками - дело могло бы упроститься.
P.S. Если у Вас этот тюнер работет с каким-нибудь проектом с открытыми исходниками - дело могло бы упроститься.
- san-sanych
- Встал на лапы
- Сообщения: 127
- Зарегистрирован: Вт июл 15, 2014 17:03:13
- Откуда: Могилев, Беларусь
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
К сожалению не нашел в сети ниодного проекта с использованием этого тюнера. Ладно, буду довольствоваться аналоговым. Кстати, и среди аналоговых встречаются очень даже ничего экземпляры, выдранные из породистых автомагнитол 90х годов.
- Mazzz
- Нашел транзистор. Понюхал.
- Сообщения: 165
- Зарегистрирован: Пт июл 05, 2013 01:31:35
- Откуда: Владивосток
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Простите за глупый вопрос а фузы на вариант с Atmega8 подскажите пожалуйста.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
В исходниках, в Makefile всё есть.
Кстати, может, кому-то будет интересен отдельный вариант на ATmega8:
- без поддержки FM-тюнера;
- только для TDA7313;
+ всё устройство на одной двухсторонней плате (и контроллер, и аудиопроцессор);
+ языки - английский и русский - переключаются на лету;
+ при этом можно использовать китайские дисплеи без кириллицы;
+ как и в старших вариантах на ATmega32, есть режим настройки на пульт;
+ исходник может быть легко переделан под другую разводку сигналов.
Исходники здесь, плата во вложении. Схему не рисовал, в целом соответствует "обычной" на ATmega8, только с другой разводкой МК. Отслеживайте разводку по плате и pins.h исходников.
-U lfuse:w:0xe4:m -U hfuse:w:0xc1:m
Кстати, может, кому-то будет интересен отдельный вариант на ATmega8:
- без поддержки FM-тюнера;
- только для TDA7313;
+ всё устройство на одной двухсторонней плате (и контроллер, и аудиопроцессор);
+ языки - английский и русский - переключаются на лету;
+ при этом можно использовать китайские дисплеи без кириллицы;
+ как и в старших вариантах на ATmega32, есть режим настройки на пульт;
+ исходник может быть легко переделан под другую разводку сигналов.
Исходники здесь, плата во вложении. Схему не рисовал, в целом соответствует "обычной" на ATmega8, только с другой разводкой МК. Отслеживайте разводку по плате и pins.h исходников.
- Вложения
-
- ampcontrol-full.7z
- (54.82 КБ) 877 скачиваний