文档库 最新最全的文档下载
当前位置:文档库 › 用巴特莱特窗函数法设计数字FIR带通滤波器dsp课程设计要点

用巴特莱特窗函数法设计数字FIR带通滤波器dsp课程设计要点

用巴特莱特窗函数法设计数字FIR带通滤波器dsp课程设计要点
用巴特莱特窗函数法设计数字FIR带通滤波器dsp课程设计要点

课程设计

课程设计名称:数字信号处理课程设计

专业班级:电信

学生姓名:

学号:

指导教师:乔丽红

课程设计时间: 6.16-6.20

电子信息工程专业课程设计任务书

说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页

一需求分析和设计内容

数字信号处理是把许多经典的理论体系作为自己的理论基础,同时又使自己成为一系列新兴学科的理论基础。现如今随着电子设备工作频率范围的不断扩大,电磁干扰也越来越严重,接收机接收到的信号也越来越复杂。为了得到所需要频率的信号,就需要对接收到的信号进行过滤,从而得到所需频率段的信号,这就是滤波器的工作原理。对于传统的滤波器而言,如果滤波器的输入,输出都是离散时间信号,则该滤波器的冲激响应也必然是离散的,这样的滤波器定义为数字滤波器。它通过对采样数据信号进行数学运算来达到频域滤波的目的.

滤波器在功能上可分为四类,即低通(LP)、高通(HP)、带通(BP)、带阻(BS)滤波器等,每种又有模拟滤波器(AF)和数字滤波器(DF)两种形式。对数字滤波器,从实现方法上,具有有限长冲激响应的数字滤波器被称为FIR滤波器,具有无限长冲激响应的数字滤波器被称为IIR滤波器。

FIR数字滤波器的主要优点有:一、具有严格的线性相位特性;二、不存在稳定性问题;三、可利用DFT来实现。这些优点使FIR数字滤波器得到了广泛应用。窗函数法是一种设计FIR数字滤波器的基本方法,但它不是最佳设计方法,在满足同样设计指标的情况下,用这种方法设计出的滤波器的阶数通常偏大。在窗函数法的基础上,以所定义的逼近误差最小为准则来进行优化设计的算法,由于其中的逼近误差可根据不同的设计要求进行定义,故此算法适应性强,它既可用于设计选频型滤波器,又适用于非选频型滤波器的设计。常用的窗函数有矩形窗函数、巴特莱特窗函数、三角窗函数、汉宁(Hann)窗函数、海明(Hamming)窗函数、布莱克曼(Blackman)窗函数、凯塞(Kaiser)窗函数等。本设计通过MATLAB软件对FIR型滤波器进行理论上的实现,利用巴特莱特窗函数设计数字FIR带通滤波器。FIR系统不像IIR系统那样易取得较好的通带和阻带衰减特性,要取得较好的衰减特性,一般要求H(z)阶次要高,也即M要大。FIR系统有自己突出的优点:系统总是稳定的;易实现线性相位;允许设计多通带(或多阻带)滤波器,后两项都是IIR系统不易实现的。FIR数字滤波器的设计方法有多种,如窗函数设计法、频率采样法和Chebyshev逼近法等。随着Matlab软件尤其是Matlab 的信号处理工作箱的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。本实验的数字滤波器的MATLAB实现是指调用

MATLAB 信号处理工具箱函数filter 对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n )。

用巴特莱特窗函数法设计一个数字FIR 带通滤波器,要求通带边界频率为400Hz ,500Hz ,阻带边界频率为350Hz ,550Hz ,通带最大衰减1dB ,阻带最小衰减40dB ,抽样频率为2000Hz ,用MATLAB 画出幅频特性,画出并分析滤波器传输函数的零极点;

