数字信号处理上机实验代码

合集下载

数字信号处理上机实验代码

数字信号处理上机实验代码

数字信号处理上机实验代码文件名:tstem.m(实验一、二需要)程序:f unction tstem(xn,yn)%时域序列绘图函数%xn:被绘图的信号数据序列,yn:绘图信号的纵坐标名称(字符串)n=0:length(xn)-1;stem(n,xn,'.');xlabel('n');ylabel('yn');axis([0,n(end),min(xn),1.2*max(xn)]);文件名:tplot.m(实验一、四需要)程序:function tplot(xn,T,yn)%时域序列连续曲线绘图函数%xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串)%T为采样间隔n=0;length(xn)-1;t=n*T;plot(t,xn);xlabel('t/s');ylabel(yn);axis([0,t(end),min(xn),1.2*max(xn)]);文件名:myplot.m(实验一、四需要)%(1)myplot;计算时域离散系统损耗函数并绘制曲线图。

function myplot(B,A)%B为系统函数分子多项式系数向量%A为系统函数分母多项式系数向量[H,W]=freqz(B,A,1000)m=abs(H);plot(W/pi,20*log10(m/max(m)));grid on;xlabel('\omega/\pi');ylabel('幅度(dB)')axis([0,1,-80,5]);title('损耗函数曲线');文件名:mstem.m(实验一、三需要)程序:function mstem(Xk)%mstem(Xk)绘制频域采样序列向量Xk的幅频特性图M=length(Xk);k=0:M-1;wk=2*k/M;%产生M点DFT对应的采样点频率(关于pi归一化值)stem(wk,abs(Xk),'.');box on;%绘制M点DFT的幅频特性图xlabel('w/\pi');ylabel('幅度');axis([0,2,0,1.2*max(abs(Xk))]);文件名:mpplot.m(实验一需要)%(2)mpplot;计算时域离散系统损耗函数和相频特性函数,并绘制曲线图。

数字信号处理实验源码(matlab)

数字信号处理实验源码(matlab)

系统响应及系统稳定性时域采样与频域采样用FFT对信号作频谱分析数字滤波器设计及软件实现close all;clear all;x1n=[ones(1,4)];M=8;xa=1:(M/2);xb=(M/2):-1:1;x2n=[xa,xb];x3n=[xb,xa];X1k8=fft(x1n,8);X1k16=fft(x1n,16);X2k8=fft(x2n,8);X2k16=fft(x2n,16);X3k8=fft(x3n,8);X3k16=fft(x3n,16);subplot(2,2,1);mstem(X1k8);title('(1a) 8点DFT[x_1(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X1k8))])subplot(2,2,3);mstem(X1k16);title('(1b) 16点DFT[x_1(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X1k16))])figure(2)subplot(2,2,1);mstem(X2k8);title('(2a) 8点DFT[x_2(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X2k8))])subplot(2,2,2);mstem(X2k16);title('(2b) 16点DFT[x_2(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X2k16))])subplot(2,2,3);mstem(X3k8);title('(3a) 8点DFT[x_3(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X3k8))])subplot(2,2,4);mstem(X3k16);title('(3b) 16点DFT[x_3(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X3k16))])N=8;n=0:N-1;x4n=cos(pi*n/4);x5n=cos(pi*n/4)+cos(pi*n/8);X4k8=fft(x4n);X5k8=fft(x5n);N=16;n=0:N-1;x4n=cos(pi*n/4);x5n=cos(pi*n/4)+cos(pi*n/8);X4k16=fft(x4n);X5k16=fft(x5n);figure(3)subplot(2,2,1);mstem(X4k8);title('(4a) 8点DFT[x_4(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X4k8))])subplot(2,2,3);mstem(X4k16);title('(4b) 16点DFT[x_4(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X4k16))])subplot(2,2,2);mstem(X5k8);title('(5a) 8点DFT[x_5(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X5k8))])subplot(2,2,4);mstem(X5k16);title('(5b) 16点DFT[x_5(n)]');xlabel('\omega/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(X5k16))])figure(4)Fs=64;T=1/Fs;N=16;n=0:N-1;x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T);X6k16=fft(x6nT);X6k16=fftshift(X6k16);Tp=N*T;F=1/Tp;k=-N/2:N/2-1;fk=k*F;subplot(3,1,1);stem(fk,abs(X6k16),'.');box ontitle('(6a) 16点|DFT[x_6(nT)]|');xlabel('f(Hz)');ylabel('幅度'); axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k16))])N=32;n=0:N-1;x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T);X6k32=fft(x6nT);X6k32=fftshift(X6k32);Tp=N*T;F=1/Tp;k=-N/2:N/2-1;fk=k*F;subplot(3,1,2);stem(fk,abs(X6k32),'.');box ontitle('(6b) 32点|DFT[x_6(nT)]|');xlabel('f(Hz)');ylabel('幅度'); axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k32))])N=64;n=0:N-1;x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T);X6k64=fft(x6nT);X6k64=fftshift(X6k64);Tp=N*T;F=1/Tp;k=-N/2:N/2-1;fk=k*F;subplot(3,1,3);stem(fk,abs(X6k64),'.');box ontitle('(6a) 64点|DFT[x_6(nT)]|');xlabel('f(Hz)');ylabel('幅度'); axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k64))])function mstem(Xk)M=length(Xk);k=0:M-1;wk=2*k/M;stem(wk,abs(Xk),'.');box onxlabel('\omega/\pi');ylabel('幅度');axis([0,2,0,1.2*max(abs(Xk))])。

数字信号处理实验参考程序

数字信号处理实验参考程序

实验一参考程序:1 产生10点的单位抽样序列δ(n);function unit_pulse(N)% unit_pulse.mN=10;x=zeros(1,N);x(1)=1;n=0:N-1;figure(1);stem(n,x);xlabel('单位抽样序列')axis([-1 20 0 1.1])2产生10点同时移位3位的单位抽样序列δ(n-3);function shift_unit_pulse(N,k)% shift_unit_pulse.mN=10;k=3;x=zeros(1,N);x(k+1)=1;n=0:N-1;figure(2);stem(n,x);xlabel('移位3位的单位抽样序列')axis([-1 10 0 1.1])function [x, n]=i shift_unit_pulse (n0,ns,nf)n=[0:9];x=[(n-3)==0]3产生任意序列f(n)=8δ(n)+7δ(n-1)+6δ(n-2) +5δ(n-3)+ 4δ(n-4)+7δ(n-5);function arbitrary_pulse(N)% arbitrary_pulse.mN=10x=zeros(1,N);x(1)=8;x(2)=7;x(3)=6;x(4)=5;x(5)=4;x(6)=7;n=0:N-1;figure(3);stem(n,x);xlabel('任意序列f(n)')axis([-1 10 0 9])4产生N=10点的单位阶跃序列function unit_step(N)% unit_step.mN=10;x=ones(1,N);n=0:N-1;figure(4);stem(n,x);xlabel('单位阶跃序列')axis([-1 15 0 1.1])5产生斜率为3,n0=4,点数为20点的斜坡序列g(n)=B(n-n0)function slope(N,k,B)% slope.mN=20;k=4;B=3;x=[zeros(1,k) ones(1,N-k)];for i=1:Nx(i)=B*x(i)*(i-k);endn=0:N-1;figure(5);stem(n,x);xlabel('斜坡序列')axis([-1 20 0 90])6产生幅度A=3,频率f=100,初始相位 =1.2,点数为32点的正弦序列。

数字信号处理上机实验及参考程序

数字信号处理上机实验及参考程序

数字信号处理上机实验及参考程序数字信号处理实验实验⼀离散时间信号与系统及MA TLAB实现1.单位冲激信号:n = -5:5;x = (n==0);subplot(122);stem(n, x);2.单位阶跃信号:x=zeros(1,11);n0=0;n1=-5;n2=5;n = n1:n2;x(:,n+6) = ((n-n0)>=0);stem(n,x);3.正弦序列:n = 0:1/3200:1/100;x=3*sin(200*pi*n+1.2);stem(n,x);4.指数序列n = 0:1/2:10;x1= 3*(0.7.^n);x2=3*exp((0.7+j*314)*n);subplot(221);stem(n,x1);subplot(222);stem(n,x2);5.信号延迟n=0:20;Y1=sin(100*n);Y2=sin(100*(n-3));subplot(221);stem(n,Y1);subplot(222);stem(n,Y2);6.信号相加X1=[2 0.5 0.9 1 0 0 0 0];X2=[0 0.1 0.2 0.3 0.4 0.5 0.6 0.7];X=X1+X2;stem(X);7.信号翻转X1=[2 0.5 0.9 1];n=1:4;X2=X1(5-n);subplot(221);stem(n,X1);subplot(222);stem(n,X2);8.⽤MATLAB计算序列{-2 0 1 –1 3}和序列{1 2 0 -1}的离散卷积。

a=[-2 0 1 -1 3]; b=[1 2 0 -1];c=conv(a,b);M=length(c)-1;n=0:1:M;stem(n,c);xlabel('n');ylabel('幅度');9.⽤MA TLAB计算差分⽅程当输⼊序列为时的输出结果。

