MATLAB实验程序及仿真结果.doc
上传人:sy****28 上传时间:2024-09-14 格式:DOC 页数:5 大小:152KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

MATLAB实验程序及仿真结果.doc

MATLAB实验程序及仿真结果.doc

预览

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

16 金币

下载此文档

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

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

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

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

实验一:(1)n=-4:4;x=[(n-2)==0];stem(n,x);gridon;xlabel('n');ylabel('x(n)');(2)n=0:9;x=0.5.^n.*[zeros(1,abs(0)),ones(1,10),zeros(1,9-10+1)];stem(n,x);gridon;xlabel('n');ylabel('x(n)');(3)n=0:100;x=10*sin(0.02*pi*n);stem(n,x);gridon;xlabel('n');ylabel('x(n)');(4)n=0:20;x=[zeros(1,abs(0)),ones(1,3),zeros(1,20-3+1)];stem(n,x);2、x=[-0.5,0,0.5,1];nx=-1:2;h=[1,1,1];nh=-2:0;y=conv(x,h);k=nx(1)+nh(1):nx(end)+nh(end);stem(k,y);gridon;xlabel('n');ylabel('y(n)');实验二1、(1)16点DFT:n=0:15;x=cos(2*pi*4*n/16);X=fft(x);stem(n,X);xlabel('n')ylabel('X(k)')(2)512点DFT:N=512;n=0:N-1;M=16;r=4;x=cos(2*pi*r*n/M);X=ifft(x,N);stem(n,X);title('512点DFT');xlabel('n')ylabel('X(k)')2、长度为30的余弦序列的频谱:N=30;n=0:N-1;x=cos(2*pi*n/N);X=fft(x);subplot(311);stem(n,X);gridon;title('30点DFT');xlabel('n')ylabel('X')magnitude=20*log10(abs(X));subplot(312);plot(n,magnitude);gridon;title('幅度谱');xlabel('n');ylabel('幅度/dB');phase=angle(X);subplot(313);plot(n,phase);gridon;title('相位谱');xlabel('n');ylabel('相位/Deg');3、(1)线性卷积直接计算:x=[1,2,0,1];nx=0:3;h=[2,2,1,1];nh=0:3;y=conv(x,h);k=nx(1)+nh(1):nx(end)+nh(end);stem(k,y);gridon;title('线性卷积');xlabel('n')ylabel('x(n)*y(n)')(2)由FFT计算线性卷积:n=0:3;x=[1,2,0,1];h=[2,2,1,1];X=fft(x);H=fft(h);Y=X.*H;y=ifft(Y);stem(n,y);gridon;title('线性卷积');xlabel('n');ylabel('y(n)');或:x=[1,2,0,1];h=[2,2,1,1];X=fft(x);H=fft(h);Y=X.*H;ifft(Y)ans=6765实验三:fs=1000;T=1/fs;fc=400;fv=371;wc=2/T*tan(2*pi*fc*T/2);wt=2/T*tan(2*pi*fv*T/2);[N,W]=buttord(wc,wt,3,18,'s');[B,A]=butter(N,W,'high','s');[num,den]=bilinear(B,A,fs);[h,w]=freqz(num,den);f=w/(2*pi*T);subplot(211);plot(f,20*log10(abs(h)));xlabel('w');ylabel('幅度/dB');phase=angle(h);subplot(212);plot(f,phase);xlabel('w');ylabel('相位/Deg');实验四1、N=50;n=0:N-1;win=boxcar(N);[h,w]=freqz(win,1);subplot(211);stem(n,win);gridon;title('矩形窗');xlabel('n');ylabel('h(n)');subplot(212);plot(w/pi,20*log10(abs(h)));gridon;tit