Темброблок/спектроанализатор на ATmega16, TDA7439 и SG12864
- kt840
- Нашел транзистор. Понюхал.
- Сообщения: 196
- Зарегистрирован: Вт апр 05, 2011 15:39:55
- Откуда: Красноярск
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Знать бы еще как это сделать ...
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
На нажатие кнопки 1 меняется яркость. Подстроечник на плате на минимуме стоит
Последний раз редактировалось ZakkWylde Ср май 18, 2016 19:12:32, всего редактировалось 1 раз.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Привет всем.
Где я могу купить процессоры PT2322 и PT2323 ?.
Спасибо.

Где я могу купить процессоры PT2322 и PT2323 ?.
Спасибо.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Извините за вопрос, но без подключения аудиопроцессора что то должно отображаться на дисплее или его подключение обязательно?
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Всё работает и без подключения аудиопроцессора или тюнера.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Здравствуйте WiseLord!
Мне очень понравилась ваша схема темброблока и особенно понравился спектроанализатор.
Пожалуйста помогите с реализацией программы спектроанализатора без всего остального.
Нужен только спектроанализатор.
Мне очень понравилась ваша схема темброблока и особенно понравился спектроанализатор.
Пожалуйста помогите с реализацией программы спектроанализатора без всего остального.
Нужен только спектроанализатор.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Необходимый код целиком и полностью сосредоточен в файлах fft.c/fft.h, adc.c/adc.h плюс прерывание таймера, например, из ks0108.c, по которому дёргается АЦП. Результат забирается функцией getSpData(скорость опадания столбиков) в виде массива из 64 байтов. Первая половина массива относится к левому каналу, вторая - к правому.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Тут была озвучена просьба в основном варианте (там где поддерживаются кнопки на входах шины данных дисплея) те выводы, что сейчас используются для кнопок, использовать для включения/отключения питания устройств, подключенных к соответствующим входам.
Поскольку это ломает совместимость с изначальным проектом, такая правка в основной вариант не попадёт. Но - кому надо, прикладываю патч, который позволяет понять, что надо менять в исходниках, чтобы получить такое поведение.
Поскольку это ломает совместимость с изначальным проектом, такая правка в основной вариант не попадёт. Но - кому надо, прикладываю патч, который позволяет понять, что надо менять в исходниках, чтобы получить такое поведение.
- Вложения
-
- nobuttons.patch.7z
- (1.16 КБ) 179 скачиваний
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
WiseLord писал(а):Тут была озвучена просьба в основном варианте (там где поддерживаются кнопки на входах шины данных дисплея) те выводы, что сейчас используются для кнопок, использовать для включения/отключения питания устройств, подключенных к соответствующим входам.
Поскольку это ломает совместимость с изначальным проектом, такая правка в основной вариант не попадёт. Но - кому надо, прикладываю патч, который позволяет понять, что надо менять в исходниках, чтобы получить такое поведение.
Если я правильно понял то эти изменения касаются tda7439 а для рт2323\рт2322 надо тоже писать так или это действие будет выполняться для всех процессоров?
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
WiseLord, здравствуйте.
Спасибо за Ваш бесценный труд ...
Вот появился вопросик.
Приобрел у китайцев платку с PCF8574T, адреса меняются с 020 по 027, у Вас 040 ...
Где нужно поправить исходники, чтобы скомпилировать нужную прошивку.
Спасибо за Ваш бесценный труд ...
Вот появился вопросик.
Приобрел у китайцев платку с PCF8574T, адреса меняются с 020 по 027, у Вас 040 ...
Где нужно поправить исходники, чтобы скомпилировать нужную прошивку.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Что именно в патче заставило Вас так подумать?misir писал(а):Если я правильно понял то эти изменения касаются tda7439
Вообще-то здесь, но сомневаюсь, что надо что-то менять. Потому как адреса 0x20..0x27 - это то же самое, что 0x40..0x4E. Просто в первом случае адрес считается без учёта R/W бита (так принято в arduino), а во второй - с его учётом (в других случаях)mr.red писал(а):Где нужно поправить исходники, чтобы скомпилировать нужную прошивку.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Что именно в патче заставило Вас так подумать?WiseLord писал(а):misir писал(а):Если я правильно понял то эти изменения касаются tda7439
Просто увидел только tda7439 и подумал что только для нее изменения. Я в программировании не силен.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
WiseLord писал(а):Вообще-то здесь, но сомневаюсь, что надо что-то менять. Потому как адреса 0x20..0x27 - это то же самое, что 0x40..0x4E. Просто в первом случае адрес считается без учёта R/W бита (так принято в arduino), а во второй - с его учётом (в других случаях)mr.red писал(а):Где нужно поправить исходники, чтобы скомпилировать нужную прошивку.
Т.е мне достаточно запаять перемычки? ...
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
WiseLord писал(а):Необходимый код целиком и полностью сосредоточен в файлах fft.c/fft.h, adc.c/adc.h плюс прерывание таймера, например, из ks0108.c, по которому дёргается АЦП. Результат забирается функцией getSpData(скорость опадания столбиков) в виде массива из 64 байтов. Первая половина массива относится к левому каналу, вторая - к правому.
Спасибо большое!
Разобрался, все заработало.
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Да.mr.red писал(а):Т.е мне достаточно запаять перемычки?
Рад был помочь.SerF писал(а):Разобрался, все заработало.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
[quote="WiseLord"]Тут была озвучена просьба в основном варианте (там где поддерживаются кнопки на входах шины данных дисплея) те выводы, что сейчас используются для кнопок, использовать для включения/отключения питания устройств, подключенных к соответствующим входам.
Спасибо Вам огромное!! Собрал в железе все работает. 1 появляется с переключением входов , как и хотелось.
Спасибо Вам огромное!! Собрал в железе все работает. 1 появляется с переключением входов , как и хотелось.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Ураааа! Заработало!
WiseLord, спасибо за подсказку.
WiseLord, спасибо за подсказку.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
SerF писал(а):WiseLord писал(а):Необходимый код целиком и полностью сосредоточен в файлах fft.c/fft.h, adc.c/adc.h плюс прерывание таймера, например, из ks0108.c, по которому дёргается АЦП. Результат забирается функцией getSpData(скорость опадания столбиков) в виде массива из 64 байтов. Первая половина массива относится к левому каналу, вторая - к правому.
Спасибо большое!
Разобрался, все заработало.
Здравствуйте.
Делаю спектроанализатор на контроллере, работающего на частоте 8МГц (нет кварца на 16МГц).
Правильно я настроил таймер???
TIMSK |= (1<<TOIE0); /* Enable Timer0 overflow interrupt */
TCCR0 |= (0<<CS02) | (1<<CS01) | (0<<CS00); /* Set timer prescaller to 8 (1MHz) */
/* 1MHz / (256 - 206) = 20000Hz => 20000Hz / 8 / 2 / 66 = 18.9 FPS */
TCNT0 = 206;
- WiseLord
- Друг Кота
- Сообщения: 4905
- Зарегистрирован: Чт апр 11, 2013 11:19:59
- Откуда: Минск
- Контактная информация:
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
Вроде бы правильно.
С другой стороны, можно оставить код как есть, но не использовать манипуляцию с run (запуск АЦП каждое второе прерывание таймера), а просто запускать АЦП каждое прерывание, не удваивая при этом частоту таймера. Будет дисплей чуть медленнее обновляться, но вряд ли это будет заметно. А свободного процессорного времени останется больше, что полезно для 8МГц.
С другой стороны, можно оставить код как есть, но не использовать манипуляцию с run (запуск АЦП каждое второе прерывание таймера), а просто запускать АЦП каждое прерывание, не удваивая при этом частоту таймера. Будет дисплей чуть медленнее обновляться, но вряд ли это будет заметно. А свободного процессорного времени останется больше, что полезно для 8МГц.
Re: Темброблок/спектранализатор на ATmega16, TDA7439 и SG128
WiseLord писал(а):Вроде бы правильно.
С другой стороны, можно оставить код как есть, но не использовать манипуляцию с run (запуск АЦП каждое второе прерывание таймера), а просто запускать АЦП каждое прерывание, не удваивая при этом частоту таймера. Будет дисплей чуть медленнее обновляться, но вряд ли это будет заметно. А свободного процессорного времени останется больше, что полезно для 8МГц.
Спасибо.
Попробую.