N=41;a=[0.8 -0.44 0.36 0.22];b=[1 0.7 -0.45 -0.6];x=[1 zeros(1,N-1)];k=0:1:N-1;y=filter(a,b,x);stem(k,y)xlabel('n');ylabel('幅度')10.冲激响应impzN=64;a=[0.8 -0.44 0.36 0.22];b=[1 0.7 -0.45 -0.6];x=[1 zeros(1,N-1)];k=0:1:N-1;y=impz(a,b,N);stem(k,y)xlabel('n');ylabel('幅度')11.传递函数频率响应a=[0.8 -0.44 0.36 0.22];%分⼦的系数数组b=[1 0.7 -0.45 -0.6];%分母的系数数组n=(0:500)*pi/500%在pi范围内取501个采样点[h,f]=freqz(a,b,n);%求系统的频率响应subplot(2,1,1),plot(n/pi,abs(h));grid%作系统的幅度频响图axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);ylabel('幅度');subplot(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);ylabel('相位');xlabel('以pi为单位的频率');12.系统零极点图a=[0.8 -0.44 0.36 0.22];b=[1 0.7 -0.45 -0.6];h=zplane(a,b);实验⼆离散信号变换1.解⽅程y(n)-2y(n-1)+3y(n-2)=4x(n)-5x(n-1)+6x(n-2)-7x(n-3)a=[4,-5,6,-7];b=[1,-2,3];n=[0:7]; x=ones(length(n));Y=[-1,1];X=[1,-1];xic=filtic(b,a,Y,X);y1=filter(b,a,x,xic)stem(n,y1);xlabel('n');ylabel('y(n)');2.对连续的单⼀频率周期信号按采样频率采样,截取长度N分别选N =20和N =16,观察其DFT结果的幅度谱。

数字信号实验代码

数字信号实验代码

%时域采样与频域采样实验figure(1)A=444.18;a=50*pi*sqrt(2);omega=50*pi*sqrt(2);%模拟信号Tp=64/1000;Fs=1000;%抽样频率n=0:Tp*Fs-1;y=A*exp(-a*n*1/Fs).*sin(omega*n*1/Fs);subplot(2,2,1);stem(n,y,'.');xlabel('抽样频率为1000HZ时信号Y的抽样图形');y1=fft(y,64);%频域抽样用fft计算DFT。

subplot(2,2,2);n=0:length(y1)-1;stem(n,y1,'.');xlabel('抽样频率为1000HZ时信号y的64点得FFT'); subplot(2,2,3);n1=0:length(angle(y))-1;plot(n1,angle(y));xlabel('抽样频率为1000HZ时信号Y的相频特性图'); figure(2)A=444.18;a=50*pi*sqrt(2);omega=50*pi*sqrt(2);%模拟信号Tp=64/1000;Fs=300;%抽样频率n=0:Tp*Fs-1;y=A*exp(-a*n*1/Fs).*sin(omega*n*1/Fs);//两向量相乘用点乘y2=[y,zeros(1,46)];subplot(2,2,1);n2=0:length(y2)-1;stem(n2,y2,'.');xlabel('抽样频率为300HZ时信号Y的抽样图形');y1=fft(y2,64);%频域抽样subplot(2,2,2);n3=0:length(y1)-1;stem(n3,y1,'.');xlabel('抽样频率为300HZ时信号y的64点得FFT'); subplot(2,2,3);n1=0:length(angle(y2))-1;plot(n1,angle(y2));%相位xlabel('抽样频率为300HZ时信号Y的相频特性图'); figure(3)A=444.18;a=50*pi*sqrt(2);omega=50*pi*sqrt(2);Tp=64/1000;抽样的实现………Fs=200;%抽样频率n=0:Tp*Fs-1;%信号长度y=A*exp(-a*n*1/Fs).*sin(omega*n*1/Fs);//t换成nT y2=[y,zeros(1,52)];subplot(2,2,1);n2=0:length(y2)-1;stem(n2,y2,'.');xlabel('抽样频率为200HZ时信号Y的抽样图形'); y1=fft(y2,64);%频域抽样subplot(2,2,2);n3=0:length(y1)-1;stem(n3,y1,'.');xlabel('抽样频率为200HZ时信号y的64点得FFT'); subplot(2,2,3);n1=0:length(angle(y2))-1;plot(n1,angle(y2));%相位xlabel('抽样频率为200HZ时信号Y的相频特性图');figure(4)n1=0:13;n2=14:26;x1=n1+1;x2=27-n2;x0=[x1,x2,zeros(1,5)];%信号xnx00=[x1,x2];xk=fft(x0,32);%信号xn的32点频域抽样n3=0:length(xk)-1;subplot(2,2,1);stem(n3,abs(xk),'.');%信号幅频特性xlabel('信号XN的32点FFT');xk1=fft(x00,16);%16点得频域抽样n4=0:length(xk1)-1;subplot(2,2,2);stem(n4,abs(xk1),'.');xlabel('信号XN的16点FFT');n5=0:length(x0)-1;subplot(2,2,3)stem(n5,x0,'.');%原始信号xn xlabel('信号X0的波形');figure(5)y5=ifft(xk,32);n5=0:length(xk)-1;subplot(2,2,1);stem(n5,y5,'.');xlabel('32点IFFT');y51=ifft(xk1,16);n51=0:length(y51)-1;subplot(2,2,2);stem(n51,y51,'.');xlabel('16点IFFT');%实验二figure(6)x1n=ones(1,4);%信号X1Nn1=0:3;n2=4:7;x1=n1+1;x2=8-n2;x2n=[x1,x2];%信号X2Nn3=0:3;n4=4:7;x3=4-n;x4=n4-3;x3n=[x3,x4];%信号X3N即分段信号的表示方法,用向量表示的。

数字信号处理第三版用MATLAB上机实验

数字信号处理第三版用MATLAB上机实验

实验二:时域采样与频域采样一、时域采样1.用MATLAB编程如下:%1时域采样序列分析fs=1000A=444.128; a=222.144; w=222.144; ts=64*10^(-3); fs=1000;T=1/fs;n=0:ts/T-1; xn=A*exp((-a)*n/fs).*sin(w*n/fs); Xk=fft(xn);subplot(3,2,1);stem(n,xn);xlabel('n,fs=1000Hz');ylabel('xn');title('xn');subplot(3,2,2);plot(n,abs(Xk));xlabel('k,fs=1000Hz'); title('|X(k)|');%1时域采样序列分析fs=200A=444.128; a=222.144; w=222.144; ts=64*10^(-3); fs=200;T=1/fs;n=0:ts/T-1; xn=A*exp((-a)*n/fs).*sin(w*n/fs);Xk=fft(xn);subplot(3,2,3);stem(n,xn);xlabel('n,fs=200Hz'); ylabel('xn');title('xn');subplot(3,2,4);plot(n,abs(Xk));xlabel('k,fs=200Hz'); title('|X(k)|');%1时域采样序列分析fs=500A=444.128; a=222.144; w=222.144; ts=64*10^(-3); fs=500;T=1/fs;n=0:ts/T-1; xn=A*exp((-a)*n/fs).*sin(w*n/fs); Xk=fft(xn);subplot(3,2,5);stem(n,xn);xlabel('n,fs=500Hz');ylabel('xn');title('xn');subplot(3,2,6);plot(n,abs(Xk));xlabel('k,fs=500Hz'); title('|X(k)|');2.经调试结果如下图:20406080-200200n,fs=1000Hzxnxn2040608005001000k,fs=1000Hz|X (k)|51015-2000200n,fs=200Hzx nxn510150100200k,fs=200Hz |X(k)|10203040-2000200n,fs=500Hzx nxn102030400500k,fs=500Hz|X (k)|实验结果说明:对时域信号采样频率必须大于等于模拟信号频率的两倍以上,才 能使采样信号的频谱不产生混叠.fs=200Hz 时,采样信号的频谱产生了混叠,fs=500Hz 和fs=1000Hz 时,大于模拟信号频率的两倍以上,采样信号的频谱不产生混叠。

数字信号处理实验1--5含代码

数字信号处理实验1--5含代码

数字信号处理实验1--5含代码实验一离散时间信号的时域分析 1. 在MATLAB中利用逻辑关系式n,,0来实现序列,显示范围。

(产生如下,,,n,nn,n,n012图所示的单位脉冲信号的函数为impseq(n0,n1,n2),程序如示例所示),3,n,10并利用impseq函数实现序列:; ,,,,,,yn,2,n,3,,n,6,,xn1nnnn120源代码:impseq.mfunction y=impseq(n0,n1,n2)n=[n1:n2]y=[(n-n0)==0]exp01-1.mfunction impseq(n0,n1,n2)n=-3:1:10y=2*impseq(3,-3,10)+impseq(6,-3,10);stem(n,y)n,,0,,2. 在MATLAB中利用逻辑关系式来实现序列,显示范围。

(自己编写un,nn,n,n012产生单位阶跃信号的函数,函数命名为stepseq(n0,n1,n2)) 并利用编写的stepseq函数实现序列: ,,,,,,yn,un,2,un,2,5,n,10源代码:stepseq.mfunction y=stepseq(n0,n1,n2)n=n1:1:n2y=[(n-n0)>=0]exp01-2.mfunction stepseq(n0,n1,n2)n=-5:1:20y=stepseq(-2,-5,20)+stepseq(2,-5,20)stem(n,y)3. 在MATLAB中利用数组运算符“.^”来实现一个实指数序列。

如: n ,,,,xn,0.30,n,15源代码:n=0:1:15;x=0.3.^nstem(n,x)4. 在MATLAB中调用函数sin或cos产生正余弦序列,如:π,, ,,,,xn,3sin0.4πn,,5cos0.3πn0,n,20,,5,,源代码:n=0:1:20x=11*sin(0.3*pi*n+pi/5)+5*cos(0.3*pi*n)stem(n,x)思考题:1.在MATLAB环境下产生单位脉冲序列和单位阶跃序列各有几种方法,如何使用,2.在MATLAB环境下进行序列的相乘运算时应注意什么问题,实验二离散时间系统的时域分析1. 在MATLAB中利用内部函数conv来计算两个有限长序列的卷积。