信号)2s i n ()2s i n ()()()(2121t f t f t x t x t x ππ+=+=经过该滤波器,其中

=1f 450Hz ,=2f 600Hz ,滤波器的输出)(t y 是什么?用Matlab 验证你的结论并给出)(),(),(),(21t y t x t x t x 的图形。

二 设计原理及设计思路

1.设计FIR 数字滤波器的基本方法:

FIR 数字滤波器的系统函数无分母,为1

1

()()N N i

n i i i H Z b z h n z ----====∑∑,系统频

率响应可写成:1

()()N jw

jwn n H e h n e --==∑,令()jw H e =()()j w H w e ?,H(w)为幅度函数,

()w ?称为相位函数。这与模和辐角的表示方法不同,H(w)为可为正可为负的实数,这是为了表达上的方便。如某系统频率响应 ()jw H e =sin4w 3j w e -,如果采用模和幅角的表示方法,sin4w 的变号相当于在相位上加上π(因-1= j e π),从而造成相位曲线的不连贯和表达不方便,用()()j w H w e ?则连贯而方便。窗函数法又称傅里叶级数法,其设计是在时域进行的。 函数一般是无限长且非因果的,设计时需用一个合适的窗函数把它截成有限长的因果序列,使对应的频率响应(的傅里叶变换)尽可能好地逼近理想频率响应。窗函数法的主要缺点是:一、不容易设计预先给定截止频率的滤波器;二、满足同样设计指标的情况下所设计出的滤波器的阶数通常偏大。

一些固定窗函数的特性表

2.FIR数字滤波器设计的基本步骤如下:

(1)确定技术指标

在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常被用来实现选频操作。因此,指标的形式一般在频域中给出幅度和相位响应。幅度指标主要以2种方式给出。第一种是绝对指标。他提供对幅度响应函数的要求,一般应用于FIR滤波器的设计。第二种指标是相对指标。他以分贝值的形式给出要求。本文中滤波器的设计就以线性相位FIR滤波器的设计为例。

(2)逼近

确定了技术指标后,就可以建立一个目标的数字滤波器模型(通常采用理想的数字滤波器模型)。之后,利用数字滤波器的设计方法(窗函数法、频率采样法等),设计出一个实际滤波器模型来逼近给定的目标。

(3)性能分析和计算机仿真

上两步的结果是得到以差分或系统函数或冲激响应描述的滤波器。根据这个描述就可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求;或者利用计算机仿真实现设计的滤波器,再分析滤波结果来判断。

三程序流程图

四程序源代码

clear all; clc

Fs=2000;fpl=400;fpu=500;fsl=350;fsu=550;

wpl=2*pi*fpl/Fs;wpu=2*pi*fpu/Fs;%通带截止频率%

wsl=2*pi*fsl/Fs;wsu=2*pi*fsu/Fs;%阻带截止频率%

B=wpl-wsl; %计算过渡带宽度%

%N=2*ceil(3.32*pi/Bt)+1;%计算所需h(n)长度N0,ceil取大于等于%

wc=[(wpl+wsl)/2/pi,(wpu+wsu)/2/pi];%计算理想带通滤波器截止频率%

ap=1;as=40;

dp=1-10^(-ap/20);

ds=10^(-as/20);

fenzi=-20*log10(sqrt(dp*ds))-13;

fenmu=14.6*B/2/pi;

N=ceil(fenzi/fenmu);

n=0:N;

hn=fir1(N,wc,bartlett(N+1));%调用firl计算带通FIR数字滤波器的h(n)% [H,w]=freqz(hn,1,1024);%计算频率响应函数h(n)%

figure(1);

magH=20*log10(abs(H)/max(abs(H)));%计算幅度%

subplot(3,1,1);stem(n,hn,'.');

xlabel('n');

ylabel('h(n)');

title('巴特莱特窗FIR数字带通滤波器的单位脉冲响应');

subplot(3,1,2);plot(w/pi*Fs/2,magH);%绘制幅度特性%

title('巴特莱特窗FIR数字带通滤波器的幅度特性');

xlabel('频率/Hz');

ylabel('20lg|Hg(e^j^\omega)|/max(|Hg(e^j^\omega)|)');

grid on;

subplot(3,1,3);plot(w/pi*Fs/2,unwrap(angle(H)));%频率响应相位%

title('巴特莱特窗FIR数字带通滤波器的相位特性');

xlabel('频率/Hz');

ylabel('相位/rad');

grid on;

figure(2);

zplane(hn,1);;%绘制零极点图%

title('巴特莱特窗FIR数字带通滤波器系统函数的零极点图');

legend('零点','极点');

grid on;

n=0:1023;

dt=1/10000;t=n*dt;

f1=450;f2=600;

x=sin(2*pi*f1*t)+sin(2*pi*f2*t);

x1=sin(2*pi*f1*t);

x2=sin(2*pi*f2*t);

y=filter(hn,1,x);

figure(3);

subplot(3,1,1);plot(x);

title('输入信号x(t)');

xlabel('t/s');

ylabel('x(t)');

grid on;

axis([0,50*pi,-2,2]);

subplot(3,1,2);plot(x1);grid on; title('输入信号x1(t)');

xlabel('t/s');

ylabel('x1(t)');

axis([0,50*pi,-2,2]);

subplot(3,1,3);plot(x2);grid on; title('输入信号x2(t)');

xlabel('t/s');

ylabel('x2(t)');

axis([0,50*pi,-2,2]);

figure(4)

plot(y);grid on;

title('输出信号y(t)');

xlabel('t/s');

ylabel('y(t)');

axis([0,50*pi,min(y),max(y)]);

%频谱图

fs=2000;N=1024;

n=0:N-1;t=n/fs;

f1=450;f2=600;

x=sin(2*pi*f1*t)+sin(2*pi*f2*t) y=filter(hn,1,x);

Y1=fft(x,N);

Y2=fft(y,N)

mag1=abs(Y1);mag2=abs(Y2);

f=n*fs/N;

figure(5)

subplot(2,1,1);

plot(f(1:N/2),mag1(1:N/2));

title('输入信号的频谱图');

xlabel('频率/HZ');ylabel('振幅');

grid on;

subplot(2,1,2);

plot(f(1:N/2),mag2(1:N/2));

title('输出信号的频谱图');

xlabel('频率/HZ');ylabel('振幅');

grid on;

五仿真结果图

巴特莱特窗FIR数字带通滤波器的单位脉冲响应,幅度特性及相位特性

巴特莱特窗FIR数字带通滤波器系统函数的零极点图

输入信号x1(t),x2(t)及和信号x(t)

输出信号y(t)

输入信号的频谱图及输出信号的频谱图

六参考资料

[1] 胡广书. 数字信号处理—理论、算法与实现[M]. 北京: 清华大学出版社,

1997.

[2] R. Lyons. Understanding Digital Signal Processing [M]. 2nd ed.

Prentice Hall PTR., 2004.

[3] A.V.奥本海姆, R.W.谢弗 and J.R.巴克. 离散时间信号处理[M]. 第二版.

西安交通大学出版社, 2001.

[4] S. K. Mitra. Digital Signal Processing: A Computer-Based Approach[M].

3rd ed. McGraw-Hill, 2005.

[5] 程佩青,《数字信号处理教程》,清华大学出版社,2001

[6] 郭仕剑,《MATLAB 7.x数字信号处理》,人民邮电出版社,2006

[7] 陈怀琛,数字信号处理教程——MATLAB释义与实现,电子工业出版社,2004

七设计心得

通过本次课程设计,不仅加深了对理论知识的了解,巩固了课堂上所学的理论知识,而且还增加了自己的动手能力,并且理解与掌握数字信号处理中的基本概念、基本原理、基本分析方法。与其他高级语言的程序设计相比,MATLAB环境下可以更方便、快捷,节省大量的编程时间,提高编程效率,且参数的修改也十分方便,还可以进一步进行优化设计。相信随着版本的不断提高,MATLAB在数字滤波器技术中必将发挥更大的作用。

通过图形我们可以清楚的看出滤波器的特性和功能。另外通过滤波器的零极点,我们还可以知道滤波器的传输特性。本次实验结果较好地反映出了用巴特莱特窗函数法设计数字FIR带通滤波器的特性,也基本上达到了课程设计的要求和初衷。深刻的感知到MATLAB的强大。这样的好工具应该好好利用起来,多掌握一些相关的知识,在以后的学习工作中兴许用得到。很感谢能有这么一次锻炼的机会,让我看到自己这么多的不足,发现很多有价值的东西,培养了我如何去学习和掌握新知识的能力,这对以后的学习和工作都有很大的帮助。

信息科学与工程学院课程设计成绩评价表

课程名称:数字信号处理课程设计

设计题目:用巴特莱特窗函数法设计数字FIR带通滤波器

实验六、用窗函数法设计FIR滤波器

实验六 用窗函数法设计 FIR 滤波器 一、实验目的 (1) 掌握用窗函数法设计FIR 数字滤波器的原理和方法。 (2) 熟悉线性相位FIR 数字滤波器特性。 (3) 了解各种窗函数对滤波特性的影响。 二、实验原理 滤波器的理想频率响应函数为H d (e j ω ),则其对应的单位脉冲响应为: h d (n) = ?-π π ωωωπ d e e H n j j d )(21 窗函数设计法的基本原理是用有限长单位脉冲响应序列h(n)逼h d (n)。由于h d (n)往往是无 限长序列,且是非因果的,所以用窗函数。w(n)将h d (n)截断,并进行加权处理: h(n) = h d (n) w(n) h(n)就作为实际设计的FIR 数字滤波器的单位脉冲响应序列,其频率响应函数H(e j ω )为: H(e j ω ) = ∑-=-1 )(N n n j e n h ω 如果要求线性相位特性,则h (n )还必须满足: )1()(n N h n h --±= 可根据具体情况选择h(n)的长度及对称性。 用窗函数法设计的滤波器性能取决于窗函数w(n)的类型及窗口长度N 的取值。设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N 。 三、实验步骤 1. 写出理想低通滤波器的传输函数和单位脉冲响应。 2. 写出用四种窗函数设计的滤波器的单位脉冲响应。 3. 用窗函数法设计一个线性相位FIR 低通滤波器,用理想低通滤波器作为逼近滤波器,截止频率ωc =π/4 rad ,选择窗函数的长度N =15,33两种情况。要求在两种窗口长度下,分别求出h(n),打印出相应的幅频特性和相频特性曲线,观察3dB 带宽和阻带衰减; 4 用其它窗函数(汉宁窗(升余弦窗)、哈明窗(改进的升余弦窗)、布莱克曼窗) 设计该滤波器,要求同1;比较四种窗函数对滤波器特性的影响。 四、实验用MATLAB 函数 可以调用MATLAB 工具箱函数fir1实现本实验所要求的线性相位FIR-DF 的设计,调用一维快速傅立叶变换函数fft 来计算滤波器的频率响应函数。

FIR数字滤波器设计函数

FIR 数字滤波器设计函数 1. fir1 功能:基于窗函数的FIR 数字滤波器设计——标准频率响应。 格式:b=fir1(n,Wn) b=fir1(n,Wn,'ftype') b=fir1(n,Wn,Window) b=fir1(n,Wn,'ftype',Window) 说明:fir1函数以经典方法实现加窗线性相位FIR 滤波器设计,它可设计出标准的低通、带通、高通和带阻滤波器。 b=fir1(n,Wn)可得到n 阶低通FIR 滤波器,滤波器系数包含在b 中,这可表示成: n z n b z b b z b --++???++=)1()2()1()(1 这是一个截止频率为Wn 的Hamming(汉明)加窗线性相位滤波器,0≤Wn ≤1,Wn=1相应于0.5fs 。 当Wn=[W1 W2]时,fir1函数可得到带通滤波器,其通带为W1<ω< W2。 b=fir1(n,Wn,'ftype')可设计高通和带阻滤波器,由ftype 决定: ·当ftype=high 时,设计高通FIR 滤波器; ·当ftype=stop 时,设计带阻FIR 滤波器。 在设计高通和带阻滤波器时,fir1函数总是使用阶为偶数的结构,因此当输入的阶次为奇数时,fir1函数会自动加1。这是因为对奇数阶的滤波器,其在Nyquist 频率处的频率响应为零,因此不适合于构成高通和带阻滤波器。 b=fir1(n,Wn,Window)则利用列矢量Window 中指定的窗函数进行滤波器设计,Window 长度为n+1。如果不指定Window 参数,则fir1函数采用Hamming 窗。 Blackman 布莱克曼窗 Boxcar 矩形窗 Hamming 海明窗 Hann 汉宁窗 Kaiser 凯瑟窗 Triang 三角窗 b=fir1(n,Wn,'ftype',Window)可利用ftype 和Window 参数,设计各种加窗的滤波器。 由fir1函数设计的FIR 滤波器的群延迟为n/2。 例如: n=32;wn=1/4;window=boxcar(n+1) b=fir1(n,wn,window)

基于DSP 的FIR滤波器的设计

基于TMS320VC5416 的FIR 数字滤波器设计与实现 论文摘要:在现代电子系统中,数字滤波器在语音处理、图像处理、模式识别以及各种随机信号分析中有着广泛的应用,且其波形传递系统中都越来越多的要求信道具有线性的相位特性,在这方面FIR滤波器具有独到的优点,它可以在幅度特性随意设计的同时保证精确严格的线性相位。本文以窗函数法设计线性相位FIR数字滤波器为例,研究有限冲击响应(FIR)滤波器的基本原理,介绍用MATLAB工具软件设计数字滤波器的方法和如何在定点TMS320VC5416 DSP芯片上设计实现连续数字滤波器。 关键词:FIR滤波器,TMS320V5416 一. 课题的目的以及意义 随着集成电路技术的发展,各种新型的大规模和超大规模集成电路不断涌现集成电路技术与计算机技术结合在一起,使得对数字信号处理系统功能的要求越来越强。 DSP 技术就是基于VLSI技术和计算机技术发展起来的一门重要技术,DSP 技术已在通信、控制信号处理、仪器仪表、医疗、家电等很多领域得到了越来越广泛的应用.在数字信号处理中数字滤波占有极其重要的地位。数字滤波在语音信号、图象处理模式识别和谱分析等领域中的一个基本的处理技术。数字滤波与模拟滤波相比数字滤波具有很多突出的优点,主要是因为数字滤波器是过滤时间离散信号的数字系统,它可以用软件(计算机程序)或用硬件来实现,而且在两种情况下都可以用来过滤实时信号或

非实时信号。尽管数字滤波器这个名称一直到六十年代中期才出现,但是随着科学技术的发展及计算机的更新普及,数字滤波器有着很好的发展前景。同时它也有完全取代模拟滤波器的时候,原因是数字滤波没有漂移,它能处理低频信号,数字滤波的频率响应特征可做成极接近于理想的特性,它可以做成没有插入损耗和有线性相位特性,可相当简单地获得自适应滤波,滤波器的设计者可以控制数字字长,因而可以精确地控制滤波器的精度,其中的道理是数字滤波随着滤波器参数的改变,很容易改变滤波器的性能。这一特点就能允许我们用一种程序滤波器来完成多重滤波任务。滤波器对幅度和相位特性的严格要求,可以避免模拟滤波器所无法克服的电压漂移、温度漂移和噪声等问题。用可编程DSP芯片实现数字滤波可通过修改滤波器的参数十分方便地改变滤波器的特性,因此我们有必要对滤波器的设计方法进行研究,理解其工作原理优化设计方法,设计开发稳定性好的滤波器系统。我们将通过DSP设计平台来实现较为重要的“FIR和自适应滤波器系统”并实现了它们的应用系统以TMS320VC5416芯片为核心的硬件电路,实现能独立完成滤波功能的系统从而通过本课题的研究。掌握滤波器的设计技术和原理能为在通信领域、信号处理领域等诸多领域中对数字滤波器的设计提供技术和准备。本科题的研究将为今后设计以DSP为核心部件的嵌入式系统集成提供技术准备,这不仅具有重要的理论意义同时还具有重要的现实意义。 二、FIR滤波器的DSP实现的技术指标及性能

fir低通滤波器设计(完整版)

电子科技大学信息与软件工程学院学院标准实验报告 (实验)课程名称数字信号处理 电子科技大学教务处制表

电 子 科 技 大 学 实 验 报 告 学生姓名: 学 号: 指导教师: 实验地点: 实验时间:14-18 一、实验室名称:计算机学院机房 二、实验项目名称:fir 低通滤波器的设计 三、实验学时: 四、实验原理: 1. FIR 滤波器 FIR 滤波器是指在有限范围内系统的单位脉冲响应h[k]仅有非零值的滤波器。M 阶FIR 滤波器的系统函数H(z)为 ()[]M k k H z h k z -==∑ 其中H(z)是k z -的M 阶多项式,在有限的z 平面内H(z)有M 个零点,在z 平面原点z=0有M 个极点. FIR 滤波器的频率响应 ()j H e Ω 为 0 ()[]M j jk k H e h k e Ω -Ω ==∑ 它的另外一种表示方法为 () ()()j j j H e H e e φΩΩΩ=

其中 () j H e Ω和()φΩ分别为系统的幅度响应和相位响应。 若系统的相位响应()φΩ满足下面的条件 ()φαΩ=-Ω 即系统的群延迟是一个与Ω没有关系的常数α,称为系统H(z)具有严格线性相位。由于严格线性相位条件在数学层面上处理起来较为困难,因此在FIR 滤波器设计中一般使用广义线性相位。 如果一个离散系统的频率响应 ()j H e Ω 可以表示为 ()()()j j H e A e αβΩ-Ω+=Ω 其中α和β是与Ω无关联的常数,()A Ω是可正可负的实函数,则称系统是广义线性相位的。 如果M 阶FIR 滤波器的单位脉冲响应h[k]是实数,则可以证明系统是线性相位的充要条件为 [][]h k h M k =±- 当h[k]满足h[k]=h[M-k],称h[k]偶对称。当h[k]满足h[k]=-h[M-k],称h[k]奇对称。按阶数h[k]又可分为M 奇数和M 偶数,所以线性相位的FIR 滤波器可以有四种类型。 2. 窗函数法设计FIR 滤波器 窗函数设计法又称为傅里叶级数法。这种方法首先给出()j d H e Ω, ()j d H e Ω 表示要逼近的理想滤波器的频率响应,则由IDTFT 可得出滤波器的单位脉冲响应为 1 []()2j jk d d h k H e e d π π π ΩΩ-= Ω ? 由于是理想滤波器,故 []d h k 是无限长序列。但是我们所要设计的FIR 滤波 器,其h[k]是有限长的。为了能用FIR 滤波器近似理想滤波器,需将理想滤波器的无线长单位脉冲响应 []d h k 分别从左右进行截断。 当截断后的单位脉冲响应 []d h k 不是因果系统的时候,可将其右移从而获得因果的FIR 滤波器。

窗函数设计FIR滤波器

1.课题描述......................................................... (1) 2.题目及要求......................................................... (1) 3.设计原理......................................................... (1) 3.1 滤波器的分类......................................................... (1) 3.2 数字滤波器工作原理 (1) 3.3 FIR滤波器的设计指 标 (3) 3.4窗函数设计FIR滤波器的设计原 理 (5) 3.5用窗函数设计滤波器的步 骤 (10) 3.6实验所用MATLAB函数说 数 (11)

4设计容......................................................... (12) 4.1用MATLAB编程实 现 (12) 4.2结果分析......................................................... (15) 5总结......................................................... (17) 6参考文献......................................................... (17)

1.课题描述 数字滤波器是指输入、输出均为数字信号,通过数值运算处理改变输入信号所含频率成分的相对比例,或者滤除某些频率成分的数字器件或程序。因此,数字滤波的概念和模拟滤波相同,只是信号的形成和实现滤波方法不同。正因为数字滤波通过数值运算实现滤波,所以数字滤波处理精度高、稳定、体积小、质量轻、灵活、不存在阻抗匹配问题,可以实验模拟滤波器无法实现的特殊滤波功能。本课题使用MATLAB信号处理箱和运用窗函数的FIR滤波器去除无用信号。2.题目及要求 产生包含三个正弦成分(120hz,80hz,20hz)的信号,设计基于窗函数的FIR滤波器去除120hz,20hz成分,保留80hz信号。通带允许的最大衰减为0.25dB,阻带应达到的最小衰减为20dB。滤波器的采样频率为500Hz。 3.设计原理 3.1滤波器的分类 从功能上可以分为:低通、高通、带通和带阻。 从处理信号分为:经典滤波器和现代滤波器。 从设计方法上分为:切比雪夫和巴特沃斯 从实现方法上分为:FIR和IIR 3.2数字滤波器的工作原理 数字滤波器是一个离散时间系统,输入x(n)是一个时间序列,输出y(n)也是一个时间序列。如数字滤波器的系统函数为H(Z),其脉

FIR数字滤波器设计与使用

实验报告 课程名称:数字信号处理指导老师:刘英成绩:_________________实验名称: FIR数字滤波器设计与使用同组学生姓名:__________ 一、实验目的和要求 设计和应用FIR低通滤波器。掌握FIR数字滤波器的窗函数设计法,了解设计参数(窗型、窗长)的影响。 二、实验内容和步骤 编写MATLAB程序,完成以下工作。 2-1 设计两个FIR低通滤波器,截止频率 C =0.5。 (1)用矩形窗,窗长N=41。得出第一个滤波器的单位抽样响应序列h 1(n)。记下h 1 (n) 的各个抽样值,显示h 1 (n)的图形(用stem(.))。求出该滤波器的频率响应(的N 个抽样)H 1(k),显示|H 1 (k)|的图形(用plot(.))。 (2)用汉明窗,窗长N=41。得出第二个滤波器的单位抽样响应序列h 2(n)。记下h 2 (n) 的各个抽样值,显示h 2(n)的图形。求出滤波器的频率响应H 2 (k),显示|H 2 (k)|的 图形。 (3)由图形,比较h 1(n)与h 2 (n)的差异,|H 1 (k)|与|H 2 (k)|的差异。 2-2 产生长度为200点、均值为零的随机信号序列x(n)(用rand(1,200)0.5)。显示x(n)。 求出并显示其幅度谱|X(k)|,观察特征。 2-3 滤波 (1)将x(n)作为输入,经过第一个滤波器后的输出序列记为y 1(n),其幅度谱记为|Y 1 (k)|。 显示|X(k)|与|Y 1 (k)|,讨论滤波前后信号的频谱特征。 (2)将x(n)作为输入,经过第二个滤波器后的输出序列记为y 2(n),其幅度谱记为|Y 2 (k)|。 比较|Y 1(k)|与|Y 2 (k)|的图形,讨论不同的窗函数设计出的滤波器的滤波效果。 2-4 设计第三个FIR低通滤波器,截止频率 C =0.5。用矩形窗,窗长N=127。用它对x(n)进行滤波。显示输出信号y

dsp滤波要点

数字信号处理 综合设计性实验报告 学院:电子信息工程学院 班级:自动化0706班 电子0701班 指导教师:高海林 学生:张越07213056 陈冠宇07214004 北京交通大学电工电子教学基地 2010年1月20日

利用DSP实现信号滤波 一:实验目的 实现离散信号滤波是DSP的基本功能,本实验中我们尝试实现分别了设计FIR 和IIR滤波器实现低通,高通,带通,带阻四种滤波器对正弦离散信号进行滤波。(1)学会编写滤波程序和输入信号程序。 (2)熟悉CCS集成开发环境,熟悉DSK板的使用。 (3)通过实验比较FIR和IIR在设计上和滤波效果上的区别。 二:FIR滤波器的设计 例:设计一个采样频率Fs为8000Hz,输入信号频率为1000HZ、2500HZ与4000HZ 的合成信号,通过设计FIR滤波器分别实现低通,高通,带通,带阻的滤波功能。 一:实验原理 一个线性位移不变系统的输出序列y(n)和输入序列x(n)之间的关系,应满 足常系数线性差分方程: x(n): 输入序列,y(n): 输出序列,ai、bi : 滤波器系数,N: 滤波器的阶数。在式上式中,若所有的ai 均为0,则得FIR 滤波器的差分方程: 对上式进行z 变换,可得FIR 滤波器的传递函数: FIR 滤波器的结构

FIR 滤波器的单位冲激响应h(n)为有限长序列。 若h(n)为实数,且满足偶对称或奇对称的条件,则FIR 滤波器具有线性相位特性。在数字滤波器中,FIR 滤波器具有如下几个主要特点: ① FIR 滤波器无反馈回路,是一种无条件稳定系统; ② FIR 滤波器可以设计成具有线性相位特性。 本实验程序设计的就是一种偶对称的线性相位滤波器。 程序算法实现采用循环缓冲区法。 二:算法原理: ①在数据存储器中开辟一个N个单元的缓冲区(滑窗),用来存放最新的N个输入样本; ②从最新样本开始取数; ③读完最老样本后,输入最新样本来代替最老样本,而其他数据位置不变; ④用BK 寄存器对缓冲区进行间接寻址,使缓冲区地址首尾相邻。 三:实验程序设计步骤 1.FIR滤波器设计 利用MATLAB中的FDA工具导出正确的参数。 2.产生滤波器输入信号文件 以下是一个产生输入信号的C语言程序,信号是频率为1000Hz、2500Hz和4000Hz 的正弦波合成的波形: #include #include

fir低通滤波器设计报告

滤波器设计原理 本文将介绍数字滤波器的设计基础及用窗函数法设计FIR 滤波器的方法,运用MATLAB 语言实现了低通滤波器的设计以及用CCS软件进行滤波效果的观察。读取语音文件,并加入一定的随机噪声,最后使用窗函数滤波法进行语音滤波,将加噪后的语音文件转换为.dat文件使其能和ccs软件链接,输出个阶段的时域和频域波形。 根据数字滤波器冲激响应函数的时域特性。可将数字滤波器分为两种,即无限长冲激响应( IIR) 滤波器和有限长冲激响应(FIR) 滤波器。IIR 滤波器的特征是具有无限持续时间的冲激响应;FIR 滤波器冲激响应只能延续一定时间。其中FIR 滤波器很容易实现严格的线性相位,使信号经过处理后不产生相位失真,舍入误差小,稳定等优点。能够设计具有优良特性的多带通滤波器、微分器和希尔伯特变换器,所以在数字系统、多媒体系统中获得极其广泛的应用。FIR数字滤波器的设计方法有多种,如窗函数设计法、最优化设计和频率取样法等等。而随着MATLAB软件尤其是MATLAB 的信号处理工具箱和Simulink 仿真工具的不断完善,不仅数字滤波器的计算机辅助设计有了可能而且还可以使设计达到最优化。 FIR滤波器的窗函数法的设计 采用汉明窗设计低通FIR滤波器 使用b=fir1(n,Wn)可得到低通滤波器。其中,0Wn1,Wn=1相当于0.5。其语法格式为 b=fir1(n,Wn); 采用:b=fir1(25, 0.25); 得到归一化系数:

或者在命令行输入fdatool进入滤波器的图形设置界面,如下图所示 得到系数(并没有归一化) const int BL = 26; const int16_T B[26] = { -26, 33, 126, 207, 138, -212, -757, -1096, -652, 950, 3513, 6212, 7948, 7948, 6212, 3513, 950, -652, -1096, -757, -212, 138, 207, 126, 33, -26 }; FIR滤波器的设计(Matlab) 技术指标为:采用25阶低通滤波器,汉明窗(Hamming Window)函数,截止频率为1000Hz,采样频率为8000Hz,增益40db。 下面的程序功能是:读取语音文件,并加入一定的随机噪声,最后使用窗函数滤波法进行语音滤波,将加噪后的语音文件转换为.dat文件使其能和ccs软件链接,输出个阶段的时域和频域波形。

FIR滤波器窗函数设计

课题名称:FIR滤波器窗函数设计

FlR 滤波器窗函数设计 引言: 数字滤波器(DigitalFilter )是指输入、输出都是离散时间信号,通过一定运算 关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的器件。 在许 多数字信号处理系统中,如图像信号处理等,有限冲激响应( FIR )滤波器是最 常用的组件之一,它完成信号预调、频带选择和滤波等功能。 FIR 滤波器虽然在 截止频率的边沿陡峭性能上不及无限冲激响应 (IIR )滤波器,但是却具有严格的 线性相位特性,稳定性好,能设计成多通带(或多阻带)滤波器组,所以能够在 数字信号处理领域得到广泛的应用。 数字滤波器的分类 1) 根据系统响应函数的时间特性分为两类 1. FIR (Finite ImPUISe Response 数字滤波器网络 M y[n] b k x[n k] k0 特点:不存在反馈支路,其单位 冲激响应为有限长 2. IIR ( Infinite ImPUISe Response 数字滤波器网络 特点:存在反馈支路,即信号流图中存在环路,其单位冲激响应为无限长 (2) FIR 数字滤波器IIR 数字滤波器的区别 1. 从性能上来说,IlR 滤波器传递函数包括零点和极点两组可调因素, 对极点的 惟一限制是在单位圆内。因此可用较低的阶数获得高的选择性,所用的存储 单元 少,计算量小,效率高。但是这个高效率是以相位的非线性为代价的。 选择性越好,则相位非线性越严重。FIR 滤波器传递函数的极点固定在原点, 是不能动的,它只能靠改变零点位置来改变它的性能。所以要达到高的选择 性,必须用较高的阶数;对于同样的滤波器设计指标, FIR 滤波器所要求的 阶数可能比IIR 滤波器高5-10倍,但是FIR 滤波器可以得到严格的线性相位。 2. 从结构上看,IIR 滤波器必须采用递归结构,极点位置必须在单位圆内,否则 系统将 不稳定。相反,FIR 滤波器只要采用非递归结构,不论在理论上还是 在实际的有限精度运算中都不存在稳定性问题, 因此造成的频率特性误差也 较小。此外FIR 滤波器可以采用快速傅里叶变换算法, 在相同阶数的条件下, 运算速度可以快得多。 3. 从设计工具看,IIR 滤波器可以借助于模拟滤波器的成果,因此一般都有有效 的圭寸闭形式的设计公式可供准确计算,计算工作量比较小,对计算工具的要 求不高。 hn b n , 0 n M 0, 其他 n y[n] b k x[n k] k0 a k y[n k1 k]

数字滤波器的MATLAB设计与DSP上的实现

数字滤波器的MAT LAB设计与 DSP上的实现 数字滤波器的MATLAB 设计与DSP上的实现 公文易文秘资源网佚名2007-11-15 11:56:42我要投稿添加到百度搜藏 摘要:以窗函数法设计线性相位FIR数字滤波器为例,介绍用MATLAB工具软件设计数字滤波器的方法和在定点DSP上的实现。实现时,先在CCS5000仿真开发,然后将程序加载到TMS320VC5409评估板上实时运行,结果实现了目标要求。文中还讨论了定标、误差、循环寻址等在DSP上实现的关键问题。关键词 摘要:以窗函数法设计线性相位 FIR数字滤波器为例,介绍用 MATLAB工具软件设计数字滤波器的方法和在定点DSP上的实现。实现时,先在 CCS5000仿真开发,然后将程序加载到 TMS320VC5 409评估板上实时运行,结果实现了目标要求。文中还讨论了定标、误差、循环寻址等在DSP上实 现的关键问题。 关键词:数字滤波器MATLAB DSP 引言 随着信息时代和数字世界的到来,数字信号处理已成为今一门极其重要的学科和技术领域。数字信号处理在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应

用。在数字信号处理应用中,数字滤波器十分重要并已获得广泛应用。 1数字滤波器的设计 1.1数字滤波器设计的基本步骤 数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR )滤波器和有限长冲激响应(FIR )滤波器。IIR滤波器的特征是,具有无限持续时间冲激响应。种滤波器一般需要用递归模型来实现,因而有时也称之为递归滤波器。FIR滤波器的冲激响应只能延续一定时间, 在工程实际中可以采用递归的方式实现,也可以采用非递归的方式实现。数字滤波器的设计方法有多种,如双线性变换法、窗函数设计法、插值逼近法和Chebyshev逼近法等等。随着 MATLAB软件尤 其是MATLAB的信号处理工作箱的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。 数字滤波器设计的基本步骤如下: (1确定指标 在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。在很多实际应用中,数字滤波器常常被用来实现选频操作。因此,指标的形式一般在频域中给岀幅度和相位响应。幅度指标主要以两种方式给岀。第一种是绝对指标。它提供对幅度响应函数的要求,一般应用于FI R滤波器的设计。第二种指标是相对指标。它以分贝值的形式给岀要求。在工程实际中,这种指标最受欢迎。对于相位响应指标形式,通常希望系统在通频带中人有线性相位。运用线性相位响应指标进行滤波器设计具有如下优点:①只包含实数算法,不涉及复数运算;②不存在延迟失真,只有固定数量的延迟;③长度为N的滤波器(阶数为N-1),计算量为N/2数量级。因此,本文中滤波器的设计就以线性相位FIR滤波器的设计为例。 (2)逼近

实验四 窗函数法设计FIR数字滤波器

实验四 窗函数法设计FIR 数字滤波器 一、实验目的 1、掌握窗函数法设计FIR 数字滤波器的原理及具体方法。 2、掌握频率取样法设计FIR 数字滤波器的原理和基本方法。 3、学习利用窗函数法和频率取样法设计低通、带通、高通、带阻数字滤波器。 二、实验环境 计算机、MATLAB 软件 三、实验基础理论 窗函数设计FIR 滤波器 1.基本原理 窗函数设计法的基本思想为,首先选择一个适当的理想的滤波器()j d H e ω ,然后 用窗函数截取它的单位脉冲响应(n)d h ,得到线性相位和因果的FIR 滤波器。这种方法的重点是选择一个合适的窗函数和理想滤波器,使设计的滤波器的单位脉冲响应逼近理想滤波器的单位脉冲响应。 2.设计步骤 (1)给定理想滤波器的频率响应()j d H e ω ,在通带上具有单位增益和线性相位, 在阻带上具有零响应。一个带宽为()c c ωωπ<的低通滤波器由下式给定: π ωωωωωωω≤<=≤=-||,0)(,||,)(c j d c ja j d e H e e H 其中α为采样延迟,其作用是为了得到一个因果系统。 (2)确定这个滤波器的单位脉冲响应 ) ()) (sin()(a n a n n h c d --= πω 为了得到一个(n)h 长度为N 的因果的线性相位FIR 滤波器,我们令 2 1 -= N a (3)用窗函数截取(n)d h 得到所设计FIR 数字滤波器:)()()(n R n h n h N d = 3.窗函数的选择 常用的窗函数有矩形(Rectangular )窗,汉宁(Hanning )窗,海明(Hamming )窗、布莱克曼(Blackman )窗、凯瑟(Kaiser )窗等 表4-1 MATLAB 中产生窗函数的命令

FIR数字滤波器设计与软件实现(精)讲解学习

实验二:FIR 数字滤波器设计与软件实现 一、实验指导 1.实验目的 (1掌握用窗函数法设计 FIR 数字滤波器的原理和方法。 (2掌握用等波纹最佳逼近法设计 FIR 数字滤波器的原理和方法。 (3掌握 FIR 滤波器的快速卷积实现原理。 (4学会调用 MA TLAB 函数设计与实现 FIR 滤波器。 2. 实验内容及步骤 (1认真复习第七章中用窗函数法和等波纹最佳逼近法设计 FIR 数字滤波器的原理; (2调用信号产生函数 xtg 产生具有加性噪声的信号 xt ,并自动显示 xt 及其频谱,如图 1所示;

图 1 具有加性噪声的信号 x(t及其频谱如图 (3请设计低通滤波器,从高频噪声中提取 xt 中的单频调幅信号,要求信号幅频失真小于 0.1dB ,将噪声频谱衰减 60dB 。先观察 xt 的频谱,确定滤波器指标参数。 (4根据滤波器指标选择合适的窗函数,计算窗函数的长度 N ,调用 MATLAB 函数 fir1设计一个 FIR 低通滤波器。并编写程序,调用 MATLAB 快速卷积函数 fftfilt 实现对 xt 的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。 (5 重复 (3 , 滤波器指标不变, 但改用等波纹最佳逼近法, 调用MA TLAB 函数 remezord 和 remez 设计 FIR 数字滤波器。并比较两种设计方法设计的滤波器阶数。 提示:○ 1MA TLAB 函数 fir1的功能及其调用格式请查阅教材; ○ 2采样频率 Fs=1000Hz,采样周期 T=1/Fs;

○ 3根据图 1(b和实验要求,可选择滤波器指标参数:通带截止频率 fp=120Hz,阻带截 至频率 fs=150Hz, 换算成数字频率, 通带截止频率 p 20.24 p f ωπ =T=π, 通带最大衰为 0.1dB , 阻带截至频率 s 20.3 s f ωπ =T=π,阻带最小衰为 60dB 。 3、实验程序框图如图 2所示,供读者参考。 图 2 实验程序框图 4.信号产生函数 xtg 程序清单(见教材 二、滤波器参数及实验程序清单 1、滤波器参数选取 根据实验指导的提示③选择滤波器指标参数: 通带截止频率 fp=120Hz,阻带截至频率 fs=150Hz。代入采样频率 Fs=1000Hz,换算成 数字频率,通带截止频率 p 20.24 p f

DSP的FIR设计(低通滤波)C语言编写

一、设计目的 低通滤波器设计。 本设计中使用的信号为 信息信号: signal=sin(2*pi*sl*n*T) 高频噪声1:noise1=0.7*sin(2*pi*ns1*n*T) 高频噪声2:noise2=0.4*sin(2*pi*ns2*n*T) 混合信号: x=(signal+noise1+noise2) 其中sl=500Hz ,ns1=3000Hz ,ns2=8000Hz ,T=1/20000。混合信号波形为滤波器输入信号波形,信息信号波形为输出信号波形,滤波器的效果为滤除两个高频噪声。 二、FIR 滤波器基本理论 (1)FIR 滤波器的特点 数字滤波器的功能,就是把输入序列通过一定的运算变换成输出序列。它的实现方法有很多,其中比较常用到的是无限长脉冲响应滤波器 IIR 和有限长脉冲响应滤波器FIR 两种。 在计算量相等的情况下,IIR 数字滤波器比FIR 滤波器的幅频特性优越,频率选择性也好。但是,它有着致命的缺点,其相位特性不好控制。它的相位特性 )argH( )f(ω ωj e =是使频率产生严重的非线性的原因。但是在图像处理、数据传 输等波形传递系统中都越来越多的要求信道具有线性的相位特性。在这方面 FIR 滤波器具有它独特的优点,设FIR 滤波器单位脉冲响应h(n)长度为N ,其系统函数H(z)为 ∑-=-= 1 )()(N n n z n h z H H(z)是1 -z 的(N-1)次多项式,它在z 平面上有(N-1)个零点,原点z=0是(N-1)阶重极点。因此,H(z)永远稳定,它可以在幅度特性随意设计的同时,保证精确、严格的线性相位。 (2)FIR 滤波器的基本结构 数字滤波是将输入的信号序列,按规定的算法进行处理,从而得到所期望的输出序列,FIR 滤波器的差分方程为: ∑-=-= 1 )()(N k k k n x a n y 对上式进行Z 变换得到FIR 滤波器的传递函数为: ()() () ∑-=-= = 1 N i k k z b z X z Y z H

用窗函数法设计FIR数字滤波器

用窗函数法设计FIR 数字滤波器 一、实验目的 1.掌握用窗函数法设计FIR 数字滤波器的原理和方法。 2.熟悉线性相位FIR 数字滤波器特征。 3.了解各种窗函数对滤波特性的影响。 二、实验仪器 微型计算机 matlab 软件 三、实验原理和方法 如果所希望的滤波器的理想频率响应函数为 )(ωj d e H ,则其对应的单位脉冲响应为 )(n h d =π21 ωωωππd e e H j j d )(?- (2-1) 窗函数设计法的基本原理是用有限长单位脉冲响应序列)(n h 逼近)(n h d 。由于)(n h d 往往是无限长序列,且是非因果的,所以用窗函数)(n ω将)(n h d 截断,并进行加权处理,得到: )(n h =)(n h d )(n ω (2-2) )(n h 就作为实际设计的FIR 数字滤波器的单位脉冲响应序列, 其频率响应函数)(ωj d e H 为: )(ωj d e H =∑-=-1 0)(N n j e n h ω (2-3) 式中,N 为所选窗函数)(n ω的长度。 由第七章可知,用窗函数法设计的滤波器性能取决于窗函数)(n ω的类型及窗口长度N 的取值。设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N 。各种类型的窗函数可达到的阻带最小衰减和过渡带宽度见第七章。 这样选定窗函数类型和长度N 后,求出单位脉冲响应)(n h =)(n h d ·)(n ω,并按式(2-3)求出)(ωj e H 。)(ωj e H 是否满足要求,要进行验算。一般在)(n h 尾部加零使长度满足于2的整数次幂,以便用FFT 计算)(ωj e H 。如果要观察细节,补零点数增多即可。如果)(ωj e H 不满足要求,则要重新选择窗函数类型和长度N ,再次验算,直至满足要求。 如果要求线性相位特性,则)(n h 还必须满足 )1()(n N h n h --±= (2-4) 根据上式中的正负号和长度N 的奇偶性又将线性相位FIR 滤波器分成四类。要根据设计的滤波特性正确选择其中一类。例如,要设计线性低通特征,可选择)1()(n N h n h --=一类,而不能选)1()(n N h n h ---=一类。 四、实验内容

FIR数字滤波器设计及MATLAB使用要点

数字信号处理课程设计 《数字信号处理》 课程设计报告 FIR数字滤波器设计及MATLAB实现 专业:通信工程 班级:通信1101班 组次:第9组 姓名及学号: 姓名及学号:

目录 一、设计目的 (3) 二、设计任务 (3) 三、设计原理 (3) 3.1窗函数法 (3) 3.2频率采样法 (4) 3.3最优化设计 (5) 3.3.1等波纹切比雪夫逼近准则 (5) 3.3.2仿真函数 (6) 四、设计过程 (7) 五、收获与体会 (13) 参考文献 (13)

FIR数字滤波器设计及MATLAB实现 一、设计目的 FIR滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基 本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性, 同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR 滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。滤波器设 计是根据给定滤波器的频率特性,求得满足该特性的传输函数。 二、设计任务 FIR滤波器设计的任务是选择有限长度的() H e满足一定 h n,使传输函数()jw 的幅度特性和线性相位要求。由于FIR滤波器很容易实现严格的线性相位,所以FIR 数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。 设计过程一般包括以下三个基本问题: (1)根据实际要求确定数字滤波器性能指标; (2)用一个因果稳定的系统函数去逼近这个理想性能指标; (3)用一个有限精度的运算去实现这个传输函数。 三、设计原理 FIR滤波器设计的任务是选择有限长度的() H e满足一定 h n,使传输函数()jw 的幅度特性和线性相位要求。由于FIR滤波器很容易实现严格的线性相位,所以FIR数字滤波器设计的核心思想是求出有限的脉冲响应来逼近给定的频率响应。 设计过程一般包括以下三个基本问题: (1)根据实际要求确定数字滤波器性能指标; (2)用一个因果稳定的系统函数去逼近这个理想性能指标; (3)用一个有限精度的运算去实现这个传输函数。 3.1窗函数法 设计FIR数字滤波器的最简单的方法是窗函数法,通常也称之为傅立叶级数法。FIR数字滤波器的设计首先给出要求的理想滤波器的频率响应()jw H e,设计 d

DSP高通滤波器课程设计报告

D S P课程设计报告 题目:FIR高通滤波器设计 姓名 学号 教学院系 专业年级 指导教师

DSP课程设计 目录 一、设计题目 (1) 二、设计目标 (1) 三、算法研究与参数计算 (1) 1、FIR的原理和参数生成公式 (1) 2、利用MATLAB计算滤波系数 (1) 3、输入信号参数计算 (2) 四、编写源程序 (3) 五、调试过程 (4) 1、调试前准备 (5) 2、MATLAB的使用 (5) 3、编写及编译程序 (5) 4、设置断点和探针 (6) 5、打开观察窗口 (6) 六、实验结果及分析 (6) 1、输入信号的时域波形和频域波形 (6) 2、输出信号的时域波形和频域波形 (7) 七、设计心得 (8)

1 一、设计题目 FIR 高通滤波器设计 二、设计目标 设计一个FIR 高通滤波器,通带边界频率为6000Hz ,采样频率为20000Hz 。FIR 滤波器的设计用MA TLAB 窗函数法进行。 三、算法研究与参数计算 1、FIR 的原理和参数生成公式 图3-1 2、利用MATLAB 计算滤波系数 在MATLAB 界面输入图3-2所示程序,可得到滤波系数并生成INC 文件。 图 3-2

DSP 课程设计 2 输入freqz (y ,1,512),MATLAB 中显示高通滤波器的滤波特性曲线。如图3-3所示。 图3-3 3、输入信号参数计算 MATLAB 中输入图3-4中所示程序,包含两种频率成分的正弦信号,一种信号频率1000Hz ,一种信号6000Hz 。 图3-4 其频谱特性曲线如图3-5。 图3-5

FIR高通滤波器设计 四、编写源程序 参考资料,编写汇编语言源程序: HIGHPASS .set 1 ;if you want to use ,please set the value to 1 .global start,fir .mmregs COFF_FIR_START: .sect "coff_fir" .copy "0126.inc" K_FIR_BFFR .set 64 d_data_buffer .usect "fir_bfr",64 FIR_DP .usect "fir_vars",0 d_filin .usect "fir_vars",1 output .usect "fir_vars",1 input .usect "fir_vars",1 d_filout .usect "fir_vars",100h stacksize .set 256 stack .usect "fir_vars",stacksize .asg AR4,FIR_DATA_P .asg AR6,INBUF_P .asg AR7,OUTBUF_P .asg AR3,OUTBUF .asg AR2,INBUF .sect "fir_prog" nop start: stm #stack+stacksize,SP LD #FIR_DP,DP STM #d_data_buffer,FIR_DATA_P RPTZ A,#K_FIR_BFFR-1 STL A,*FIR_DATA_P+ STM #d_filin,INBUF_P 3

基于matlab的FIR低通高通带通带阻滤波器设计

基于matlab的FIR低通-高通-带通-带阻滤波器设计

————————————————————————————————作者:————————————————————————————————日期:

北京师范大学 课程设计报告 课程名称: DSP 设计名称:FIR 低通、高通带通和带阻数字滤波器的设计姓名: 学号: 班级: 指导教师: 起止日期: 课程设计任务书

学生班级: 学生姓名: 学号: 设计名称: FIR 低通、高通带通和带阻数字滤波器的设计 起止日期: 指导教师: 设计目标: 1、采用Kaiser 窗设计一个低通FIR 滤波器 要求: 采样频率为8kHz ; 通带:0Hz~1kHz ,带内波动小于5%; 阻带:1.5kHz ,带内最小衰减:Rs=40dB 。 2、采用hamming 窗设计一个高通FIR 滤波器 要求: 通带截至频率wp=rad π6.0, 阻带截止频率ws=rad π4.0, 通带最大衰减dB p 25.0=α,阻带最小衰减dB s 50=α 3、采用hamming 设计一个带通滤波器 低端阻带截止频率 wls = 0.2*pi ; 低端通带截止频率 wlp = 0.35*pi ; 高端通带截止频率 whp = 0.65*pi ; 高端阻带截止频率 whs = 0.8*pi ; 4、采用Hamming 窗设计一个带阻FIR 滤波器 要求: 通带:0.35pi~0.65pi ,带内最小衰减Rs=50dB ; 阻带:0~0.2pi 和0.8pi~pi ,带内最大衰减:Rp=1dB 。

FIR 低通、高通带通和带阻数字滤波器的设计 一、 设计目的和意义 1、熟练掌握使用窗函数的设计滤波器的方法,学会设计低通、带通、带阻滤波器。 2、通过对滤波器的设计,了解几种窗函数的性能,学会针对不同的指标选择不同的窗函数。 二、 设计原理 一般,设计线性相位FIR 数字滤波器采用窗函数法或频率抽样法,本设计采用窗函数法,分别采用海明窗和凯泽窗设计带通、带阻和低通。 如果所希望的滤波器的理想频率响应函数为)(jw d e H ,如理想的低通,由信号系统的知识知道,在时域系统的冲击响应h d (n)将是无限长的,如图2、图3所示。 H d (w) -w c w c 图2 图3 若时域响应是无限长的,则不可能实现,因此需要对其截断,即设计一个FIR 滤波器频率响应∑-=-=1 0)()(N n jwn jw e n h e H 来逼近)(jw d e H ,即用一个窗函数w(n)来 截断h d (n),如式3所示: )()()(n w n h n h d = (式1)。 最简单的截断方法是矩形窗,实际操作中,直接取h d (n)的主要数据即可。 )(n h 作为实际设计的FIR 数字滤波器的单位脉冲响应序列,其频率响应函数为: ∑-=-=1 0)()(N n jwn jw e n h e H (式2) 令jw e z =,则 ∑-=-=1 0)()(N n n z n h z H (式3), 式中,N 为所选窗函数)(n w 的长度。

窗函数法设计FIR数字滤波器

数字信号处理实验报告 ---实验4窗函数法设计FIR数字滤波器 一、实验目的 1.了解常用的几种窗函数,能正确选择适当的窗函数进行滤波器设计; 2.掌握窗函数法设计数字低通滤波器。 二、实验原理 1.常用的窗函数: 矩形窗函数为boxcar和rectwin,调用格式: w= boxcar(N) w= rectwin(N) 其中N是窗函数的长度,返回值w是一个N阶的向量。 三角窗函数为triang,调用格式: w= triang(N) 汉宁窗函数为hann,调用格式: w= hann(N) 海明窗函数为hamming,调用格式: w= hamming(N) 2.各个窗函数的性能比较

三、实验内容 题一:生成四种窗函数:矩形窗、三角窗、汉宁窗、海明窗,并观察其频率响应。 题二:根据下列技术指标,设计一个FIR数字低通滤波器:wp=0.2π,ws=0.4π,ap=0.25dB, as=50dB,选择一个适当的窗函数,确定单位冲激响应,绘出所设计的滤波器的幅度响应。 四、上机程序及运行结果 题一:n=30; %矩形窗及其频响 window1=rectwin(n); [h1,w1]=freqz(window1,1); subplot(4,2,1); stem(window1);title('矩形窗');subplot(4,2,2); plot(w1/pi,20*log(abs(h1))/abs(h1(1)));title('矩形窗频响'); %三角窗及其频响 window2=triang(n); [h2,w2]=freqz(window2,1); subplot(4,2,3);stem(window2);title('三角窗'); subplot(4,2,4); plot(w2/pi,20*log(abs(h2))/abs(h2(1)));title('三角窗频响'); %汉宁窗及其频响 window3=hann(n); [h3,w3]=freqz(window3,1); subplot(4,2,5);stem(window3);title('汉宁窗'); subplot(4,2,6); plot(w3/pi,20*log(abs(h3))/abs(h3(1)));title('汉宁窗频响'); %海明窗频响 window4=hamming(n);

相关文档
相关文档 最新文档