ADI Blackfin DSP处理器-BF533的开发详解32:数字信号处理详解-FIR(含源代码)

硬件准备

ADSP-EDU-BF533:BF533开发板
AD-HP530ICE:ADI DSP仿真器

软件准备

Visual DSP++软件

硬件链接

功能介绍

FIR(Finite Impulse Response)滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系
统。因此,FIR 滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。

代码实现了通过算法实现 FIR 滤波器,对输入的波形进行滤波后输出,通过 Visual DSP 的 Polt 工具可以查看输入的波形和滤波后产生的波形。

调试步骤

  1. 将工程文件载入 visual DSP 软件,将软件与板卡连接。
  2. 将按下图打开工程下保存的.vdw 文件

ADI Blackfin DSP处理器-BF533的开发详解32:数字信号处理详解-FIR(含源代码)_第1张图片

  1. 在工程路径下找到 fir_533.vdw 文件。

ADI Blackfin DSP处理器-BF533的开发详解32:数字信号处理详解-FIR(含源代码)_第2张图片

  1. 打开文件后能看到会弹出下面的窗口,蓝色线表示待滤波的数据,红色线标识滤波后的数据。

ADI Blackfin DSP处理器-BF533的开发详解32:数字信号处理详解-FIR(含源代码)_第3张图片

  1. 编译代码,并全速运行代码。

调试结果

代码运行后,会看到代表滤波后的数据的红线输出滤波后的波形。

ADI Blackfin DSP处理器-BF533的开发详解32:数字信号处理详解-FIR(含源代码)_第4张图片

程序源码

#include
#include

#define VEC_SIZE 256 // length of the input vector
#define NUM_TAPS 8 // number of filter coefficients

fract16 in[VEC_SIZE] = {
#include “in.dat”
};

fract16 coefs[NUM_TAPS] = {
#include “coefs.dat”
};

fract16 delay[NUM_TAPS];

fract16 out[VEC_SIZE + NUM_TAPS - 1];

fir_state_fr16 state; // declare filter state

int main()
{
fir_init(state, coefs, delay, NUM_TAPS, 1); // initialize filter state
fir_fr16(in, out, VEC_SIZE, &state); // apply the filter to the data
}

你可能感兴趣的:(ADI,DSP资料下载,ADI,DSP技术中心,Blackfin专题,信号处理,ADI,DSP,ADI,DSP中文资料)