数字信号处理(1) 代码

数字信号处理(1) 代码
H=20*log10(abs(h)); %输出幅值转化为分贝单位
subplot(311); %把图像放到311位置
plot(t,x); %画出输入信号图像
[b,a]=butter(N,Wn,'s'); %巴特沃斯模拟滤波器设计
[b1,a1]=bilinear(b,a,0.5); %用双线性法,将模拟滤波器转换为数字滤波器
[h,omega]=freqz(b1,a1,256); %系统的绝对幅度响应(h包含了离散系统频响在 0~pi范围内256个频率等分点的值,omega则包含了范围内256个频率等分点)
ylabel('H (dB)'); %Y轴取值H
title('滤波器图像'); %图像题目
y=filter(b,a,x); %将信号进行滤波处理
title('滤波后的图像'); %图像题目
Rp=1; %幅度特性下降小于1DB
Rs=15; %幅度特性下降小于15DB
[N,Wn]=buttord(Wp,Ws,Rp,Rs,'s'); %巴特沃斯滤波器N估计
subplot(313); %把图像放到313位置
pl %网格布线
grid; %网格布线
title('输入信号'); %图像题目
subplot(312); %把图像放到312位置
x=sin(2*pi*20*t)+2*sin(2*pi*100*t)+5*sin(2*pi*200*t); %输入信号
Wp=tan(pi*30/Fs); %预畸变处理,Wp通带截至频率
Ws=tan(pi*60/Fs); %预畸变处理,Ws阻带截至频率

数字信号处理上机实验MATLAB程序及结果

数字信号处理上机实验MATLAB程序及结果
(211);
(2**f2*,'k')显示波形
('时间');
('幅值');
('原始信号');
(y)进行快速傅里叶变换
1;
1(f2/()+1)=02频率对应的幅值为零
1((2)/()+1)=02/2频率对应f2的对称频率值对应幅值为零
(1)逆变换
(212);
(2**f2*);
('时间');
('幅值');
实验三设计一个巴尔低通滤波器
%设计一个巴尔沃特低通滤波器,12140;
1000;
2000;
2**;
2**;
1;
40;
[](,'s');
('阶数为\n');
[](,'s');
%[](n);
('分子多项式系数分别为');
('%.4e\n');
('分母多项式系数分别为');
('%.4e\n');
[ ];
h1();
(0,2*,1024);
();
20*10((h));
();
(' ');
('');
([0 1 -50 0]);
;
输出结果
分子多项式的系数
1.577701
3.155501
1.577701
分母多项式的系数
1.000000
-6.062001
2.373001
0.3945
15.0000
图形为
实验8切比雪夫1型设计低通和高通滤波器

DSP实验报告2-数字信号处理

DSP实验报告2-数字信号处理

23 系 2012 级 丛松宇 PB12210075
3. clear; n=1:8; for i=1:4 x(i)=i; end for i=5:8 x(i)=9-i; end close all; subplot(2,4,1); stem(x);grid on; title('8 点三角波序列'); subplot(2,4,2); stem(abs(fft(x,8)));grid on; n=1:16; for i=9:16 x(i)=0; end subplot(2,4,3); stem(x);grid on; title('16 点三角波序列'); subplot(2,4,4); stem(abs(fft(x,16)));grid on; n=1:8; for i=1:4 x(i)=5-i; end
23 系 2012 级 丛松宇 PB12210075
1.② n=0:15; q=8;p=8; x=exp(-1*(n-p).^2/q); close all; subplot(3,2,1); stem(x),grid on title('q=8,p=8 的时域特性'); subplot(3,2,2); stem(abs(fft(x))),grid on;title('频域特性'); q=8;p=13; x=exp(-1*(n-p).^2/q); subplot(3,2,3); stem(x),grid on title('q=8,p=13 的时域特性'); subplot(3,2,4); stem(abs(fft(x))),grid on;title('频域特性'); q=8;p=14; x=exp(-1*(n-p).^2/q); subplot(3,2,5); stem(x),grid on title('q=8,p=14 的时域特性'); subplot(3,2,6); stem(abs(fft(x))),grid on;title('频域特性');

数字信号处理第一次实验代码及波形图

数字信号处理第一次实验代码及波形图

数字信号处理第一次实验(1)代码:clc;clear all;%clc是清除当前command区域的命令,表示清空,看着舒服些。

%而clear用于清空环境变量。

两者是不同的。

n=-10:10;%取值范围y=(n>=0);%n>=0,y=1;n<0;y=0x=(1/2).^n.*y;%加点的意思就是对应元素做对应的运算的意思stem(n,x);%画点这样就能看到每点对应的值%plot(n,x);%画的波形图这样是整个波形for i=8:16%显示几个坐标text(n(i),x(i),['(',num2str(n(i)),',',num2str(x(i)),')'],'FontSize',7 );endxlabel('n');%对横轴进行注释ylabel('x(n)');%对纵轴进行注释title('x(n)=(1/2)^n*u(n)的图形');%图像标题波形图:clc;clear all;%clc是清除当前command区域的命令,表示清空,看着舒服些。

%而clear用于清空环境变量。

两者是不同的。

n=-5:10;%取值范围y=(n>=0);%n>=0,y=1;n<0;y=0x=2.^n.*y;%加点的意思就是对应元素做对应的运算的意思stem(n,x);%画点这样就能看到每点对应的值%plot(n,x);%画的波形图这样是整个波形for i=1:length(x)text(n(i),x(i),['(',num2str(n(i)),',',num2str(x(i)),')'],'FontSize',7 );endxlabel('n');%对横轴进行注释ylabel('x(n)');%对纵轴进行注释title('x(n)=2^n*u(n)的图形');%图像标题波形图:clc;clear all;%clc是清除当前command区域的命令,表示清空,看着舒服些。

数字信号处理实验全部程序MATLAB

数字信号处理实验全部程序MATLAB

实验一熟悉MATLAB环境一、实验目的(1)熟悉MATLAB的主要操作命令。

(2)学会简单的矩阵输入和数据读写。

(3)掌握简单的绘图命令。

(4)用MATLAB编程并学会创建函数。

(5)观察离散系统的频率响应。

二、实验内容认真阅读本章附录,在MATLAB环境下重新做一遍附录中的例子,体会各条命令的含义。

在熟悉了MATLAB基本命令的基础上,完成以下实验。

上机实验内容:(1)数组的加、减、乘、除和乘方运算。

输入A=[1 2 3 4],B=[3 4 5 6],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B并用stem语句画出A、B、C、D、E、F、G。

实验程序:A=[1 2 3 4];B=[3 4 5 6];n=1:4;C=A+B;D=A-B;E=A.*B;F=A./B;G=A.^B;subplot(4,2,1);stem(n,A,'fill');xlabel ('时间序列n');ylabel('A');subplot(4,2,2);stem(n,B,'fill');xlabel ('时间序列n ');ylabel('B'); subplot(4,2,3);stem(n,C,'fill');xlabel ('时间序列n ');ylabel('A+B'); subplot(4,2,4);stem(n,D,'fill');xlabel ('时间序列n ');ylabel('A-B'); subplot(4,2,5);stem(n,E,'fill');xlabel ('时间序列n ');ylabel('A.*B'); subplot(4,2,6);stem(n,F,'fill');xlabel ('时间序列n ');ylabel('A./B'); subplot(4,2,7);stem(n,G,'fill');xlabel ('时间序列n ');ylabel('A.^B');运行结果:(2)用MATLAB实现以下序列。

《数字信号处理》实验及代码

《数字信号处理》实验及代码

实验一 用Matlab 进行数字信号处理一、实验目的1.掌握 MATLAB 基本的操作;2.学习典型的离散信号的Matlab 实现方法。

3.学习离散时间序列的基本运算:相加、相乘、移位等; 二、实验内容1. 练习把y=sin(x), z=cos(x),u=2sin(x),v=sin(x)/cos(x)在[0,2pi]区间内的4个子图分别用不同的颜色、点型和线型绘制在同一个窗口中,并加上纵坐标、标题、图例和网格线。

2. 利用MATLAB 编程产生和绘制下列有限长序列: (1)单位脉冲序列()n δ (2)单位阶跃序列()u n (3)矩形序列8()R n(4)正弦序列()sin()53x n n ππ=+(5)实指数序列0.9()n u n3.上机调试并打印或记录实验结果。

4.完成实验报告。

三、实验结果1. 实验程序如下:x=0:pi/10:2*pi;y=sin(x); plot(x,y,'r*:');grid on %绘制网格线 hold on z=cos(x); plot(x,z,'y+-'); hold on u=2*sin(x); plot(x,u,'bx-'); hold on v=sin(x)/cos(x); plot(x,v,'ko-');hold onxlabel('x 轴'); %x轴注释ylabel('y 轴'); %y轴注释legend({'y=sin(x)','z=cos(x)', 'u=2sin(x) ', 'v=sin(x)/cos(x) '}); %图形注解2. 程序如下:n=-20:20;n0=0;n1=8;w0=pi/5; w1=pi/3;x1=[(n-n0)==0];x2=[(n-n0)>=0];x3=[(n-n0)>=0& (n-n1)<=0];x4=sin(w0*n+w1);x5=0.9.^n.*x2;subplot(511);stem(n,x1);axis([ -20 20 0 2]);ylabel('\sigma(n)'); subplot(512);stem(n,x2);axis([ -20 20 0 2]);ylabel('u(n)');subplot(513);stem(n,x3);axis([ -20 20 0 2]);ylabel('R8(n)'); subplot(514);stem(n,x4);axis([ -20 20 -2 2]);ylabel(' sin(w0n+w1) '); subplot(515);stem(n,x5);axis([ -20 20 0 2]);ylabel('0.9nu(n)'); xlabel('n');实验二离散信号与系统一、实验目的1.掌握卷积定理、熟悉离散信号和系统的时域特性;2.学习Matlab进行卷积计算方法;3.学习Matlab求解差分方程二、实验内容1.离散信号的基本运算:对序列x(n)={2,3,4,1,2,5} ,n=0,1,2,3,4,5,的移位、乘法、加法、翻转及尺度变换。

