⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 试验1.txt

📁 基于matlab的数字信号处理经典实验代码及所有完整实验报告
💻 TXT
字号:
s=yesinput(Please Select The Step Of Experiment:\n
一.(1时域采样序列分析
s=str2num(s);
close all;
Xb=impseq(0,0,1);
Ha=stepseq(1,1,10);
Hb=impseq(0,0,3)+2.5*impseq(1,0,3)+2.2*impseq(2,0,3)+impseq(3,0,3);
i=0;
while(s);
%时域采样序列分析
if(s==1)
l=1;
k=0;
while(1)
    if(k==0)
    A=yesinput('please input the Amplitude:\n',...444.128,[100,1000]);
    a=yesinput('please input the Attenuation Coefficient:\n',...222.144,[100,600]);
    w=yesinput('please input the Angle Frequence(rad/s):\n',...222.144,[100,600]);
end
k=k+1;
fs=yesinput('please input the sample frequence:\n',...1000,[100,1200]);
Xa=FF(A,a,w,fs);
i=i+1;
string+['fs=',num2str(fs)];
figure(i)
DFT(Xa,50,string);
1=yesinput
1=str2num(1);
end
%系统和响应分析
else if(s==2)
kk=str2num(kk);
while(kk)
if(kk==1)
  m=conv(Xb,Hb);
N=5;
i=i+1;
figure(i)
string=('hb(n)');
Hs=DFT(Hb,4,string);
i=i+1;
figure(i)
string('xb(n)');
DFT(Xb,2,string);
string=('y(n)=xb(n)*hb(n)');
else if (kk==2)
m=conv(Ha,Ha);
N=19;
string=('y(n)=ha(n)*(ha(n)');
else if (kk==3)
Xc=stepseq(1,1,5);
m=conv(Xc,Ha);
N=14;
string=('y(n)=xc(n)*ha(n)');
end
end
end
i=i+1;
figure(i)
DFT(m,N,string);
kk=yesinput
kk=str2num(kk);
end
卷积定理的验证

else if(s==3)
A=1;a=0.5;w=2,0734;fs=1;
Xal=FF(A,a,w,fs);
i=i+1;
figure(i)
string=('The xal(n)(A=1,a=0.4,T=1)');
[Xa,w]DFT(Xal,50,string);
i=i+1;
figure(i)
string =('hb(n)');
Hs=DFT(Hb,4,string);
Ys=Xs.*Hs;
y=conv(Xal,Hb);
N=53;
i=i+1;
figure(i)
string=('y(n)=xa(n)*hb(n)');
[yy,w]=DFT(y,N,string);
i=i+1;
figure(i)

subplot(2,2,1)
plot(w/pi,abs(yy));
axis([-2 2 0 2]);
xlabel('w/pi');
ylabel('|Ys(jw)|');
title(FT[x(n)*h(n)]');

subplot(2,2,3)
plot(w/pi,abs(Ys));
axis([-2 2 0 2]);
xlabel('w/pi');
ylabel('|Ys(jw)|');
title('FT[xs(n)].FT[h(n)]');
end
end
end
子函数:离散傅立叶变换及X(n),FT[x(n)]的绘图函数
function[c,l]=DFT(x,N,str)
n=0:N-1;
k=-200:200;
w=(pi/100)*k;
l=w;
c=x*

 Xc=stepseq(1,1,5);
子函数:产生信号
function c=FF(A,a,w,fs)
n=o:50-1;
c=A*exp((-a)*n/fs).*sin(w*n/fs).*stepseq(0,0,49);
子函数:产生脉冲信号
function [x,n]=impseq(n0,n1,n2)
n=[n1:n2];
x=[(n-n0)==0];
子函数:产生矩形框信号
function [x,n]=stepseq(n0,n1,n2)
n=[n1:n2];
x=[(n-n0>=0)];




⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -