Advertisement

数字信号处理实验matlab,数字信号处理实验Matlab代码

阅读量:

%x(n)的[0~6*pi]DTFT

clc;clear;

xn=[1,1,1,1];

N=4;

M=1000;

w=6pi/M[0:M-1];

Xejw=dtft(xn,w)

plot(w/pi,abs(Xejw));

title('R4(n)的DTFT波形图');

xlabel('w/pi');

ylabel('幅度');

grid on

%x(n)X(k)与X(ejw)比较

clc;clear;

N1=4;

N2=32;

xn=[1,1,1,1];

k1=(2pi/N1)[0:N1-1];

k2=(2pi/N2)[0:N2-1];

xn=[xn,zeros(1,N1-length(xn))];

Xk=dft(xn,N1);

%x(n)的4点DFT

subplot(221);

stem(k1/pi,abs(Xk));

title('X(k) n=4点DFT');

xlabel('w/pi');

ylabel('幅度');

grid on

M=1000;

w=2pi/M[0:M-1];

Xejw=dtft(xn,w);

%x(n)的4点DTFT

subplot(222);

plot(w/pi,abs(Xejw));

title('X(ejw) n=4DTFT');

xlabel('w/pi');

ylabel('幅度');

grid on

xn=[xn,zeros(1,N2-length(xn))];

Xk1=dft(xn,N2);

%x(n)的32点DFT

subplot(223);

stem(k2/pi,abs(Xk1));

title('X1(k) n=32点补零后DFT');

xlabel('w/pi');

ylabel('幅度');

grid on

Xejw1=dtft(xn,w);

%x(n)的32点DTFT

subplot(224);

plot(w/pi,abs(Xejw1));

title('X1(ejw)n=32补零后DTFT');

xlabel('w/pi');

ylabel('幅度');

grid on

clc,clear;

%%%%%%%%%xt信号

t=-0.5:0.001:0.5;

f1=5;

f2=30;

N=64;%采样点数

Fs=64;%采样频率

Ts=1/Fs;

figure(1);

subplot(221);

xt=sin(2pif1t)+0.5cos(2pif2*t);

plot(t,xt);

title('xt的时域波形图');

xlabel('t');

ylabel('xt');

grid on

%%%%%%%%xt频谱信号

F=Fs/N;%采样分辨率

Tp=1/F;%观察时间

t=0:Ts:Tp-Ts;

xt=sin(2pif1t)+0.5cos(2pif2*t);

k=0:N-1;

wk=2pi/Nk;%k对应的数字频率

Xk=fft(xt,N);

Xk=Ts*Xk;

subplot(222);

为了防止幅度值因变换区间N的变化而导致的问题,在绘图过程中应将幅度值进行归一化处理。

title('xt的频谱图');

xlabel('wk/pi');

ylabel('Xk');

grid on

%%%%%%%%低通数字滤波器损耗函数

wpz=0.2;%通、阻带截止频率

wsz=0.3;

wp=2/Tstan(wpzpi/2);%边界频率转换关系

ws=2/Tstan(wszpi/2);

rp=1;%通、阻带衰减

rs=15;

[N,wc]=buttord(wp,ws,rp,rs,'s');%调用函数直接涉及数字滤波器

[B,A]=butter(N,wc,'s');

[Bz,Az]=bilinear(B,A,Fs);

[H,w]=freqz(Bz,Az,N);

subplot(223);

plot(w/pi,20*log10(abs(H)/max(abs(H)))); % DF损耗函数的绘制。

title('低通数字滤波器损耗函数');

xlabel('w/pi');

ylabel('幅度/dB');

grid on;

%%%%%%%%xt滤波时域图

subplot(224);

yt=filter(Bz,Az,xt);

plot(t,yt);

title('xt滤波后波形图');

xlabel('t');

ylabel('yt');

grid on

clc,clear

%%%%%%%%%FDM信号

f1=30;f2=60;f3=120;

F1=300;F2=600;F3=1200;

Fs=4096;

Ts=1/Fs;

N=2048;

t=0:Ts:(N-1)*Ts;

st1=cos(2pif1t).cos(2piF1*t);

st2=cos(2pif2t).cos(2piF2*t);

st3=cos(2pif3t).cos(2piF3*t);

st=st1+st2+st3;

figure(1)

subplot(2,1,1);

plot(t,st);

title('FDM复用信号时域波形图');

grid on

%%%%%%%%st频谱信号

F=Fs/N;%采样分辨率

Tp=1/F;%观察时间

t=0:Ts:Tp-Ts;

k=0:N-1;

wk=2pi/Nk;%k对应的数字频率

Sk=fft(st,N);

Sk=Ts*Sk;

subplot(212);

stem(wk/\pi, \frac{abs(S_k)}{\max(abs(S_k))}); %为了消除幅值受变换区间长度N的影响而产生的波动,在绘图过程中可以采取

全部评论 (0)

还没有任何评论哟~