数字信号处理实验(1-7)原始实验内容文档(含代码)

数字信号处理实验(1-7)原始实验内容文档(含代码)

实验要求1.每个实验进行之前须充分预习准备,实验完成后一周内提交实验报告;2.填写实验报告时,分为实验题目、实验目的、实验内容、实验结果、实验小结五项;3.实验报告要求:实验题目、实验目的、实验内容、实验结果四项都可打印;但每次实验的实验内容中的重要代码(或关键函数)后面要用手工解释其作用。

实验小结必须手写!(针对以前同学书写实验报告时候抄写代码太费时间的现象,本期实验报告进行以上改革)。

实验一信号、系统及系统响应实验目的:1. 掌握使用MATLAB进行函数、子程序、文件编辑等基本操作;2. 编写一些数字信号处理中常用序列的3. 掌握函数调用的方法。

实验内容:1.在数字信号处理的基本理论和MATLAB信号处理工具箱函数的基础上,可以自己编写一些子程序以便调用。

(1)单位抽样序列δ(n-n0)的生成函数impseq.m(2)单位阶跃序列u(n-n0)的生成函数stepseq.m(3)两个信号相加的生成函数sigadd.m(4)两个信号相乘的生成函数sigmult.m(5)序列移位y(n)=x(n-n0)的生成函数sigshift.m(6)序列翻褶y(n)=x(-n)生成函数sigfold.m(7)奇偶综合函数evenodd.m(8)求卷积和2.产生系列序列,并绘出离散图。

(1) x1(n)=3δ(n-2)-δ(n+4) -5≤n≤5(2) x3(n)=cos(0.04πn)+0.2w(n) 0≤n≤50其中:w(n)是均值为0,方差为1 的白噪声序列。

3.设线性移不变系统的抽样响应h(n)=(0.9)^n*u(n),输入序列x(n)=u(n)-u(n-10),求系统的输出y(n).实验二 系统响应及系统稳定性1.实验目的(1)掌握 求系统响应的方法。

(2)掌握时域离散系统的时域特性。

(3)分析、观察及检验系统的稳定性。

2.实验原理与方法在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。

数字信号处理实验文档

数字信号处理实验文档

实验一:离散信号的MATLAB实现一、实验目的:1、掌握离散时间信号的一般表示方法。

2、熟悉连续信号经理想采样后的频谱变化关系,加深对时域采样定理的理解。

3、掌握离散信号序列的操作。

二、实验内容:M1-1 已知g1(t)=cos(6*pi*t), g1(t)=co 14*pi*t), g1(t)=cos(26*pi*t),以抽样频率fsam=10Hz对上述三个信号进行抽样。

在同一张图上画出g1(t),g2(t)和g3(t)及其抽样点,对所得结果进行讨论。

解:代码如下:100:100)*1/100;g1t=cos(6*pi*t);g2t=cos(14*pi*t);g3t=cos(26*pi*t);subplot(3,1,1);plot(g1t);subplot(3,1,2);plot(g2t);subplot(3,1,3);plot(g3t);绘出的图形如图1_1所示:图1_1采样频率为fsam=10Hz,采样时间为0.1s,而f1=3Hz,f2=7Hz,f3=13Hz,使得三个信号的采样图形相似,这样不能很好还原原来的信号图像。

所以对信号的采样频率应足够大,应满足fsam>=2fm.M1-2利用MATLAB的filter函数,求出下列系统的单位脉冲响应,并判断系统是否稳定。

讨论题所获得的结果。

代码1:k=1:300;x=zeros(1,300);x(1)=1;b1=[1];a1=[1,-1.845,0.850586];y1=filter(b1,a1,x);subplot(1,2,1);plot(k,y1);xlabel('k');ylabel('幅度y1');b2=[1];a2=[1,-1.85,0.85];y2=filter(b2,a2,x);subplot(1,2,2);plot(k,y2);xlabel('k');ylabel('幅度y2');图1_2_1代码2:x=zeros(1,500);x(1)=1;b1=[1];a1=[1,-1.845,0.850586];y1=filter(b1,a1,x);plot(k,y1);b2=[1];a2=[1,-1.85,0.85];y2=filter(b2,a2,x);plot(k,y1,k,y2,':');xlabel('k');ylabel('幅度');legend('y1''y2');图1_2_2结论:H1(z)的两个极点都在单位圆内,所以系统稳定,从图中可以看出响应曲线升高后有回落,系统最终趋向于0;H2(z)的一个极点在单位圆内,另一个在单位圆上,所以系统最终临界稳定,从图中可以看出响应曲线上升后没有回落,系统最终趋向于6.7左右。

西电数字信号处理上机实验

西电数字信号处理上机实验

