《数字信号处理》上机全部源代码调试通过完整版Word文件下载.docx
- 文档编号:22640727
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:24
- 大小:20.23KB
《数字信号处理》上机全部源代码调试通过完整版Word文件下载.docx
《《数字信号处理》上机全部源代码调试通过完整版Word文件下载.docx》由会员分享,可在线阅读,更多相关《《数字信号处理》上机全部源代码调试通过完整版Word文件下载.docx(24页珍藏版)》请在冰豆网上搜索。
h1n=[ones(1,10)zeros(1,10)];
h2n=[12.52.51zeros(1,10)]
y21n=conv(h1n,x1n);
y22n=conv(h2n,x1n);
figure
(2)
h1(n)'
tstem(h1n,y);
%调用函数tstem绘图
(d)系统单位脉冲响应h1(n)'
y21(n)'
tstem(y21n,y);
(e)h1(n)与R8(n)的卷积y21(n)'
subplot(2,2,3);
y='
h2(n)'
tstem(h2n,y);
%调用函数tstem绘图
(f)系统单位脉冲响应h2(n)'
subplot(2,2,4);
y22(n)'
tstem(y22n,y);
(g)h2(n)与R8(n)的卷积y22(n)'
%=====================================
%内容3:
谐振器分析
un=ones(1,256);
%产生信号un
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和A
y31n=filter(B,A,un);
%谐振器对un的响应y31n
y32n=filter(B,A,xsin);
%谐振器对正弦信号的响应y32n
figure(3)
subplot(2,1,1);
y31(n)'
tstem(y31n,y)
(h)谐振器对u(n)的响应y31(n)'
subplot(2,1,2);
y32(n)'
tstem(y32n,y);
(i)谐振器对正弦信号的响应y32(n)'
functiontstem(xn,yn)
n=0:
length(xn)-1;
stem(n,xn,'
.'
);
xlabel('
n'
ylabel('
yn'
%xlabel('
);
ylabel(yn);
axis([0,n(end),min(xn),1.2*max(xn)]);
实验二
%时域采样理论验证程序exp2a.m
Tp=64/1000;
%观察时间Tp=64微秒
%产生M长采样序列x(n)
%Fs=1000;
T=1/Fs;
Fs=1000;
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绘制序列图
boxon;
title('
(a)Fs=1000Hz'
k=0:
fk=k/Tp;
subplot(3,2,2);
plot(fk,abs(Xk));
(a)T*FT[xa(nT)],Fs=1000Hz'
f(Hz)'
ylabel('
幅度'
axis([0,Fs,0,1.2*max(abs(Xk))])
%=================================
%Fs=300Hz和Fs=200Hz的程序与上面Fs=1000Hz的程序完全相同。
%%%%%%%%%%%%fs=300Hz
Fs=300;
figure
(2);
(b)Fs=300Hz'
(b)T*FT[xa(nT)],Fs=1000Hz'
%%%%%%%%%%%%%%%%%%%fs=200Hz
Fs=200;
figure(3);
(c)Fs=200Hz'
(c)T*FT[xa(nT)],Fs=1000Hz'
%频域采样理论验证程序exp2b.m
M=27;
N=32;
M;
%产生M长三角波序列x(n)
xa=0:
floor(M/2);
xb=ceil(M/2)-1:
-1:
0;
xn=[xa,xb];
Xk=fft(xn,1024);
%1024点FFT[x(n)],用于近似序列x(n)的TF
X32k=fft(xn,32);
%32点FFT[x(n)]
x32n=ifft(X32k);
%32点IFFT[X32(k)]得到x32(n)
X16k=X32k(1:
2:
N);
%隔点抽取X32k得到X16(K)
x16n=ifft(X16k,N/2);
%16点IFFT[X16(k)]得到x16(n)
boxon
(b)三角波序列x(n)'
x(n)'
axis([0,32,0,20])
1023;
wk=2*k/1024;
%
plot(wk,abs(Xk));
(a)FT[x(n)]'
\omega/\pi'
|X(e^j^\omega)|'
axis([0,1,0,200])
N/2-1;
subplot(3,2,3);
stem(k,abs(X16k),'
(c)16点频域采样'
k'
|X_1_6(k)|'
axis([0,8,0,200])
n1=0:
subplot(3,2,4);
stem(n1,x16n,'
(d)16点IDFT[X_1_6(k)]'
x_1_6(n)'
N-1;
subplot(3,2,5);
stem(k,abs(X32k),'
(e)32点频域采样'
|X_3_2(k)|'
axis([0,16,0,200])
subplot(3,2,6);
stem(n1,x32n,'
(f)32点IDFT[X_3_2(k)]'
x_3_2(n)'
实验三
%实验三程序exp3.m
%用FFT对信号作频谱分析
%clearall;
closeall
%实验内容
(1)================================
x1n=[ones(1,4)];
%产生序列向量x1(n)=R4(n)
M=8;
xa=1:
(M/2);
xb=(M/2):
1;
x2n=[xa,xb];
%产生长度为8的三角波序列x2(n)
x3n=[xb,xa];
X1k8=fft(x1n,8);
%计算x1n的8点DFT
X1k16=fft(x1n,16);
%计算x1n的16点DFT
X2k8=fft(x2n,8);
X2k16=fft(x2n,16);
X3k8=fft(x3n,8);
X3k16=fft(x3n,16);
%以下绘制幅频特性曲线
mstem(X1k8);
%绘制8点DFT的幅频特性图
(1a)8点DFT[x_1(n)]'
ω/π'
axis([0,2,0,1.2*max(abs(X1k8))])
subplot(2,2,3);
mstem(X1k16);
%绘制16点DFT的幅频特性图
(1b)16点DFT[x_1(n)]'
axis([0,2,0,1.2*max(abs(X1k16))])
mstem(X2k8);
(2a)8点DFT[x_2(n)]'
axis([0,2,0,1.2*max(abs(X2k8))])
mstem(X2k16);
(2b)16点DFT[x_2(n)]'
axis([0,2,0,1.2*max(abs(X2k16))])
mstem(X3k8);
(3a)8点DFT[x_3(n)]'
axis([0,2,0,1.2*max(abs(X3k8))])
mstem(X3k16);
(3b)16点DFT[x_3(n)]'
axis([0,2,0,1.2*max(abs(X3k16))])
%实验内容
(2)周期序列谱分析===================
N=8;
%FFT的变换区间N=8
x4n=cos(pi*n/4);
x5n=cos(pi*n/4)+cos(pi*n/8);
X4k8=fft(x4n);
%计算x4n的8点DFT
X5k8=fft(x5n);
%计算x5n的8点DFT
N=16;
%FFT的变换区间N=16
X4k16=fft(x4n);
%计算x4n的16点DFT
X5k16=fft(x5n);
%计算x5n的16点DFT
mstem(X4k8);
(4a)8点DFT[x_4(n)]'
xlabel('
axis([0,2,0,1.2*max(abs(X4k8))])
mstem(X4k16);
(4b)16点DFT[x_4(n)]'
axis([0,2,0,1.2*max(abs(X4k16))])
mstem(X5k8);
(5a)8点DFT[x_5(n)]'
axis([0,2,0,1.2*max(abs(X5k8))])
mstem(X5k16);
(5b)16点DFT[x_5(n)]'
axis([0,2,0,1.2*max(abs(X5k16))])
%实验内容(3)模拟周期信号谱分析=================
figure(4)
Fs=64;
T=1/Fs;
x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T);
%对x6(t)16点采样
X6k16=fft(x6nT);
%计算x6nT的16点DFT
X6k16=fftshift(X6k16);
%将零频率移到频谱中心
Tp=N*T;
F=1/Tp;
%频率分辨率F
k=-N/2:
fk=k*F;
%产生16点DFT对应的采样点频率(以零频率为中心)
subplot(3,1,1);
stem(fk,abs(X6k16),'
boxon%绘制8点DFT的幅频特性图
(6a)16点|DFT[x_6(nT)]|'
%%%%%%%%%
axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k16))])
%对x6(t)32点采样
X6k32=fft(x6nT);
%计算x6nT的32点DFT
X6k32=fftshift(X6k32);
subplot(3,1,2);
stem(fk,abs(X6k32),'
(6b)32点|DFT[x_6(nT)]|'
axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k32))])
N=64;
%对x6(t)64点采样
X6k64=fft(x6nT);
%计算x6nT的64点DFT
X6k64=fftshift(X6k64);
%产生16点DFT对应的采样点频率(以零频率为中心)
subplot(3,1,3);
stem(fk,abs(X6k64),'
boxon%绘制8点DFT的幅频特性图
(6a)64点|DFT[x_6(nT)]|'
axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k64))])
functionmstem(Xk)
%mstem(Xk)绘制频域采样序列向量Xk的幅频特性图
M=length(Xk);
wk=2*k/M;
%产生M点DFT对应的采样点频率(关于pi归一化值)
stem(wk,abs(Xk),'
%绘制M点DFT的幅频特性图?
w/\pi'
axis([0,2,0,1.2*max(abs(Xk))]);
实验四
%实验四程序exp4.m
%IIR数字滤波器设计及软件实现
closeall
Fs=10000;
%采样频率
%调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st
st=mstg;
%低通滤波器设计与实现=========================
fp=280;
fs=450;
wp=2*fp/Fs;
ws=2*fs/Fs;
rp=0.1;
rs=60;
%DF指标(低通滤波器的通、阻带边界频率)
[N,wp]=ellipord(wp,ws,rp,rs);
%调用ellipord计算椭圆DF阶数N和通带截止频率wp
[B,A]=ellip(N,rp,rs,wp);
%调用ellip计算椭圆带通DF系统函数系数向量B和A
y1t=filter(B,A,st);
%滤波器软件实现
%低通滤波器设计与实现绘图部分
subplot(3,1,1);
myplot(B,A);
%调用绘图函数myplot绘制损耗函数曲线
yt='
y_1(t)'
subplot(3,1,2);
tplot(y1t,T,yt);
%调用绘图函数tplot绘制滤波器输出波形
%===========================================
%带通滤波器设计与实现=========================
fpl=440;
fpu=560;
fsl=275;
fsu=900;
wp=[2*fpl/Fs,2*fpu/Fs];
ws=[2*fsl/Fs,2*fsu/Fs];
y2t=filter(B,A,st);
%带通滤波器设计与实现绘图部分(省略)
%补充1
subplot(3,1,3);
%--
y_2(t)'
tplot(y2t,T,yt);
%高通滤波器设计与实现===========================
fp=890;
fs=600;
%调用ellipord计算椭圆DF阶数N和通带%截止频率wp
[B,A]=ellip(N,rp,rs,wp,'
high'
y3t=filter(B,A,st);
%高低通滤波器设计与实现绘图部分(省略)
%补充2
subplot(3,1,2);
y_3(t)'
tplot(y3t,T,yt);
functionst=mstg
%产生信号序列向量st,并显示st的时域波形和频谱
%st=mstg返回三路调幅信号相加形成的混合
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号处理 数字信号 处理 上机 全部 源代码 调试 通过 完整版