数字信号处理实验报告
基础实验篇
实验一 离散时间系统及离散卷积
一、实验原理
利用Matlab软件计算出系统函数的零极点分布、单位脉冲响应和系统
频率响应等的图像并于笔算结果进行比较,找出异同。编译合适程序能计
算取值范围不同的离散卷积。
二、实验目的
(1)熟悉MATLAB软件的使用方法。
(2)熟悉系统函数的零极点分布、单位脉冲响应和系统频率响应等概念。
(3)利用MATLAB绘制系统函数的零极点分布图、系统频率响应和单位脉冲
响应。
三、实验步骤
(1)自编并调试实验程序,并且,给实验程序加注释;
(2)按照实验内容完成笔算结果;
(3)验证计算程序的正确性,记录实验结果。
(4)至少要求一个除参考实例以外的实验结果,在实验报告中,要描述清楚
实验结果对应的系统,并对实验结果进行解释说明。
四、实验源程序及实验结果
实验1-1 运行结果
xlabel ('n');
ylabel ('h (n)');
figure (2)
[z,p,g] tf2zp (b,a);
zplane (z,p)
title ('零极点');
function
[x,n] chongji (n1,n2)
n [n1:n2];
x [n 0];
function shiyan1()
a [1,-1,0.9];
b 1;
x chongji (-20,120);
n -20:120;
h filter (b,a,x);
figure (1)
stem (n,h);
title ('冲击响应');
实验1-2 运行结果
b [0.0181,0.0543,
0.0543,0.0181];
a [1.000,-1.76,
1.1829,-0.2781];
w pi*freqspace (500);
H freqz(b,a,w);
MH abs(H);
AH angle (H);
subplot (2,1,1);
plot (w/pi,MH);
grid;
axis([0,1,0,1]);
xlabel ('w (pi)');
ylabel ('|H |');
title ('幅度、相位响应');
subplot (2,1,2);
plot (w/pi,AH);
grid;
xlabel ('w (pi)');
ylabel ('angle (H)');
实验1-3 运行结果
n 0:30;
%输入x (n)和冲激响应h (n)
x zeros(1,length (n));
h zeros(1,length (n));
x ([find ((n> 0)&(n< 4))]) 1;
h ([find ((n> 0)&(n< 8))]) 0.
5;
figure (1)
subplot (3,1,1);
stem (n,x);
axis([0,30,0,2]);
title ('输入序列');
xlabel ('n');
ylabel ('x (n)');
subplot (3,1,2);
stem (n,h);
axis([0,30,0,2]);
title ('冲激响应序列');
xlabel ('n');
ylabel ('h (n)');
%输出响应
y conv (x,h);
subplot (3,1,3);
n 0:length (y)-1;
stem (n,y);
title ('输出响应');
xlabel ('n');
ylabel ('y (n)');
实验二 离散傅立叶变换与快速傅立叶变换
一、 实验原理
对有限长序列使用离散Fouier变换(DFT)可以很好的反映序列的频谱特性,
而且易于用快速算法在计算机上实现,当序列x(n)的长度为N 时,它的DFT定
义为
N1