实验一1-1、a=[-2 0 1 -1 3];b=[1 2 0 -1];c=conv(a,b);M=length(c)-1;n=0:1:M;stem(n,c);xlabel('n');ylabel('幅度');title('离散卷积’);1-2、N=41;a=[0.8 -0.44 0.36 0.22]; b=[1 0.7 -0.45 -0.6];x=[1 zeros(1,N-1)];k=0:1:N-1;y=filter(a,b,x);stem(k,y)xlabel('n');ylabel('幅度'); title('差分方程');1-3、k=256;num=[0.8 -0.44 0.36 0.02];den=[1 0.7 -0.45 -0.6];w=0:pi/k:pi;h=freqz(num,den,w);subplot(2,2,1);plot(w/pi,real(h));gridtitle('实部');xlabel('\omega/\pi');ylabel('幅度'); subplot(2,2,2);plot(w/pi,imag(h));gridtitle('虚部');xlabel('\omega/\pi');ylabel('Amplitude'); subplot(2,2,3);plot(w/pi,abs(h));gridtitle('幅度谱');xlabel('\omega/\pi');ylabel('幅值'); subplot(2,2,4);plot(w/pi,angle(h));gridtitle('相位谱');xlabel('\omega/\pi');ylabel('弧度');实验二2-1、N=16;n=0:1:15;p=8;q=4;a=0.1;f=0.0625;xa=exp(-((n-p).^2)./q);figure(1)stem(n, xa,'.');title('xa(n)序列')xlabel('n')ylabel('xa(n)')grid on[H, w] = freqz(xa, 1, [], 'whole', 1); Hamplitude = abs(H);Hphase = angle(H);Hphase = unwrap(Hphase);figure(2)subplot(2, 1, 1)plot(w, Hamplitude)title('幅频响应')xlabel('w/(2*pi)')ylabel('|H(exp(jw))|') grid onsubplot(2, 1, 2)plot(w, Hphase)title('相频响应')xlabel('w/(2*pi)')ylabel('fai(H(exp(jw)))') grid on2-2、n=0:1:15;a=0.1;f1=0.0625;f2=0.04375;f3=0.05625;xb1=exp(-a*n).*sin(2*pi*f1*n);figuresubplot(3,2,1)stem(n, xb1,'.');title('f=0.0625的时域特性')xlabel('n')ylabel('xb1(n)')grid on[H, w] = freqz(xb1, 1, [], 'whole', 1); Hamplitude = abs(H);subplot(3,2,2)plot(w, Hamplitude)title('f=0.0625的幅频响应')xlabel('w/(2*pi)')ylabel('|H(exp(jw))|')grid onxb2=exp(-a*n).*sin(2*pi*f2*n);subplot(3,2,3)stem(n, xb2,'.');title('f=0.04375的时域特性')xlabel('n')ylabel('xb2(n)')grid on[H, w] = freqz(xb2, 1, [], 'whole', 1); Hamplitude = abs(H);subplot(3,2,4)plot(w, Hamplitude)title('f=0.04375的幅频响应')xlabel('w/(2*pi)')ylabel('|H(exp(jw))|')grid onxb3=exp(-a*n).*sin(2*pi*f3*n);subplot(3,2,5)stem(n, xb3,'.');title('f=0.05625的时域特性')xlabel('n')ylabel('xb3(n)')grid on[H, w] = freqz(xb3, 1, [], 'whole', 1); Hamplitude = abs(H);subplot(3,2,6)plot(w, Hamplitude)title('f=0.05625的幅频响应')xlabel('w/(2*pi)')ylabel('|H(exp(jw))|')grid on2-3、n1=0:1:3;xc1=n1+1;n2=4:7;xc2=8-n2;xc=[xc1,xc2];n =[n1,n2];figurestem(n,xc);xlabel('n'); ylabel('xc');title('三角序列');n1=0:1:3;xd1=4-n1;n2=4:7;xd2=n2-3;xd=[xd1,xd2];n =[n1,n2];figurestem(n,xd);xlabel('n'); ylabel('xd');title('反三角序列');N = 16;[H1,w1] = freqz(xc,1, 256, 'whole', 1); Hamplitude1 = abs(H1);figureplot(2*w1, Hamplitude1)title('xc幅频响应')xlabel('w/pi')ylabel('|H(exp(jw))|')grid on[H2,w2] = freqz(xd,1, 256, 'whole', 1); Hamplitude2 = abs(H2);figureplot(2*w2, Hamplitude2)title('xd幅频响应')xlabel('w/pi')ylabel('|H(exp(jw))|')grid on[H3, w3] = freqz(xc, 1, N, 'whole', 1); Hamplitude3 = abs(H3);figuresubplot(2, 1, 1)h3 = stem(2*w3, Hamplitude3, '*');title('xc幅频响应进行N点FFT’);xlabel('n')ylabel('|H(exp(jw))|')grid on[H4, w4] = freqz(xd, 1, N, 'whole', 1); Hamplitude4 = abs(H4);subplot(2, 1, 2)h4 = stem(2*w4, Hamplitude4, '*');title('xd幅频响应进行N点FFT');xlabel('n')ylabel('|H(exp(jw))|')grid on2-4、N = 128;f1 = 1/16;n = 0:N-1;xn = sin(2*pi*0.125.*n)+ cos(2*pi*(0.125+f1).*n); figurestem(n,xn);figuresubplot(2,1,1),plot(n,abs(fft(xn)));title('f =1/16 幅频响应');f2 = 1/64;xn = sin(2*pi*0.125.*n)+ cos(2*pi*(0.125+f2).*n); subplot(2,1,2),plot(n,abs(fft(xn)));title('f =1/64 幅频响应');2-5、N=16;n=0:1:15;p=8;q=2;a=0.1;f=0.0625;xa=exp(-((n-p).^2)./q);xb=exp(-a*n).*sin(2*pi*f*n);%线性卷积x=conv(xa,xb);XDft= fft(x, 32);XDftR = abs(XDft);XDftPhase = angle(XDft);XDftPhase = unwrap(XDftPhase);figure(1);stem(x,'.');title('x(n)序列');xlabel('n')ylabel('x(n)')grid onfigure(2)subplot(2, 1, 1)stem(XDftR, '.');title('X(k)的幅度’);xlabel('k')ylabel('|X(k)|')grid onsubplot(2, 1, 2)stem(XDftPhase, '.');title('X(k)的相角')xlabel('k')ylabel('fai((X(k)))')grid on%圆周卷积XDft161 = fft(xa, N);XDft16R1 = abs(XDft161);XDft16Phase1 = angle(XDft161);XDft16Phase1 = unwrap(XDft16Phase1); XDft162 = fft(xb, N);XDft16R2 = abs(XDft162);XDft16Phase2 = angle(XDft162);XDft16Phase2 = unwrap(XDft16Phase2); XDft16=XDft161.*XDft162;XDft16R=XDft16R1.*XDft16R2;XDft16Phase=XDft16Phase2 +XDft16Phase1 ; x = ifft(XDft16, N);figure(3)stem(x,'.')title('x(n)序列')xlabel('n')ylabel('x(n)')grid onfigure(4)subplot(2, 1, 1)t= 0 : 1 : N - 1;stem(t, XDft16R, '.');title('X(k)的幅度')xlabel('k')ylabel('|X(k)|')grid onsubplot(2, 1, 2)stem(t,XDft16Phase, '.');title('X(k)的相角')xlabel('k')ylabel('fai((X(k)))')grid on2-6、xe=rand(1,512);n1=0:1:3;xc1=n1+1;n2=4:7;xc2=8-n2;xc=[xc1,xc2];%重叠相加法yn=zeros(1,519);for j=0:7xj=xe(64*j+1:64*(j+1));xak=fft(xj,71);xck=fft(xc,71);yn1=ifft(xak.*xck);temp=zeros(1,519);temp(64*j+1:64*j+71)=yn1; yn=yn+temp;end;n=0:518;figure(1)subplot(2,1,1);plot(n,yn);xlabel('n');ylabel('y(n)');title('xc(n)与xe(n)的线性卷积的时域波形-重叠相加法'); subplot(2,1,2);plot(n,abs(fft(yn)));xlabel('k');ylabel('Y(k)');axis([0,600,0,300]);title('xc(n)Óëxe(n)的线性卷积的幅频特性-重叠相加法'); %重叠保留法k=1:7;xe1=k-k;xe_1=[xe1,xe];yn_1=zeros(1,519);for j=0:7xj_1=xe_1(64*j+1:64*j+71);xak_1=fft(xj_1);xck_1=fft(xc,71);yn1_1=ifft(xak_1.*xck_1);temp_1=zeros(1,519);temp_1(64*j+1:64*j+64)=yn1_1(8:71);yn_1=yn_1+temp_1;end;n=0:518;figure(2)subplot(2,1,1);plot(n,yn_1);xlabel('n');ylabel('y(n)');title(' xc(n)的线性卷积的时域波形-重叠保留法'); subplot(2,1,2);plot(n,abs(fft(yn_1)));xlabel('k');ylabel('Y(k)');axis([0,600,0,300]);title('xc(n)Óëxe(n)的线性卷积的幅频特性-重叠保留法');实验三3-1、Wp=0.3;Ws=0.2;Rp=0.8;Rs=20;[N,Wpo]=cheb1ord(Wp,Ws,Rp,Rs);[Bz,Az]=cheby1(N,Rp,Wpo,'high');w=0:0.1:pi;[H,w1]=freqz(Bz,Az,w);H=20*log10(abs(H));plot(w/pi,H),grid onxlabel('\omega/\pi');ylabel('|H(e^j^\omega)|/dB') title('Chebyshev高通滤波器');3-2、Wp=0.2;Ws=0.3;Rp=1;Rs=25;[N,Wc]=buttord(Wp,Ws,Rp,Rs);[Bs,As]=butter(N,Wc,'s');[Bz,Az]=impinvar(Bs,As);w=0:0.1:pi;[H,w1]=freqz(Bz,Az,w);H=20*log10(abs(H));subplot(211);plot(w/pi,H),grid onxlabel('\omega/\pi');ylabel('|H(e^j^\omega)|/dB') title('脉冲响应不变法')[N,Wc]=buttord(Wp,Ws,Rp,Rs);[Bz,Az]=butter(N,Wc);w=0:0.1:pi;[H,w1]=freqz(Bz,Az,w);H=20*log10(abs(H));subplot(212);plot(w/pi,H),grid onxlabel('\omega/\pi');ylabel('|H(e^j^\omega)|/dB') title('双线性变换法')3-3、Wp=1.2/8;Ws=2/8;Rp=0.5;Rs=40;[N,Wpo]=cheb1ord(Wp,Ws,Rp,Rs);[Bz,Az]=cheby1(N,Rp,Wpo);w=0:0.1:pi;[H,w1]=freqz(Bz,Az,w);H=20*log10(abs(H));subplot(311);plot(w/pi,H),grid onxlabel('\omega/\pi');ylabel('|H(e^j^\omega)|/dB') title('切比雪夫')[N,Wc]=buttord(Wp,Ws,Rp,Rs);[Bz,Az]=butter(N,Wc);w=0:0.1:pi;[H,w1]=freqz(Bz,Az,w);H=20*log10(abs(H));subplot(312);plot(w/pi,H),grid onxlabel('\omega/\pi');ylabel('|H(e^j^\omega)|/dB') title('巴特沃斯')[N,Wpo]=ellipord(Wp,Ws,Rp,Rs);[Bz,Az]=ellip(N,Rp,Rs,Wpo);w=0:0.1:pi;[H,w1]=freqz(Bz,Az,w);H=20*log10(abs(H));subplot(313);plot(w/pi,H),grid ontitle('椭圆')xlabel('\omega/\pi');ylabel('|H(e^j^\omega)|/dB')3-4、Wp1=2/15;Wpu=0.2;Ws1=0.1;Wsu=0.4;Rp=3;Rs=20;Wp=[Wp1,Wpu];Ws=[Ws1,Wsu];[N,Wc]=buttord(Wp,Ws,Rp,Rs);[Bz,Az]=butter(N,Wc);w=0:0.1:pi;[H,w1]=freqz(Bz,Az,w);H=20*log10(abs(H));plot(w/pi,H),grid onxlabel('\omega/\pi');ylabel('|H(e^j^\omega)|/dB') title('双线性变换法Butterworth型数字带通滤波器')。

数字信号处理实验全部程序MATLAB

数字信号处理实验全部程序MATLAB

实验一熟悉MATLAB环境一、实验目的(1)熟悉MATLAB的主要操作命令。

(2)学会简单的矩阵输入和数据读写。

(3)掌握简单的绘图命令。

(4)用MATLAB编程并学会创建函数。

(5)观察离散系统的频率响应。

二、实验内容认真阅读本章附录,在MATLAB环境下重新做一遍附录中的例子,体会各条命令的含义。

在熟悉了MATLAB基本命令的基础上,完成以下实验。

上机实验内容:(1)数组的加、减、乘、除和乘方运算。

输入A=[1 2 3 4],B=[3 4 5 6],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B并用stem语句画出A、B、C、D、E、F、G。

实验程序:A=[1 2 3 4];B=[3 4 5 6];n=1:4;C=A+B;D=A-B;E=A.*B;F=A./B;G=A.^B;subplot(4,2,1);stem(n,A,'fill');xlabel ('时间序列n');ylabel('A');subplot(4,2,2);stem(n,B,'fill');xlabel ('时间序列n ');ylabel('B'); subplot(4,2,3);stem(n,C,'fill');xlabel ('时间序列n ');ylabel('A+B'); subplot(4,2,4);stem(n,D,'fill');xlabel ('时间序列n ');ylabel('A-B'); subplot(4,2,5);stem(n,E,'fill');xlabel ('时间序列n ');ylabel('A.*B'); subplot(4,2,6);stem(n,F,'fill');xlabel ('时间序列n ');ylabel('A./B'); subplot(4,2,7);stem(n,G,'fill');xlabel ('时间序列n ');ylabel('A.^B');运行结果:(2)用MATLAB实现以下序列。

数字信号处理实验代码-实验一二三

数字信号处理实验代码-实验一二三

%实验一第一题A=[1 2 3 4 ];B=[3 4 5 6 ];C=A+B;D=A-B;E=A.*B;F=A./B;G=A.^B;%a.^b,是a中每个元素b次方,形成的新矩阵subplot(2,4,1)%两行四列第一个stem(A);title('A');%标题subplot(2,4,2)stem(B);title('B');subplot(2,4,3)stem(C);title('C');subplot(2,4,4)stem(D);title('D');subplot(2,4,5)stem(E);title('E');subplot(2,4,6)stem(F);title('F');subplot(2,4,7)stem(G);title('G');%实验一第二题n=0:1:15;x1=0.8.^n;%求n次方x2=exp((0.2+3j)*n);%虚数jx3=3*cos(0.125*pi*n+0.2*pi)+2*sin(0.25*pi* n+0.1*pi);N=0:1:63;x4=3*cos(0.125*pi*rem(N,16)+0.2*pi)+2*sin (0.25*pi*rem(N,16)+0.1*pi);%以16为周期进行延拓N2=0:1:39;x5=3*cos(0.125*pi*rem(N2,10)+0.2*pi)+2*si n(0.25*pi*rem(N2,10)+0.1*pi);%以10为周期进行延拓figure(1) ;stem(n,x3);title('x(n)');%标题figure(2) ;subplot(2,1,1);stem(N,x4);title('x(n)以16为周期进行周期延拓'); subplot(2,1,2);stem(N2,x5);title('x(n)以10为周期进行周期延拓');第三题n=0:1:3;x=[1 -1 3 5 ];%circshift矩阵循环平移,[a,b],a是列向移动,b 是行向移动x1=2*circshift(x,[0 -2]);x2=x1-circshift(x,[0 1]);X1=x2+2*x;y1=circshift(x,[0 1]);y2=circshift(x,[0 2]);y3=circshift(x,[0 3]);y4=circshift(x,[0 4]);y5=circshift(x,[0 5]);X2=1*y1+2*y2+3*y3+4*y4+5*y5;subplot(2,1,1);stem(n,X1);title('x1(n)=2*x(n+2)-x(n-1)-2*x( n)');xlabel('n');ylabel('x1(n)');subplot(2,1,2);stem(n,X2);title('x2(n)=1*x(n-1)+2*x(n-2)+3 *x(n-3)+4*x(n-4)+5*x(n-5)');xlabel('n');ylabel('x2(n)');第四题function stepshift(n0,n1,n2)n1=input('请输入起点:');n2=input('请输入终点:');n=n1:n2;n0=input('请输入原点:');y=[(n-n0)>=0];%当逻辑值(n-n0)>=0为真的时候,y=1stem(n,y);xlabel('序列值n');ylabel('函数值');title('函数stepshift(n0,n1,n2)');第五题B=[1 sqrt(2) 1];A=[1 -0.67 0.9];[H,w]=freqz(B,A);%离散系统频率响应的函数fregz()fp=20*log(abs(H));%幅频响应xp=angle(H);%相频响应subplot(2,1,1);plot(w,fp);title('幅频响应');xlabel('时间/t');ylabel('幅频响应/dB'); subplot(2,1,2);plot(w,fp);title('相频响应');xlabel('时间/t');ylabel('相频响应');第六题h=[8 -2 -1 2 3 ];x=[2 3 -1 -3 ];n=0:7;y=conv(h,x);%h和x的卷积,结果放在y里stem(n,y);title('[8 -2 -1 2 3 ]与[2 3 -1 -3 ]的离散卷积');第七题n=0:1:30;u=[n>=0];A=[1 0.1 -0.06];B=[1 -2];h=impz(B,A,n);subplot(2,1,1);stem(n,h);title('单位脉冲响应');subplot(2,1,2);y=zplane(B,A);title('零极点图');实验二第一题f1=50;f2=500;f3=1000;f=8000;n=0:299;y=sin(f1/f*2*pi*n)+sin(f2/f*2*pi*n)+sin(f3/f* 2*pi*n);stem(n,y);title('抽样信号');xlabel('n');ylabel('幅值');[h,w]=freqz(y);figure(2);plot(w(1:299),abs(h(1:299)));title('幅频响应');xlabel('角度');ylabel('幅度');第二题f1=50;f2=500;f3=1000;f=800;n=0:99;y=sin(f1/f*2*pi*n)+sin(f2/f*2*pi*n)+sin(f3/f* 2*pi*n);stem(n,y);title('抽样信号');xlabel('n');ylabel('幅值');[h,w]=freqz(y);figure(2);plot(w(1:499),abs(h(1:499)));title('幅频响应');xlabel('角度');ylabel('幅度');第三题一f=1;fs=16;N=52;n=0:N-1;x=cos(2*pi*(f/fs)*n);subplot(1,2,1);stem(n,x(1:N));title('原信号');xlabel('n');ylabel('幅度');[h,w]=freqz(x);subplot(1,2,2);plot(w(1:499),abs(h(1:499)));title('原信号幅频响应');xlabel('角度');ylabel('幅度');M=4;y=decimate(x,M);%抽取m=0:N/M-1;figure(2);subplot(1,2,1);stem(m,y(1:N/M));title('抽取信号');xlabel('n');ylabel('幅度');[h1,w1]=freqz(y);subplot(1,2,2);plot(w1(1:499),abs(h1(1:499)));title('抽取信号幅频响应');xlabel('角度');ylabel('幅度');第三题二f=1;fs=16;N=52;n=0:N-1;x=cos(2*pi*(f/fs)*n);subplot(1,2,1);stem(n,x(1:N));title('原信号');xlabel('n');ylabel('幅度');[h,w]=freqz(x);subplot(1,2,2);plot(w(1:499),abs(h(1:499))); title('原信号幅频响应');xlabel('角度');ylabel('幅度');L=3;y=interp(x,L);%插值l=0:N*L-1;figure(2);subplot(1,2,1);stem(l,y(1:N*L));title('插值信号');xlabel('n');ylabel('幅度');[h1,w1]=freqz(y);subplot(1,2,2);plot(w1(1:499),abs(h1(1:499))); title('插值信号幅频响应'); xlabel('角度');ylabel('幅度');第四题f1=0.04;f2=0.3;N=50;M=3;L=5;n=0:N-1;x=sin(f1*2*pi*n)+sin(f2*2*pi*n); subplot(1,2,1);stem(n,x(1:N));title('输入信号');xlabel('n');ylabel('幅度');y=resample(x,L,M);subplot(1,2,2);[h,w]=freqz(x);plot(w(1:499),abs(h(1:499))); title('输入信号幅频响应'); xlabel('角度');ylabel('幅度');figure(2);subplot(1,2,1);stem(n,y(1:N)); title('输出信号');xlabel('n');ylabel('幅度');subplot(1,2,2);[h,w]=freqz(y);plot(w(1:499),abs(h(1:499)));title('输出信号幅频响应');xlabel('角度');ylabel('幅度');第五题[y,fs]=audioread('1.wav');fs1=48000;fs2=32000;fs3=22050;fs4=1600 0;fs5=8000;audiowrite('2.wav',y,fs1);y1=resample(y,12,11);plot(y1);title('采样频率为48kHz时的时频图'); audiowrite('3.wav',y,fs2);y2=resample(y,8,11);figure(2);plot(y2);title('采样频率为32kHz时的时频图'); audiowrite('4.wav',y,fs3);y3=resample(y,1,2);figure(3);plot(y3);title('采样频率为22.05kHz时的时频图'); audiowrite('5.wav',y,fs4);y4=resample(y,4,11);figure(4);plot(y4);title('采样频率为16kHz时的时频图'); audiowrite('6.wav',y,fs5);y5=resample(y,2,11);figure(5);plot(y5);title('采样频率为8kHz时的时频图');第六题fs1=44100;[x,fs]=audioread('21.wav');subplot(2,1,1);plot(x);title('采样频率为11kHz时的时频图'); audiowrite('22.wav',x,fs1);y=resample(x,4,1);subplot(2,1,2);plot(y);title('采样频率为44.1kHz时的时频图');实验三第一题一%观察高斯序列的时域和幅频特性%固定参数p=8,分别使q=2、4、8n=0:1:15;p=8;q=2;x=exp(-(n-p).^2/q);%高斯序列y=fft(x);subplot(3,2,1);plot(x);title('p=8,q=2');xlabel('n');ylabel('时域特性'); subplot(3,2,2);plot(abs(y));title('p=8,q=2');xlabel('n');ylabel('幅频特性'); p=8;q=4;x=exp(-(n-p).^2/q);%高斯序列y=fft(x);subplot(3,2,3);plot(x);title('p=8,q=4');xlabel('n');ylabel('时域特性'); subplot(3,2,4);plot(abs(y));title('p=8,q=4');xlabel('n');ylabel('幅频特性'); p=8;q=8;x=exp(-(n-p).^2/q);%高斯序列y=fft(x);subplot(3,2,5);plot(x);title('p=8,q=8');xlabel('n');ylabel('时域特性'); subplot(3,2,6);plot(abs(y));title('p=8,q=8');xlabel('n');ylabel('幅频特性');第一题二%观察高斯序列的时域和幅频特性%固定参数q=8,分别使p=8、13、14n=0:1:15;p=8;q=8;x=exp(-(n-p).^2/q);%高斯序列y=fft(x);subplot(3,2,1);plot(x);title('p=8,q=8');xlabel('n');ylabel('时域特性'); subplot(3,2,2);plot(abs(y));title('p=8,q=8');xlabel('n');ylabel('幅频特性'); p=13;q=8; x=exp(-(n-p).^2/q);%高斯序列y=fft(x);subplot(3,2,3);plot(x);title('p=13;q=8');xlabel('n');ylabel('时域特性');subplot(3,2,4);plot(abs(y));title('p=13;q=8');xlabel('n');ylabel('幅频特性');p=14;q=8;x=exp(-(n-p).^2/q);%高斯序列y=fft(x);subplot(3,2,5);plot(x);title('p=14,q=8');xlabel('n');ylabel('时域特性');subplot(3,2,6);plot(abs(y));title('p=14,q=8');xlabel('n');ylabel('幅频特性');第二题%观察衰减正弦序列的时域和幅频特性a=0.1,f=0.0625%改变f=0.4375、0.5625n=0:1:15;a=0.1;f=0.0625;x=exp(-a*n).*sin(2*pi*f*n);%衰减正弦序列y=fft(x);subplot(3,2,1);plot(x);title('a=0.1,f=0.0625');xlabel('n');ylabel('时域特性');subplot(3,2,2);plot(abs(y));title('a=0.1,f=0.0625');xlabel('n');ylabel('幅频特性');a=0.1;f=0.4375;x=exp(-a*n).*sin(2*pi*f*n);%衰减正弦序列y=fft(x);subplot(3,2,3);plot(x);title('a=0.1,f=0.4375');xlabel('n');ylabel('时域特性');subplot(3,2,4);plot(abs(y));title('a=0.1,f=0.4375');xlabel('n');ylabel('幅频特性');a=0.1;f=0.5625;x=exp(-a*n).*sin(2*pi*f*n);%衰减正弦序列y=fft(x);subplot(3,2,5);plot(x);title('a=0.1,f=0.5625');xlabel('n');ylabel('时域特性');subplot(3,2,6);plot(abs(y));title('a=0.1,f=0.5625');xlabel('n');ylabel('幅频特性');第三题N=8;n=0:1:7;xc=zeros(size(n));xd=zeros(size(n));x=(n>=0)&(n<=3);xc(x)=n(x);xd(x)=4-n(x); x=(n>=4)&(n<=7);xc(x)=8-n(x);xd(x)=n(x)-4;y1=fft(xc,N);y2=fft(xd,N);subplot(2,2,1);stem(n,xc,'-');title('三角波');xlabel('n');ylabel('时域特性'); subplot(2,2,2);stem(n,abs(y1),'-');title('三角波');xlabel('n');ylabel('幅频特性'); subplot(2,2,3);stem(n,xd,'*');title('反三角波');xlabel('n');ylabel('时域特性');subplot(2,2,4);stem(n,abs(y2),'*');title('反三角波');xlabel('n');ylabel('幅频特性');N=32;n=0:1:31;xc=zeros(size(n));xd=zeros(size(n));x=(n>=0)&(n<=3);xc(x)=n(x);xd(x)=4-n(x); x=(n>=4)&(n<=7);xc(x)=8-n(x);xd(x)=n(x)-4;x=(n>=8)&(n<=31);xc(x)=0;xd(x)=0;y1=fft(xc,N);y2=fft(xd,N);figure(2);subplot(2,2,1);stem(n,xc,'-');title('三角波');xlabel('n');ylabel('时域特性'); subplot(2,2,2);stem(n,abs(y1),'-');title('三角波');xlabel('n');ylabel('幅频特性'); subplot(2,2,3);stem(n,xd,'*');title('反三角波');xlabel('n');ylabel('时域特性');subplot(2,2,4);stem(n,abs(y2),'*');title('反三角波');xlabel('n');ylabel('幅频特性'); 第四题N=16;f1=1/16;f2=1/64;n=0:1:N-1;x1=sin(2*pi*0.125*n)+cos(2*pi*(0.125+f1)*n );x2=sin(2*pi*0.125*n)+cos(2*pi*(0.125+f2)* n);y1=fft(x1,N);y2=fft(x2,N);subplot(2,2,1);stem(n,x1,'-');title('N=16,f=1/16');xlabel('n');ylabel('时域特性');subplot(2,2,2);stem(n,abs(y1),'-');title('N=16,f=1/16');xlabel('n');ylabel('幅频特性');subplot(2,2,3);stem(n,x2,'*');title('N=16,f=1/64');xlabel('n');ylabel('时域特性');subplot(2,2,4);stem(n,abs(y2),'*');title('N=16,f=1/64');xlabel('n');ylabel('幅频特性');N=128;f1=1/16;f2=1/64;n=0:1:N-1;x1=sin(2*pi*0.125*n)+cos(2*pi*(0.125+f1)*n );x2=sin(2*pi*0.125*n)+cos(2*pi*(0.125+f2)* n);y1=fft(x1,N);y2=fft(x2,N);figure(2);subplot(2,2,1);stem(n,x1,'-');title('N=128,f=1/16');xlabel('n');ylabel('时域特性');subplot(2,2,2);stem(n,abs(y1),'-');title('N=128,f=1/16');xlabel('n');ylabel('幅频特性');subplot(2,2,3);stem(n,x2,'*');title('N=128,f=1/64');xlabel('n');ylabel('时域特性');subplot(2,2,4);stem(n,abs(y2),'*');title('N=128,f=1/64');xlabel('n');ylabel('幅频特性');第五题n1=0:1:15;n2=0:1:30;p=8;q=2;x1=exp(-(n1-p).^2/q);%高斯序列a=0.1;f=0.0625;x2=exp(-a*n1).*sin(2*pi*f*n1);f1=fft(x1);f2=fft(x2);y1=f1.*f2;%圆周卷积y2=conv(x1,x2);%线性卷积subplot(2,2,1);stem(n1,x1,'-');title('高斯序列');xlabel('n');ylabel('时域特性');subplot(2,2,2);stem(n1,x2,'-');title('衰减正弦序列');xlabel('n');ylabel('时域特性');subplot(2,2,3);stem(n1,real(y1),'*');title('16点的循环卷积');xlabel('n');ylabel('幅频特性');subplot(2,2,4);stem(n2,real(y2),'*');title('线性卷积');xlabel('n');ylabel('幅频特性');第六题第七题n1=0:1:15;n2=0:1:30;p=8;q=2;xa=exp(-(n1-p).^2/q);%高斯序列a=0.1;f=0.0625;xb=exp(-a*n1).*sin(2*pi*f*n1);%衰减正弦f1=fft(xa);f2=fft(xb); ya1=f1.*f1;%xa(n)的圆周卷积ya2=conv(xa,xa);%线性卷积yb1=f2.*f2;%xb(n)的圆周卷积yb2=conv(xb,xb);%线性卷积subplot(2,2,1);stem(n1,real(ya1),'-'); title('xa(n)的循环相关');xlabel('n');ylabel('幅频特性'); subplot(2,2,2);stem(n2,real(ya2),'-'); title('xa(n)的线性相关');xlabel('n');ylabel('幅频特性'); subplot(2,2,3);stem(n1,real(yb1),'*'); title('xb(n)的循环相关');xlabel('n');ylabel('幅频特性'); subplot(2,2,4);stem(n2,real(yb2),'*'); title('xb(n)的线性相关');xlabel('n');ylabel('幅频特性');第八题N=16;n=0:1:N-1;p=8;q=2;x1=exp(-(n-p).^2/q);%高斯序列xk1=fft(x1,2*N);rm1=real(ifft(conj(xk1).*xk1));%自相关rm1=[rm1(N+2:2*N) rm1(1:N)];m1=(-N+1):(N-1);stem(m1,rm1);title('xa(n)的自相关函数');xlabel('m');ylabel('幅度');a=0.1;f=0.0625;x2=exp(-a*n).*sin(2*pi*f*n);%衰减正弦序列figure(2);xk2=fft(x2,2*N);rm2=real(ifft(conj(xk2).*xk2));%自相关rm2=[rm2(N+2:2*N) rm2(1:N)];%对称m2=(-N+1):(N-1);%坐标轴stem(m2,rm2);title('xb(n)的自相关函数');xlabel('m');ylabel('幅度');。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

文件名:tstem.m(实验一、二需要)程序:f unction tstem(xn,yn)%时域序列绘图函数%xn:被绘图的信号数据序列,yn:绘图信号的纵坐标名称(字符串)n=0:length(xn)-1;stem(n,xn,'.');xlabel('n');ylabel('yn');axis([0,n(end),min(xn),1.2*max(xn)]);文件名:tplot.m(实验一、四需要)程序:function tplot(xn,T,yn)%时域序列连续曲线绘图函数%xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串)%T为采样间隔n=0;length(xn)-1;t=n*T;plot(t,xn);xlabel('t/s');ylabel(yn);axis([0,t(end),min(xn),1.2*max(xn)]);文件名:myplot.m(实验一、四需要)%(1)myplot;计算时域离散系统损耗函数并绘制曲线图。

