预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

数字信号处理实验 实验一、离散时间信号和系统 实验目的: 熟悉MATLAB的软件环境,学习MATLAB的编程方法 学习离散时间典型信号及其运算的Matlab实现 学习离散时间系统的Matlab实现并掌握求解系统对输入的响应方法 实验原理: 典型序列 单位抽样序列 单位阶跃序列 实数指数序列 复数指数序列 正余弦序列 序列的运算 信号加 信号乘 改变比例 位移 折叠 卷积运算 系统的实现及响应的求解 差分方程: 差分方程在Matlab中:y(n)=filter(b,a,x) 实验内容: 1、典型序列的实现 impseq(n0,n1,n2)stepseq(n0,n1,n2)a.^nexp((a+bj)*n)sinorcos 2、序列的运算 sigadd(x1,n1,x2,n2)sigmult(x1,n1,x2,n2)a*xsigshift(x,m,n0)sigfold(x,n) 系统的实现及响应的求解 单位脉冲序列δ(n-1) n=[-3:3];%生成位置向量 x=[(n-1)==0];%生成单个脉冲序列 stem(n,x); axis([-3,3,0,1.5]);%标示坐标 单位阶跃序列u(n-1) n=[-3:3];%生成位置向量 x=[(n+1)>=0];%生成阶跃序列 stem(n,x); axis([-3,3,0,1.5]); 矩形序列生成函数 function[x,n]=rectseq(n0,n1,n2,N)%单位矩形序列生成函数 %调用方式[x,n]=rectseq(n0,n1,n2,N) n=[n0:n2];%生成位置向量 x=[(n-n1)>=0&((n1+N-1)-n)>=0];%生成矩形脉冲序列 矩形序列 [x,n]=rectseq(-3,-1,4,5); stem(n,x); axis([-3,5,0,1.5]); 实指数序列 n=[0:10];%生成位置向量 x=(0.6).^n;%生成实指数序列 stem(n,x); axis([0,10,0,1.5]); 正弦序列3sin(0.1πn+π/3) n=[0:1:20];%生成位置向量 x=3*sin(0.1*pi*n+pi/3);%生成正弦序列 stem(n,x); axis([0,20,-4,4]); 复指数序列 n=[-2:10]; x=exp((0.2-0.5j)*n);%复指数序列 subplot(1,2,1),stem(n,real(x));%用空心圆画点 line([-5,10],[0,0]);%画横坐标 subplot(1,2,2),stem(n,imag(x),'filled');%用实心圆画点 %line([-5,10],[0,0]) 序列的能量 conj求共轭复数 sum求总和 E=sum(x.*conj(x)); abs求幅值 sum求总和 E=sum(abs(x).^2); 完成下列题目的matlab实现 A. n=[-5:5];%生成位置向量 x1=[(n+2)==0];%生成单位脉冲序列 x2=[(n-4)==0];%生成单位脉冲序列 x=2*x1-x2; subplot(3,1,1) stem(n,x); axis([-5,5,-1.5,2.5]);%标示坐标 title('x(n)=2δ(n+2)-δ(n-4)'); xlabel('n');ylabel('x(n)'); B. n=[0:20];%生成位置向量 x1=[(n>=0&n<10)];%生成矩形脉冲序列 x2=[(n>=10&n<20)];%生成矩形脉冲序列 x=n.*x1+10*exp(-0.3*(n-10)).*x2; subplot(3,1,2) stem(n,x); axis([0,20,0,11]);%标示坐标 title('x(n)=n[u(n)-u(n-10)]+10exp(-0.3*(n-10))[u(n-10)-u(n-20)]'); xlabel('n');ylabel('x(n)'); C. n=[0:50];%生成位置向量 w=normrnd(0,1);%生成具有零均值及单位方差的高斯随机序列 x=cos(0.04*pi*n)+0.2*w; subplot(3,1,3) stem(n,x); axis([0,50,-2,2]); title('x(n)=cos(0.04πn)+0.2ω(n)'); xlabel('n');ylabel('x(n)'); A. b=[1];a=[1,-1,0.9]; x=impseq(0,-20,100);%生成单位脉冲序列 n=[-20:100];%生成位置向量 h=filter(b,a,x);%差分方程系数 subplot(2,1,1) stem(n,h); axis([