Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК МПСС.doc
Скачиваний:
38
Добавлен:
09.11.2019
Размер:
11 Mб
Скачать
  1. Фильтр низкой частоты с нормальной частотой среза 0.2

Импульсная характеристика, построенная по средствам MATLAB 7.0, приведена на рисунке 2.8, АЧХ и ФЧХ фильтра на рисунке 2.9.

Рисунок 2.8 – Импульсная характеристика.

Рисунок 2.9 – АЧХ и ФЧХ для частоты дискретизации 44 кГц.

Импульсная характеристика, построенная в ИСР CCS, приведена на рисунке 2.10.

Рисунок 2.10 – Импульсная характеристика.

Очевидно, что эта импульсная характеристика в отличие от импульсной характеристики предыдущего фильтра устойчива. Осциллограмма фильтрации входного звукового файла представлена на рисунке 2.11, а спектрограмма выходного файла на рисунке 2.12. В отличие от предыдущего фильтра отчетлива, видна частота среза.

Рисунок 2.11 – Построение осциллограммы входного и выходного файла.

Рисунок 2.11 – Спектр отфильтрованного сигнала.

  1. Полосовой фильтр с нормальной частотой среза 0.165 – 0.33

Импульсная характеристика, построенная по средствам MATLAB 7.0, приведена на рисунке 2.12, АЧХ и ФЧХ фильтра на рисунке 2.13.

Рисунок 2.12 – Импульсная характеристика.

Рисунок 2.13 – АЧХ и ФЧХ для частоты дискретизации 44 кГц.

Импульсная характеристика, построенная в ИСР CCS, приведена на рисунке 2.14.

Рисунок 2.14 – Импульсная характеристика.

Если теперь попытаться применить этот полосовой фильтр для фильтрации входного звукового файла, то в выходном файле будет сплошной шум. Это связано с тем, что отсчеты в файлах типа *.wav, хранятся в виде числа от 0 до 255, т. е. положительные. Из осциллограммы представленной на рисунке 2.15 видно, что некоторые отсчеты получаются отрицательными, а отрицательные отсчеты проигрывателем будут восприниматься как число 255. За счет этого произойдет искажение. Появление же отрицательных отсчетов объясняется тем, что основная энергия сигнала сосредоточена в области низких частот, а т. к. низкая частота в это фильтре попадает в полосу задерживания то сигнал теряет большую часть своей энергии.

Чтобы фильтрация была корректной, необходимо перед помещением отфильтрованного отсчета в выходной буфер, прибавить к нему любое число. Для этого в файле «filter.h» в теле функции run_filter() сделать следующие изменения: строку «out_buf[count_run]=coeff;//+150;» изменить на «out_buf[count_run]=coeff+150;». Это приведет к тому, что осциллограмма выходных отсчетов поднимется и станет такой как представлено на рисунке 2.16.

Рисунок 2.15 – Построение осциллограммы входного и выходного файла.

Рисунок 2.16 – Построение осциллограммы входного и выходного файла, с увеличением уровня сигнала.

Спектрограмма выходного файла представлена на рисунке 2.17.

Рисунок 2.17 – Спектр отфильтрованного сигнала.

3. Реализация бих фильтра на dsk5510 для фильтрации звукового сигнала в реальном времени.

  1. Сконфигурировать ИСР CCS для работы с платой DSK5510.

  2. Создать проект «exp_2» аналогичный проекту «exp_2» из работы №3.

  3. Заменить файл «filter.h» из проекта «exp_2» работы №3 на файл, разработанный в этой работе.