function myplot(B,A)%B为系统函数分子多项式系数向量%A为系统函数分母多项式系数向量[H,W]=freqz(B,A,1000)m=abs(H);plot(W/pi,20*log10(m/max(m)));grid on;xlabel('\omega/\pi');ylabel('幅度(dB)')axis([0,1,-80,5]);title('损耗函数曲线');文件名:mstem.m(实验一、三需要)程序:function mstem(Xk)%mstem(Xk)绘制频域采样序列向量Xk的幅频特性图M=length(Xk);k=0:M-1;wk=2*k/M;%产生M点DFT对应的采样点频率(关于pi归一化值)stem(wk,abs(Xk),'.');box on;%绘制M点DFT的幅频特性图xlabel('w/\pi');ylabel('幅度');axis([0,2,0,1.2*max(abs(Xk))]);文件名:mpplot.m(实验一需要)%(2)mpplot;计算时域离散系统损耗函数和相频特性函数,并绘制曲线图。

function mpplot(B,A,Rs)%mpplot(B,A,Rs)%时域离散系统损耗函数和相频特性绘图%B为系统函数分子多项式系数向量%A为系统函数分母多项式系数向量%Rs为滤波器阻带最小衰减,省略则幅频曲线最小值取-80dBif nargin<3 ymin=-80;else ymin=-Rs-20;end;%确定幅频曲线纵坐标最小值[H,W]=[H,W]=freqz(B,A,1000)m=abs(H);subplot(2,2,1);plot(W/pi,20*log10(m/max(m)));grid on;xlabel('\omega/\pi');ylabel('幅度(dB)')axis([0,1,ymin,5]);title('损耗函数曲线');subplot(2,2,3);plot(W/pi,p/pi);xlabel('\omega/\pi');ylabel('相位/\pi');grid on;title('(b)相频特性曲线');文件名:mfftplot.m(实验一需要)function mfftplot(xn,N)%mfftplot(xn,N)计算序列向量xn的N点fft并绘制其幅频特性曲线Xk=fft(xn,N);%计算信号xn的频谱的N点采样%===以下为绘图部分====k=0:N-1;wk=2*k/N;m=abs(Xk);mm=max(m);plot(wk,m/mm);grid on;xlabel('\omega/\pi');ylabel('幅度(dB)');axis([0,2,0,1.2]);title('幅度特性曲线');文件名:mstg.m(实验四需要)程序:function st=mstg%产生信号序列向量st,并显示st的时域波形和频谱%st=mstg 返回三路调幅信号相加形成的混合信号,长度N=1600 N=1600; %N为信号st的长度Fs=10000;T=1/Fs;Tp=N*T; %采样频率Fs=10kHz,Tp为采样时间t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;fc1=Fs/10; %第1路调幅信号的载波频率fc1=1000Hzfm1=fc1/10; %第1路调幅信号的调制信号频率fm1=100Hzfc2=Fs/20; %第2路调幅信号的载波频率fc2=500Hzfm2=fc2/10; %第2路调幅信号的调制信号频率fm2=50Hz fc3=Fs/40; %第3路调幅信号的载波频率fc3=250Hzfm3=fc3/10; %第3路调幅信号的调制信号频率fm3=25Hz xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); %产生第1路调幅信号xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第2路调幅信号xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第3路调幅信号st=xt1+xt2+xt3; %三路调幅信号相加fxt=fft(st,N); %计算信号st的频谱%====以下为绘图部分,绘制st的时域波形和幅频特性曲线==== subplot(3,1,1);plot(t,st);grid;xlabel('t/s');ylabel('s(t)');axis([0,Tp/8,min(st),max(st)]);title('(a) s(t)的波形'); subplot(3,1,2);stem(f,abs(fxt)/max(abs(fxt)),'.');grid;title('(b) s(t)的频谱'); axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度');文件名:xtg.m(实验五需要)程序:function xt=xtg(N)%实验五信号x(t)产生,并显示信号的幅频特性曲线%xt=xtg(N) 产生一个长度为N,有加性高频噪声的单频调幅信号xt,采样频率Fs=1000Hz%载波频率fc=Fs/10=100Hz,调制正弦波频率f0=fc/10=10Hz. Fs=1000;T=1/Fs;Tp=N*T;t=0:T:(N-1)*T;fc=Fs/10;f0=fc/10; %载波频率fc=Fs/10,单频调制信号频率为f0=Fc/10;mt=cos(2*pi*f0*t); %产生单频正弦波调制信号mt,频率为f0 ct=cos(2*pi*fc*t); %产生载波正弦波信号ct,频率为fcxt=mt.*ct; %相乘产生单频调制信号xtnt=2*rand(1,N)-1; %产生随机噪声nt%设计高通滤波器hn,用于滤除噪声nt中的低频成分,生成高通噪声%========================fp=150; fs=200;Rp=0.1;As=70; % 滤波器指标fb=[fp,fs];m=[0,1]; % 计算remezord函数所需参数f,m,devdev=[10^(-As/20),(10^(Rp/20)-1)/(10^(Rp/20)+1)];[n,fo,mo,W]=remezord(fb,m,dev,Fs); % 确定remez函数所需参数hn=remez(n,fo,mo,W); % 调用remez函数进行设计,用于滤除噪声nt中的低频成分yt=filter(hn,1,10*nt); %滤除随机噪声中低频成分,生成高通噪声ytxt=xt+yt; %噪声加信号fst=fft(xt,N);k=0:N-1;f=k/Tp;subplot(3,1,1);plot(t,xt);grid;xlabel('t/s');ylabel('x(t)');axis([0,Tp/5,min(xt),max(xt)]);title('(a) 信号加噪声波形') subplot(3,1,2);plot(f,abs(fst)/max(abs(fst)));grid;title('(b) 信号加噪声的频谱')axis([0,Fs/2,0,1.2]);xlabel('f/Hz');ylabel('幅度')10.1 系统响应及系统稳定性close all;clear all;clc;%内容1:调用filter解差分方程,由系统对u(n)的响应判断稳定性%========================A=[1,-0.9];B=[0.05,0.05]; %系统差分方程系数向量B和Ax1n=[1 1 1 1 1 1 1 1 zeros(1,50)]; %产生信号x1(n)=R8(n)x2n=ones(1,128); %产生信号x2(n)=u(n)hn=impz(B,A,58); %求系统单位脉冲响应h(n)subplot(2,2,1);y='h(n)';tstem(hn,y); %调用函数tstem绘图title('(a) 系统单位脉冲响应h(n)');box ony1n=filter(B,A,x1n); %求系统对x1(n)的响应y1(n)subplot(2,2,2);y='y1(n)';tstem(y1n,y);title('(b) 系统对R8(n)的响应y1(n)');box ony2n=filter(B,A,x2n); %求系统对x2(n)的响应y2(n)subplot(2,2,4);y='y2(n)';tstem(y2n,y);title('(c) 系统对u(n)的响应y2(n)');box on%内容2:调用conv函数计算卷积%========================x1n=[1 1 1 1 1 1 1 1 ]; %产生信号x1(n)=R8(n)h1n=[ones(1,10) zeros(1,10)];h2n=[1 2.5 2.5 1 zeros(1,10)];y21n=conv(h1n,x1n);y22n=conv(h2n,x1n);figure(2)subplot(2,2,1);y='h1(n)';tstem(h1n,y); %调用函数tstem绘图title('(d) 系统单位脉冲响应h1(n)');box onsubplot(2,2,2);y='y21(n)';tstem(y21n,y);title('(e) h1(n)与R8(n)的卷积y21(n)');box onsubplot(2,2,3);y='h2(n)';tstem(h2n,y); %调用函数tstem绘图title('(f) 系统单位脉冲响应h2(n)');box onsubplot(2,2,4);y='y22(n)';tstem(y22n,y);title('(g) h2(n)与R8(n)的卷积y22(n)');box on%内容3:谐振器分析%========================un=ones(1,256); %产生信号u(n)n=0:255;xsin=sin(0.014*n)+sin(0.4*n); %产生正弦信号A=[1,-1.8237,0.9801];B=[1/100.49,0,-1/100.49]; %系统差分方程系数向量B和Ay31n=filter(B,A,un); %谐振器对u(n)的响应y31(n)y32n=filter(B,A,xsin); %谐振器对u(n)的响应y31(n)figure(3)subplot(2,1,1);y='y31(n)';tstem(y31n,y);title('(h) 谐振器对u(n)的响应y31(n)');box onsubplot(2,1,2);y='y32(n)';tstem(y32n,y);title('(i) 谐振器对正弦信号的响应y32(n)');box on10.2 时域采样与频域采样时域采样理论验证程序exp2a.m:%========================close all;clear all;clc;Tp=64/1000; %观察时间Tp=64微秒%产生M长采样序列x(n)% Fs=1000;T=1/Fs;Fs=1000;T=1/Fs;M=Tp*Fs;n=0:M-1;A=444.128;alph=pi*50*2^0.5;omega=pi*50*2^0.5;xnt=A*exp(-alph*n*T).*sin(omega*n*T);Xk=T*fft(xnt,M); %M点FFT[xnt)]yn='xa(nT)';subplot(3,2,1);tstem(xnt,yn); %调用自编绘图函数tstem绘制序列图box on;title('(a) Fs=1000Hz');k=0:M-1;fk=k/Tp;subplot(3,2,2);plot(fk,abs(Xk));title('(a)T*FT[xa(nT)],Fs=1000Hz');xlabel('f(Hz)');ylabel('幅度');axis([0,Fs,0,1.2*max(abs(Xk))])%========================% Fs=300Hz和Fs=200Hz的程序与上面Fs=1000Hz完全相同。

相关文档
最新文档