数字信号处理实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数字信号处理》
实验指导书
--学生用书V2010--
信息与机电工程学院实验中心
2010-04-20
实验一 常见离散信号的MATLAB 产生和图形显示
一、实验目的:加深对常用离散信号的理解;
二、实验原理:
1、基础知识:
R1.1 单位样本序列
1
0[]00n n n δ=⎧=⎨≠⎩
如果()n δ在时间轴上延迟了k 个单位,得到()n k δ-,即:
1[]0
n k n k n k δ=⎧-=⎨≠⎩
R1.2 单位阶跃序列 10[]0
n u n n ≥⎧=⎨<⎩ R1.3 指数序列 []n x n A α=,其中()00j e σωα+=,j A A e φ=,则前式化为
()000000[]cos()sin()n j n n n x n A e A e n j A e n σωφσσωφωφ++==+++
R1.4 正弦序列
0[]cos()x n A n ωφ=+,其中A ,0ω,φ是实数,分别称为正弦序列的振幅、角频率和初始相位。00/2f ωπ=称为频率。
2、用到的MATLAB 命令
运算符和特殊符号
: . + - * / .^ ; %
基本矩阵和矩阵控制
i ones pi rand randn
zeros 基本函数
cos sin exp imag real
二维图形
axis gird legend plot stem
title xlabel ylabel stairs
通用图形函数
clf subplot
三、实验内容及要求:
编制程序产生信号,并绘出其图形。
例1.1单位样本和单位阶跃序列
% 程序 P1.1% 一个单位样本序列的产生
clf;
% 产生一个从-10到20的向量
n = -10:20;
% 产生单位样本序列
u = [zeros(1,10) 1 zeros(1,20)];
% 绘制单位样本序列
stem(n,u);
xlabel('时间序号 n');ylabel('振幅');
title('单位样本序列');
axis([-10 20 0 1.2]);
习题:
Q1.1 运行程序P1.1,以产生单位样本序列u[n]并记录它。
Q1.2 命令clf,axis,title,xlabel,ylabel的作用是什么?
答:
clf:产生单位样本信号
axis:图表数值大小30*1.2
title:图标标题
xlabel:X轴变量
ylabel:Y轴变量
Q1.3 修改程序P1.1,以产生单位阶跃序列u[n]并记录它。
例1.2指数信号
% 程序 P1.2
% 生成一个复指数序列
clf;
c = -(1/12)+(pi/6)*i;
n = 0:40;
K=2;
x = K*exp(c*n);
subplot(2,1,1);
stem(n,real(x));
xlabel('时间序号 n');ylabel('振幅');
title('复指数序列-实部');
subplot(2,1,2);
stem(n,imag(x));
xlabel('时间序号 n');ylabel('振幅');
title('复指数序列-虚部');
% 程序 P1.3
% 产生一个实指数序列
clf;
n = 0:35; a1 = 1.2; k=0.2;
x = k*a1.^n;
stem(n,x);
xlabel('时间序号 n');ylabel('振幅');
title('实指数序列');
习题:
Q1.4 运行程序P1.2,以产生复指数序列并记录它。
Q1.5 哪个参数控制该序列的增长或衰减率?哪个参数控制该序列的振幅?答:exp控制该序列的增长或衰减率,c*n控制该序列的振幅。
Q1.6 若参数c改为1/12+(pi/6)*i,将会发生什么情况?
答:图像从从衰减改变成增长。
Q1.7 real、imag和subplot的作用是什么?
答:
subplot:控制频率
real:实部
imag:虚部
Q1.8 运行程序P1.3,以产生实指数序列并记录它。
Q1.9 哪个参数控制该序列的增长或衰减率?哪个参数控制该序列的振幅?
答:x控制该序列的振幅, n控制该序列的增长或衰减率。
Q1.10 若参数a小于1,会发生什么情况?将参数a改为0.9,将参数k改为20,再次运行程序P1.3并记录。
答:该序列将从增长趋势变为衰减趋势。
例1.3正弦序列
% 程序 P1.4
% 产生一个正弦序列
n = 0:40;
f = 0.1;
phase = 0;
A = 1.5;
arg = 2*pi*f*n - phase;
x = A*cos(arg);
clf; % 清除旧图形
stem(n,x); % 绘制产生的序列
axis([0 40 -2 2]);
grid;
title('正弦序列');
xlabel('时间序号 n');
ylabel('振幅');
axis;
习题
Q1.12 运行程序P1.4,以产生正弦序列并记录它。