前言
“数字信号处理”是一门理论和实践密切结合的课程,为了深入地掌 握课程内容,应当在学习理论的同时,作习题和上机实验。上机实验不仅 可以帮助读者深入地理解和消化基本理论,而且能锻炼初学者的独立解决 问题的能力。本课程根据课程重点编写了五bs(F_1024));
set(gca,'xtick',[0,,,,,,,,1]) hold on;
k=0:1:31;
f=cos(pi/4*k)+*cos(3*pi/8*k);
F_1024=2*abs(fft(f,1024))/32;
L=0:1023;
subplot(414);plot(L/1024,abs(F_1024));
set(gca,'xtick',[0,,,,,,,,1]) hold on;
运行该程序,结果显示如下:
四、实验内容与步骤:
1. 将例题程序输入计算机,运行并对各图中的波形形状进行解释,并 说明理由。
2. 修改用 FFT 进行谱分析的程序,将采样点数增加为32(截取 2 个 周期)个,重新用FFT进行谱分析。
修改用 FFT 进行谱分析的程序,将采样点数增加为64(截取 4 个 周期)个,重新用 FFT 进行谱分析。
实验二 用脉冲响应不变法设计 IIR 数字滤波器
一、实验目的:
了解巴特沃思模拟低通滤波器、切比雪夫I型、II型模拟低通滤 波器函数的使用方法;
(2)学习脉冲响应不变法设计IIR数字滤波器的设计方法。
二、 实验设备:计算机,MATLAB软件。
三、 实验原理:
MATLAB提供了设计巴特沃思模拟低通滤波器、切比雪夫I型、II型模 拟低通滤波器、椭圆模拟低通滤波器的函数,调用格式为
[z,p,k]=buttap(n)
[z,p,k]=cheb1ap(n,Rp)
[z,p,k]=cheb2ap(n,Rs)
[z,p,k]=ellipap(n,Rp,Rs)
其中,n为滤波器的阶次;z、p、k分别为滤波器传递函数的零点、极 点和增益; Rp 为通带波纹, Rs 为阻带衰减。
MATLAB 还提供了模拟滤波器的频率变换函数,可以借助模拟低通滤波 器的系统函数,经过适当的频率变换,得到高通、带通、带阻滤波器的系 统函数。调用格式为
(1)低通到低通的变换
[bt,at]=lp2lp(b,a,wp)
[At,Bt,Ct,Dt]=lp2lp(A,B,C,D,wp)
低通到高通的变换
[bt,at]=lp2hp(b,a,wp)
[At,Bt,Ct,Dt]=lp2hp(A,B,C,D,wp)
3)低通到带通的变换
[bt,at]=lp2bp(b,a,w0,Bw)
[At,Bt,Ct,Dt]=lp2bp(A,B,C,D,w0,Bw) (4)低通到带阻的变换
[bt,at]=lp2bs(b,a, w0,Bw) [At,Bt,Ct,Dt]=lp2bs(A,B,C,D, w0,Bw)
其中,b、a和bt、at分别为变换前和变换后的系统函数的分子和分 母系数向量;第二种格式是系统状态空间形式。wp为通带频率,w0为中心 频率,Bw为带宽。
冲激响应不变法设计IIR数字滤波器
MATLAB 提供了使用脉冲响应不变法设计 IIR 数字滤波器的函数 impinvar(),调用格式为
[bz,az]=impinvar(b,a,fs)
[bz,az]=impinvar(b,a,fs,tol)
将模拟滤波器(b,a)变换成数字滤波器(bz,az)。其中,fs表示采 样频率,单位为Hz,默认值为1。Tol表示区分多重极点的程度,默认值 为 %。
MATLAB提供了 freqz()函数可方便地绘制出系统的频率特性,调用格 式为
freqz(b,a)
[h,w]=freqz(b,a,n)
[h,f]=freqz(b,a,n,Fs)
h=freqz(b,a,w) h=freqz(b,a,f,Fs)
[h,w]=freqz(b,a,n, 'whole')
[h,f]=freqz(b,a,n,'whole',Fs)
其中,b、a分别为系统函数的分子、分母系数向量;n为频率的计算 点数,常取2的整数次幕;横坐标为数字角频率e,范围为0到n。
[h,w]= freqz(b,a,n)自动设定n个频率点来计算频率特性h, n个频 率点均匀地分布在0到n,这n个频率值记录在w中。
[h,f]二freqz(b,a,n,Fs)自动设定n个频率点来计算频率特性h, n个频率点均匀地分布在0~Fs/2中,这n个频率值记录在w中。
[h,w]=freqz(b,
三、实验原理 离散傅里叶变换 来自淘豆网m.daumloan.com转载请标明出处.