Давайте я объясню с самого начала. Есть отладочная плата DSK 6416. Для нее необходимо написать программу обработки сигнала. Сигнал оцифровывается следующим образом. Имеются два буфера. Как только первый заполнится отсчетами с ацп, начинает накапливаться второй. В это время отсчеты первого обрабатываются и выводятся на выход, первый буфер пуст. Как только заполнился второй, начинает заполняться первый. В это время отсчеты второго обрабатываются, выводятся на выход, второй буфер пуст. И так далее.
Цифровой фильтр на 12 кГц реализован с помощью быстрой свертки (БПФ коэффициентов фильтра, БПФ входного сигнала, их комплексные результаты умножаются в частотной области, и обратное БПФ для получения результата во временной области). Параметры фильтра при генерации коэффициентов в мат лабе показаны на картинке.

Так вот, на отладочную плату подали сигнал 12 кГц. В режиме реального времени на плате фильтруется сигнал методом быстрой свертки. Результат фильтрации хороший. У же на частоте 11900 или 12100 сигнал практически погашен.
В стопор вводит следующее. Как только подаю чм сигнал(12 кГц, 16 кГц, 500мкс), результат не могу понять какой.
Сигнал после АЦП до фильтра на 12:

Сигнал после фильтра:

Еще раз повторюсь. Разве там где присутствует 16 кГц, эта частота не должна быть погашена?
По идеи сигнал будет передаваться по радиоканалу и будет достаточно зашумленный. По этому предполагаю что фильтр использовать нужно. Возможно ошибаюсь?
И далее….после фильтрации -детектирование. Вот таким образом устроен алгоритм работы с частью на 12 кГц. Ну на 16 аналогично.
Или как то подругому все это делать, я просто первый раз с этим столкнулся и не все допонимаю?