Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Квадраты в верхней строке появляются при подаче питания на индикатор. Это его состояние по умолчанию, если ещё не инициализирован.
На atmega 328 по-другому инициализируются таймеры, остальной код отличаться не будет. Можете глянуть мой проект матричных светодиодных часов, там выбор МК через макросы #ifdef реализован, и эта разница видна.
Вне схемы шить пробовали? Может, на этот "чудо-программатор" обвязка МК влияет как-то?
На atmega 328 по-другому инициализируются таймеры, остальной код отличаться не будет. Можете глянуть мой проект матричных светодиодных часов, там выбор МК через макросы #ifdef реализован, и эта разница видна.
Вне схемы шить пробовали? Может, на этот "чудо-программатор" обвязка МК влияет как-то?
-
voffka_rostov
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Ср апр 15, 2015 10:03:15
- Откуда: Ростов-на-Дону
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
WiseLord писал(а):
Вне схемы шить пробовали? Может, на этот "чудо-программатор" обвязка МК влияет как-то?
Так я его только вне схемы и шью
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Выкладываю все свои платы, которые делал для этого проекта одним файлом, чтобы не искать разбросанными по страницам форума.
Также ссылка на этот архив на Dropbox:
Печатные платы для проекта ampcontrol.
Также ссылка на этот архив на Dropbox:
Печатные платы для проекта ampcontrol.
- Вложения
-
- ampcontrol.lay6.7z
- (109.91 КБ) 931 скачивание
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
понравился вариант на атмеге8 со стр. 26,хочу переделать под дип корпус (только плату управления).отличия от "обычной" схемы по разводке мк довольно серьезные,но вроде бы разобрался.подскажите,уважаемый WiseLord :
1.прошивка в архиве чисто под эту схему разводки,а остальные прошивки м8 в ветке - под "обычную",так?
2. что для этой схемы загружать в eeprom, bin от "обычной" или какой другой?
3. для atmega8 в ветке нашел фьюзы 0xe4 0xc1 и 0x24 0xc1 - какие правильнeе?
буду очень рад получить ответы
печатку как разведу - выложу.
1.прошивка в архиве чисто под эту схему разводки,а остальные прошивки м8 в ветке - под "обычную",так?
2. что для этой схемы загружать в eeprom, bin от "обычной" или какой другой?
3. для atmega8 в ветке нашел фьюзы 0xe4 0xc1 и 0x24 0xc1 - какие правильнeе?
буду очень рад получить ответы
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
1. Да у этого одноплатного варианта своя разводка со своими файлами для прошивки. Первоначально делалась плата, и лишь потом по ней сформировалась разводка (pins.h). Поэтому для DIP-корпуса она может оказаться неудобной. Для возможности смены языка на лету (с генерацией нужных кириллических символов для нерусифицированных дисплеев) и режима обучения пульту была выброшена часть функционала (поддержка тюнера, например). Исходники в отдельной ветке m8-lcd.
"Обычный" вариант на ATmega8 по функционалу практически такой же, с той разницей, что поддерживает тюнеры и не имеет возможности смены языка на лету и полноценного режима обучения пульту (только правка кодов пульта в eeprom).
Оба этих варианта на ATmega8, равно как и вариант на ATmega16 "заморожены" и больше не будут развиваться.
2. Не помню, одинаковые у них eeprom или нет. Скорее, разные. Смотрите в исходниках нужной ветки. Там же по eeprom.h и pins.h можете сориентироваться по разводке и по назначению ячеек eeprom.
3. Фьюзы должны настраивать МК на 8МГц от внутреннего источника. Остальное не так критично, оба варианта рабочие. Для удобства можно включить бит EESAVE, для надёжности включить BODLEVEL на 4В.
Можете развести DIP-корпус как удобном Вам, а потом собрать под эту разводку оба варианта из исходников. Из ограничений - SCL/SDA должны оставаться на месте и звук для анализа спектра подаваться должен на какой-нибудь из входов АЦП. Правки понадобятся только в pins.h и adc.c
"Обычный" вариант на ATmega8 по функционалу практически такой же, с той разницей, что поддерживает тюнеры и не имеет возможности смены языка на лету и полноценного режима обучения пульту (только правка кодов пульта в eeprom).
Оба этих варианта на ATmega8, равно как и вариант на ATmega16 "заморожены" и больше не будут развиваться.
2. Не помню, одинаковые у них eeprom или нет. Скорее, разные. Смотрите в исходниках нужной ветки. Там же по eeprom.h и pins.h можете сориентироваться по разводке и по назначению ячеек eeprom.
3. Фьюзы должны настраивать МК на 8МГц от внутреннего источника. Остальное не так критично, оба варианта рабочие. Для удобства можно включить бит EESAVE, для надёжности включить BODLEVEL на 4В.
Можете развести DIP-корпус как удобном Вам, а потом собрать под эту разводку оба варианта из исходников. Из ограничений - SCL/SDA должны оставаться на месте и звук для анализа спектра подаваться должен на какой-нибудь из входов АЦП. Правки понадобятся только в pins.h и adc.c
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
спасибо за быстрый ответ.к сожалению,перекомпилировать прошивки для меня пока что трудноватый процесс.быстрее будет посидеть часик-другой за разводкой
.остался еще вопросик - а обязательно в "необычной" конструкции прописывать eeprom,или прошивка сама там напишет,что ей надо?в архиве только хекс, без епрома.
а вообще мне интересен именно такой проект,так как хочу все это хозяйство засунуть в корпус от сидирома,прикупил по случаю несколько досок на tda7492 - теперь сую их,куда попало,в качестве бп планирую импульсник от ноутбука на 19v 6a - короче,должно все влезть
а вообще мне интересен именно такой проект,так как хочу все это хозяйство засунуть в корпус от сидирома,прикупил по случаю несколько досок на tda7492 - теперь сую их,куда попало,в качестве бп планирую импульсник от ноутбука на 19v 6a - короче,должно все влезть

- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Ссылки на исходники я дал выше. Там и eeprom есть.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Changed some default eeprom values - этот для необычной схемы?
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
народ кто может собрать данный девайс для меня не безплатно естественно
- isairon
- Первый раз сказал Мяу!
- Сообщения: 30
- Зарегистрирован: Вт дек 27, 2011 20:08:11
- Откуда: Ростов-на-Дону
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Флуд, нельзя, но хочется. Выразить благодарность автору за замечательно устройство и поддержку к нему.
Впечатлил редактор hex файла. И ведь не лениво же было! Просто круто.
Впечатлил редактор hex файла. И ведь не лениво же было! Просто круто.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Читал - читал, но так ничего про индикатор не понял. Как выбрать подходящий? Хотя и китайцы толком ничего ответить не могут. Помогите определиться, скажите, этот: http://ru.aliexpress.com/item/Free-ship ... 5,201409_2 подойдет?
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Все, разобрался. Этот на st7920.
Только не пойму, ведь st7920 и ks0108 - разные контроллеры. И вывод на них несколько отличается. А у Вас все в одной прошивке. Как переключаются методы вывода, или как контроллер опознает индикатор?
Да, и еще в контроллере st7920 отсутствуют CS1 и CS2. Вместо них 1 вывод PCB и (судя по схеме) 16 лапу индикатора и 31 контроллере можно не соединять?
Только не пойму, ведь st7920 и ks0108 - разные контроллеры. И вывод на них несколько отличается. А у Вас все в одной прошивке. Как переключаются методы вывода, или как контроллер опознает индикатор?
Да, и еще в контроллере st7920 отсутствуют CS1 и CS2. Вместо них 1 вывод PCB и (судя по схеме) 16 лапу индикатора и 31 контроллере можно не соединять?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
С чего Вы взяли, что всё в одной прошивке? Для каждого дисплея своя (KS0108A, KS0108B, ST7920, KS0066).
Схемы подключения KS0108A и ST9720 полностью идентичны (по номерам выводов). Да, у некоторых выводов ST7920 другие функции, но подключается он точно так же. Разводку смотрите в файле pins.h.
Схемы подключения KS0108A и ST9720 полностью идентичны (по номерам выводов). Да, у некоторых выводов ST7920 другие функции, но подключается он точно так же. Разводку смотрите в файле pins.h.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
WiseLord писал(а):С чего Вы взяли, что всё в одной прошивке?
Да, показалось, но в голове не сложилось. Вот и спросил. Просто сейчас пытаюсь увязать все в одну "веревочку". Башка идет кругом. На 4 день таки начал понимать про интерфейсы.
WiseLord писал(а):Схемы подключения KS0108A и ST9720 полностью идентичны (по номерам выводов). Да, у некоторых выводов ST7920 другие функции, но подключается он точно так же. Разводку смотрите в файле pins.h.
Но схемы подключения в Вашем 1 сообщении:
WiseLord писал(а):а) на базе KS0108:
- тип А (прямые лог. уровни на входах CS1/CS2) (схема подключения);
и
WiseLord писал(а): б) на базе контроллера ST7920, с распиновкой совпадающей с с KS0108A (схема подключения).
- полностью идентичны. А судя по даташиту в контроллере st7920 отсутствуют CS1 и CS2, вместо которых имеется PSB. Ведь методы вывода st7920 и ks0108 - абсолютно различны.
Может быть я опять что то не так понял? Заранее извините за несколько глупые вопросы.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Да не запаривайтесь Вы так по поводу CS1 и CS2. Разводка одинаковая. Один дисплей можно заменить другим, ничего не перепаивая.
Да, там этом месте у ST7920 другие выводы, но они подключаются точно туда же, что и CS1 и CS2 у KS0108A.
Да, там этом месте у ST7920 другие выводы, но они подключаются точно туда же, что и CS1 и CS2 у KS0108A.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Обновление прошивок:
- Добавлена поддержка TDA7315 и PT2314.
- Добавлен болгарский перевод.
- Некоторые оптимизации и рефакторинг кода.
Также обновлён редактор EEPROM с учётом этих изменений.
Нумерация аудиопроцессоров поменялась, поэтому стоит обновить файл EEPROM. Правда, TDA7439 и TDA7313 это затронуть не должно.
- Добавлена поддержка TDA7315 и PT2314.
- Добавлен болгарский перевод.
- Некоторые оптимизации и рефакторинг кода.
Также обновлён редактор EEPROM с учётом этих изменений.
Нумерация аудиопроцессоров поменялась, поэтому стоит обновить файл EEPROM. Правда, TDA7439 и TDA7313 это затронуть не должно.
- Вложения
-
- ampcontrol-3754b45.7z
- (44.45 КБ) 255 скачиваний
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Обновление прошивки:
- Значение таймера тишины может быть настроено.
Ранее оно было фиксировано (3 минуты), сейчас можно выставить свой интервал от 1 до 255 минут. По умолчанию теперь таймер выставлен на 10 минут. Значение 0 отключает эту функцию (система не будет отключаться при отсутствии сигнала). Редактирование возможно через редактор EEPROM или вручную по адресу 0x3E.
- Значение таймера тишины может быть настроено.
Ранее оно было фиксировано (3 минуты), сейчас можно выставить свой интервал от 1 до 255 минут. По умолчанию теперь таймер выставлен на 10 минут. Значение 0 отключает эту функцию (система не будет отключаться при отсутствии сигнала). Редактирование возможно через редактор EEPROM или вручную по адресу 0x3E.
- Вложения
-
- ampcontrol-ce7d7a7.7z
- (45.27 КБ) 239 скачиваний
-
iceman_nsk
- Открыл глаза
- Сообщения: 64
- Зарегистрирован: Вт окт 08, 2013 15:41:06
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Уважаймые форумчане помогите плиз... Может я совсем торможу... Вот такой вопрос eeprom.bin после редактирования преобразовывать в eeprom.eep (hex) нужно или можно просто попытатся зашить так как есть? Для прошивки использую averdude+USBASP. Averdude видит только *.hex и *.eep
P.S. Чевойто я совсем перестал дружить с контроллерами...
P.S. Чевойто я совсем перестал дружить с контроллерами...
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Avrdude прекрасно шьёт raw (binary) формат: -U eeprom:w:eeprom/eeprom_ru.bin:r
Avrdude - консольная утилита, и ничего не "видит". Ему нужно в командной строке формат указывать, вручную.
Avrdude - консольная утилита, и ничего не "видит". Ему нужно в командной строке формат указывать, вручную.