21 ноября 2024, 23:28

Новости:

Всем привет!!!


FFT на Си

Автор Catcatcat, 15 апреля 2021, 20:03

« предыдущая - следующая »

0 Пользователей и 1 гость просматривают эту тему.

Catcatcat

Настало время вернуться к светомузыке.
Для обработки звука нужно простое FFT понятное, что бы было типа аналоговый вход и выход по частоте.
Первое, что нашел это было лет 10 назад это был Audio Spectrum Monitor


Я перевел его код с ассемблере Атмела на ассемблер PIC, без оптимизации на 64 выборки было соотношения по скорости на 8 битках 4.4/7.5мс и это учитывая, что ядро для Атмела работало на 16МГц а у PIC на 10МГц и что у PIC не было арифметического сдвига.
Потом я код перенес на си использовал в проектах ch-светомузыки.

И вот пришло время вернуть к этой теме.

На сегодня оптимизировав код на ассемблере, для ядра пик18 частотой ядра 16 Мгц, было поучена скорость 1.9мс.

Но иметь код привязанные к 8 битке не очень удобно. По этому в последнее время стал искать, что то простое и эффективное на СИ. Что бы его можно было безболезненно перенести на любую платформу.

Испробовал много кодов в инете. Самый производительный, что нашел для Си дал 120 мс на PIC18. И вот после я вернулся к своему коду и оптимизировав его на сегодня получил такие результаты:

Гена, Днипро