Главная » Микроконтроллеры
Призовой фонд
на август 2019 г.
1. 1000 руб
Паяльник
2. Тестер компонентов MG328
Паяльник
3. 200 руб.
От пользователей

Аудио анализатор спектра на Atmega32

Все сигналы, независимо от того, вы их придумали  или наблюдали во Вселенной, на самом деле просто сумма простых синусоид различных частот.

Я сделал небольшой аудио анализатор спектра (0 - 10 кГц) из ЖК-дисплея 16x2 и микроконтроллера ATmega32. Я начал с простых ДПФ (Дискретное Преобразование Фурье). БПФ (Быстрое Преобразование Фурье) отличается от ДПФ только большей скоростью и немного более сложным алгоритмом, я не стал его использовать, возможно я добавлю его позже.

ДПФ медленный по сравнению с БПФ. Мой ЖК анализатор спектра не требует большой скорости, которую может обеспечить  БПФ, и если изображение на экране будет меняться с частотой около 30 кадров / сек, то это более чем достаточно для визуализации звукового спектра. Но я итак могу достичь частоты около 100 кадров / сек, однако для ЖК-дисплея не рекомендуется слишком высокая частота обновления. Звук с частотой дискретизации 20 кГц даёт 32 точки ДПФ. Поскольку результат преобразования симметричен, мне нужно использовать только первые 16 результатов. Соответственно максимальная частота  10 кГц. Таким образом, 10кГц/16 = 625Гц.

Я пытался увеличить скорость вычисления ДПФ. Если есть точка N ДПФ, то необходимо найти синус и косинус (N ^ 2) / 2. Для 32-точечного ДПФ, необходимо  найти синус и косинус  512. Прежде чем искать синус и косинус, нам нужно найти угол (градусы), который занимает некоторое время процессора. Для этого я сделал таблицы для синуса и косинуса.  Я сделал синус и косинус  16-битными переменными, умножив значения синуса и косинуса на 10000. После преобразования я должен разделить каждый результат на 10000. Теперь я могу рассчитать 120 32-точечных ДПФ в секунду, что более чем достаточно для анализатора спектра.

Схема аудио анализатора спектра

Дисплей

Я использовал пользовательские символы для  ЖК-дисплея  загруженные в  64 Байт встроенной памяти ЖК-дисплея.  В интернете я увидел видео, где ЖК-дисплей 16х2 используется в качестве дисплея анализатора спектра и использовал эту идею.

Аудио вход

Схема предусилителя

Одной из наиболее важных частей анализатора спектра является  получение сигнала с электретного микрофона. Особое внимание должно быть уделено разработке предварительного усилителя для микрофона. Нам нужно установить нулевой уровень на входе АЦП и максимальный уровень равный половине напряжения питания, т.е. 2,5В. На него может подаваться напряжение от -2,5В до +2,5В. Предусилитель должен быть настроен так, чтобы не превышать этих границ. Я использовал операционный усилитель LM324 в качестве предварительного усилителя для микрофона.

Аудио анализатор спектра

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
Дисплей
МК AVR 8-бит
ATmega32
1 Поиск в Utsource В блокнот
Конденсатор22 пФ2 Поиск в Utsource В блокнот
Конденсатор0.1 мкФ1 Поиск в Utsource В блокнот
Электролитический конденсатор100 мкФ1 Поиск в Utsource В блокнот
Резистор
100 Ом
1 Поиск в Utsource В блокнот
Подстроечный резистор4.7 кОм1 Поиск в Utsource В блокнот
Кварцевый резонатор16 МГц1 Поиск в Utsource В блокнот
LCD-дисплей16х21 Поиск в Utsource В блокнот
Блок питания5 В1 Поиск в Utsource В блокнот
Аудио вход
U1 Операционный усилитель
LM324
1 Поиск в Utsource В блокнот
С1 Конденсатор1 мкФ1 Поиск в Utsource В блокнот
С8 Конденсатор0.01 мкФ1 Поиск в Utsource В блокнот
R1 Резистор
220 кОм
1 Поиск в Utsource В блокнот
R2, R3 Резистор
10 кОм
2 Поиск в Utsource В блокнот
R4, R9 Резистор
1 кОм
2 Поиск в Utsource В блокнот
R5 Резистор
1.5 кОм
1 Поиск в Utsource В блокнот
MIC Микрофон1 Поиск в Utsource В блокнот
Добавить все

Скачать список элементов (PDF)

Оригинал статьи

Прикрепленные файлы:

Теги:

Касьянов А. Опубликована: 2012 г. 0 1
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (3) | Я собрал (0) | Подписаться

+1
валерий #
Можно этот анализатор подключить к линейному выходу звуковой карты?
Ответить
0
Роман Валерьевич #
Да, можно
Ответить
0
Юрий #
А где компилировать код, а то в code vision выдает ошибку (жалуется на библиотеку) и в avr studio тоже. Есть ли у вас hex файл? Буду очень благодарен
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется сила тока?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Программатор Pickit3
Программатор Pickit3
iMAX B6 - зарядное для Lion, LiPo, LiFe, Pb, NiCd и NiMH аккумуляторов Сатфайндер
вверх