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

📄 s_response.m

📁 很多matlab的源代码
💻 M
字号:
%MAIN FUNCTION
s=input('please select the step of experiment:\n 1(时域采样序列分析),2(系统和响应分析),3(卷积定理的验证),0(退出):\n','1','1|2|3|0');
  s=str2num(s);
  close all;
  Ha=stepseq(1,1,10);
  Hb=impseq(0,0,3)+2.5*impseq(1,0,3)+2.5*imseq(2,0,3)+impseq(3,0,3);
   i=0;
while(s);

%时域采样序列分析

 if(s==1)
    l=1;
    k=0;
    while(1)
       if(k==0)
           A=input('please input the amplitude :\n',...
               444.128,[100,1000]);
           a=input('please input the attenuation coefficient:\n',...
               222.144,[100,600]);
           w=INPUT('please input the angle frequence(rad/s):\n',...
               222.144,[100,600]);
      end
        k=k+1;
        fs=input('please input the sample frequence:\n',...
            1000,[100,1200]);
                                                              %Fs=1000,300,200
        Xa=FF(A,a,w,fs);
        i=i+1;
        string=['fs=',num2str(fs)];
        figure(i)
        DFT(Xa,50,string);
     l=input(' 是否继续:1(继续实验1),0(进行其他实验内容):\n','1','0|1');
       l=str2num(l);
    end

%系统和响应分析

 else if(s==2)
  kk=input('系统和响应分析,请选择时域信号类型:1(内容a),2(内容b),3(b中xc(n)的长度改为5),0(退出):\n','1','1|2|3|0');
      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);
         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=input('请再选择信号类型:1,2,3,0(进行其他实验内容):\n','2','1|2|3|0');
             kk=str2num(kk);
      end
     
%卷积定理的验证

      else if (s==3)
           A=1; a=0.5; w=2.0734; fs=1;
           Xa1=FF(A,a,w,fs);
           i=i+1;
           figure(i)  
           string=('the xa1(n)(A=1,a=0.4,T=1)');
           [Xs,w]=DFT(Xa1,50,string);
           i=i+1;
           figure(i)
           string('hb(n)');
           Hs=DFT(Hb,4,string);
           Ys=Xs.*Hs;
           y=conv(Xa1,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)

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

           subplot(2,2,3);
           axis([-2 2 0 2]);
           plot(w/pi,abs(Ys));
           xlabel('w/pi');
           ylabel('|Ys(jw)|');
           title('FT[xs(n)].FT[h(n)]');
        end
     end
  end
   s=input('please select the step of experiment:\n 1(时域采样序列分析),2(系统和响应分析),3(卷积定理的验证),0(退出):\n','1','1|2|3|0');
      s=str2num(s);
  end
  
set(DFT,FF,impseq,stepseq,'callback','dd');

⌨️ 快捷键说明

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