国产教学实验箱 DSP教学实验箱 操作教程 4 4 有限冲激响应

2023-11-08 18:51:11 字數 4856 閱讀 5428

一、#寻找ai写手计划#实验目的。

了解fir滤波器的特点,掌握程序算法生成滤波器系数的方法,并实现fir滤波器滤除高频信号,并在lcd上显示结果。

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

有限脉冲响应(fir)滤波器(n-1阶),不存在输出对输入的反馈支路,其单位脉冲h(n)是有限长。对于一个fir滤波器系统,它的冲激响应总是有限长的,其系统函数可记为:

其中,n-1为fir的滤波器的阶数。

带有常系数的fir滤波器是一种lti(线性时不变)数字滤波器。冲激响应是有限的意味着在滤波器中没有发反馈。长度为n的fir输出对应于输入时间序列x(n)的关系由一种有限卷积和的形式给出,最基本的具体形式如下:

有限长单位冲激响应(fir)滤波器有以下特点:

1)系统的单位冲激响应h (n)在有限个n值处不为零。

2)系统函数h(z)在|z|>0处收敛,极点全部在z = 0处(因果系统)。

3)结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。设fir滤波器的单位冲激响应h (n)为一个n点序列,0 ≤ n ≤n -1,则滤波器的系统函数为:h(z)=∑h(n)* z^(-n),就是说,它有(n-1)阶极点在z = 0处,有(n-1)个零点位于有限z平面的任何位置。

fir滤波器的设计比较简单,就是要设计一个数字滤波器去逼近一个理想的低通滤波器。通常这个理想的低通滤波器在频域上是一个矩形窗。

在数字信号处理中,傅里叶变换用来求取时域信号的频率成分。因此,通过对特定频率幅度和相位的响应,求取傅里叶变换的逆变换(idft),就可以求出满足要求的数字滤波器。

设计fir滤波器需要提供的参数:

1)滤波器的类型:低通、高通、带通、带阻。

2)滤波器的采样频率。

3)滤波器的系数个数。

4)阻带衰减(db)

5)通带纹波(db)

6)过渡带带宽(hz)

本实验利用kaiser窗设计一个fir低通滤波器,有用信号为100hz,需要滤掉的信号为450hz。

kaiser窗是一种应用广泛的可调节窗,它可以通过改变窗函数的形状来控制窗函数旁瓣的大小,从而在设计中可用滤波器的衰减指标来确定窗函数的形状。与其他窗相比,kaiser窗最大的特点是可以同时调整主瓣和旁瓣宽度。 kaiser窗的定义如下:

其中n=1,2,⋯,n-1 ,n 表示窗函数的总长度, i_0是第一类贝瑟尔函数。β是一个可调参数,可以通过改变β的值来调整窗函数的形状,从而达到不同的阻带衰减要求。

void filter_coefficient(int n, int band, float fs, float fln, float fhn, float wn, float beta, float h)

n:滤波器阶数(偶数)

band:滤波器类型,1=低通,2=高通,3=带通,4=带阻。

fs:采样频率。

fln:通带上边界频率(低通) 、通带下边界频率(高通、带通、带阻)

fhn:无意义(低通、高通)、通带上边界频率(带通、带阻)

wn:滤波器窗体,1=retangular,2=tapered rectangular,3=triangular,4=hanning,5=hamming,6=blackman,7=kaiser

beta:kaiser窗口的β参数(3< β10)

h:滤波器系数。

程序流程设计:

设计中首先要进行外设使能配置,然后进行lcd管脚复用配置和lcd中断配置,接着进行lcd显示和触摸的初始化。然后通过fir滤波器系数算法生成滤波因子,最后产生带有噪声的原始信号并进行fir滤波和fft运算,将结果显示在lcd屏幕上,在循环中进行触摸检测,根据标志位判断显示时域或者频域波形。

dsplib 包含优化的、c语言可调用的通用信号处理例程,用于计算密集型实时应用程序。 调用这些例程的运行速度比直接用c语言编写的等效**快得多。使用dsplib可以缩短应用程序开发时间。

dsplib 3_4_0_0包括适用于 c64x+ 或 c66x 或 c674x 处理器的 windows 或 linux 安装可执行文件。 每个可执行文件安装一个组件包存储库、一个文档目录、一个 eclipse 插件目录和一个扩展的组件目录结构,其中包含组件库、头文件和测试示例。

tms320c6748处理器使用的是dsplib_c674x_3_4_0_0。

fir滤波函数。

使用dsplib 的库来进行fir滤波。使用时,直接包含“dspf_sp_fir_r2.h”文件 即可。

api接口。

void dspf_sp_fir_r2(const float * x, const float * h,float *restrict r, const int nh, const int nr);

程序使用dsplib 的库来进行fir滤波,调用的程序源码和使用说明可以安装dsplib后查看。调用的fir滤波函数中:

第一个参数是指向大小为nr+nh-1 的输入数组的指针。

第二个参数是指向大小为nh 的系数数组的指针。

第三个参数是指向大小为nr 的输出数组的指针。

第四个参数是系数个数。

第五个参数是输出样本数。

使用dsplib 的库来进行fft运算。使用时,直接包含“dspf_sp_fftspxsp.h”文件 即可。

api接口。

void dspf_sp_fftspxsp(int n, float *ptr_x, float *ptr_w, float *ptr_y, unsigned char *brev, int n_min, int offset, int n_max);

程序使用dsplib 的库来进行fft运算,调用的程序源码和使用说明可以安装dsplib后查看。调用的fft函数中:

第一个参数是样本中fft 的长度,第二个参数是指向数据输入的指针。

第三个参数是指向复杂旋转因子的指针。

第四个参数是指向复杂输出数据的指针。

第五个参数是指向包含64 个条目的位反转表的指针。如果样本的fft长度可以表示为 4 的幂,第六个参数是4,否则 第六个参数是 2 。

第七个参数是从主fft开始的样本中的子 fft偏移索引 。

第八个参数是样本中主fft的大小。

使用dsplib 的库来进行fft逆变换。使用时,直接包含“dspf_sp_ifftspxsp.h”文件 即可。

api接口。

void dspf_sp_ifftspxsp (int n, float *ptr_x, float *ptr_w, float *ptr_y,unsigned char *brev, int n_min, int offset, int n_max);

程序使用dsplib 的库来进行fft逆变换,调用的程序源码和使用说明可以安装dsplib后查看。调用的ifft函数中:

第一个参数是样本中fft 的长度。

第二个参数是指向数据输入的指针。

第三个参数是指向复杂旋转因子的指针。

第四个参数是指向复杂输出数据的指针。

第五个参数是指向包含64 个条目的位反转表的指针 。如果样本的fft长度可以表示为 4 的幂,第六个参数是4,否则第六个参数是2 。

第七个参数是从主fft开始的复杂样本中的子fft偏移索引 。

第八个参数是样本中主fft的大小。

1)连接**器和电脑的usb接口。

2)将拨码开关拨到debug模式01111,连接实验箱电源,拨动电源开关上电。

导入工程,选择demo文件夹下的对应工程。

编译工程,生成可执行文件。

将ccs连接实验箱并加载程序。

程序加载完成后点击运行程序。

运行程序后,lcd会显示fir滤波前后的时域波形,上方为100hz信号与450hz噪声组成的混合信号,下方为滤波后得到的结果(保留100hz信号)。

点击一下lcd屏幕,会切换频域波形,上方显示原始频域信号+噪声,下方显示滤波后的频域波形,输入波形为一个低频率的正弦波与一个高频的正弦波叠加而成,通过观察频域图可知输入波形中的低频波形通过了滤波器,而高频部分被滤除。

实验结束后,先点击黄色按钮暂停程序运行,再点击红色按钮退出ccs与实验板的连接,最后实验箱断电即可。

创新实验教学 引领教育创新的新时代

在当今日益发展的信息时代,教育领域也在不断变革与创新之中。其中,创新实验教学作为一种先进的教学方法,正日益受到人们的关注和推崇。本文将以 创新实验教学的意义 特点 实施方法以及影响等方面来介绍和诠释这一教学模式。通过深入 让我们一起领略创新实验教学给教育领域带来的变革和机遇。首先,创新实验教学作为教...

长岛实验幼儿园教师外出学习教研分享活动

中华人民共和国学前教育法 草案 中提出的幼儿园应当配备符合相关标准的玩教具和幼儿园图画书 岁儿童学习与发展指南 中指出 幼儿园的语言是在交流和运用的过程中发展起来的。目前国内幼儿园也在针对图画书开展相关的课程活动探索,从有效地教学方法和策略,到多元的图画书融合方式。为了开展高质量图画书 教育活动,聚...

化工专业实验课程教学大纲

化工专业实验课程教学目标。化学工程与工艺专业实验是本专业本科高年级学生在系统学习专业基础课程和专业课程后,为了加深理论基础知识,提高学生对化工的理解而开设的实践性课程。专业实验从工程与工艺两个角度出发,既以化工工艺生产为背景,又以解决工艺或过程开发中所遇到的共性工程问题为目的,选择典型的工艺与工程要...