西安交通大学数字信号处理实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字信号处理
实
验
报
告
班级:硕
姓名:
学号:
实验1 常见离散信号的MATLAB 产生和图形显示
实验目的:加深对常用离散信号的理解;
实验内容:
(1)单位抽样序列
clc;
x=zeros(1,11); x(1)=1; n=0:1:10;
stem(n,x, 'fill'); title('单位抽样序列'); xlabel('n'); ylabel('x[n]')
延迟5个单位:
clc;
x=zeros(1,11); x(6)=1; n=0:1:10;
stem(n,x, 'fill'); title('单位抽样序列'); xlabel('n'); ylabel('x[n]')
n
x [n ]
(2)单位阶跃序列
clc;
x=[zeros(1,5),ones(1,6)]; n=-5:1:5;
stem(n,x,'fill'); title('单位阶跃序列'); xlabel('n'); ylabel('x[n]');
n
x [n ]
(3)正弦序列
clc; N=50; n=0:1:N-1; A=1; f=1; Fs=50; fai=pi;
x=A*sin(2*pi*f*n/Fs+fai); stem(n,x,'fill'); title('正弦序列'); xlabel('n'); ylabel('x[n]'); axis([0 50 -1 1]);
n
x [n ]
(4)复正弦序列
clc; N=50; n=0:1:N-1; w=2*pi/50; x=exp(j*w*n); subplot(2,1,1); stem(n,real(x)); title('复正弦序列实部'); xlabel('n');
ylabel('real(x[n])'); axis([0 50 -1 1]); subplot(2,1,2); stem(n,imag(x)); title('复正弦序列虚部'); xlabel('n');
ylabel('imag(x[n])'); axis([0 50 -1 1]);
n
x [n ]
(5)指数序列
clc; N=10; n=0:1:N-1; a=0.5; x=a.^n;
stem(n,x,'fill'); title('指数序列'); xlabel('n'); ylabel('x[n]'); axis([0 10 0 1]);
n
r e a l (x [n ])
n
i m a g (x [n ])
(6)复指数序列性质讨论:
0(j )()e
n
x n σω+=
将复指数表示成实部与虚部为
00()e cos j sin n n x n n e n σσωω=+
1.当σ=0时,它的实部和虚部都是正弦序列。
2.当|σ|>1时,它的实部和虚部都是指数增长的正弦序列。
3.当|σ|﹤1时,它的实部和虚部都是指数衰减的正弦序列。
n
x [n ]
实验2 离散系统的差分方程、单位脉冲响应和卷积分析
实验目的:加深对离散系统的差分方程、单位脉冲响应和卷积分析方法的理解。
实验内容:编制程序求解下列两个系统的单位脉冲响应和阶跃响应,并绘出其图形。
(1)[]0.6[1]0.09[2][][1]
+-+-=--
y n y n y n x n x n
clc;
N=30;
n=0:1:N-1;
p=[1 -1];
d=[1 0.6 0.09];
x1=zeros(1,N);
x1(1)=1;
x2=[ones(N)];
y1=filter(p,d,x1);
y2=filter(p,d,x2);
subplot(2,1,1);
stem(n,y1,'fill');
title('单位脉冲响应');
xlabel('n');
ylabel('y1[n]');
subplot(2,1,2);
stem(n,y2,'fill');
title('单位阶跃响应');
xlabel('n');
ylabel('y2[n]');
(2)[]0.2{[1][2][3][4][5]}y n x n x n x n x n x n =-+-+-+-+-
clear;clc; N=20; n=0:1:N-1;
p=[0 0.2 0.2 0.2 0.2 0.2]; d=[1];
x1=[1 zeros(1,N-1)]; x2=[ones(N)]; y1=filter(p,d,x1); y2=filter(p,d,x2); subplot(2,1,1); stem(n,y1);
title('单位脉冲响应'); xlabel('n'); ylabel('y1[n]'); subplot(2,1,2); stem(n,y2);
title('单位阶跃响应'); xlabel('n'); ylabel('y2[n]');
0510
15202530
n
y 1[n ]
5
10
1520
25
30
n
y 2[n ]