数字信号处理 实验报告 打印Word格式.docx

上传人:b****6 文档编号:19174729 上传时间:2023-01-04 格式:DOCX 页数:18 大小:161.50KB
下载 相关 举报
数字信号处理 实验报告 打印Word格式.docx_第1页
第1页 / 共18页
数字信号处理 实验报告 打印Word格式.docx_第2页
第2页 / 共18页
数字信号处理 实验报告 打印Word格式.docx_第3页
第3页 / 共18页
数字信号处理 实验报告 打印Word格式.docx_第4页
第4页 / 共18页
数字信号处理 实验报告 打印Word格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

数字信号处理 实验报告 打印Word格式.docx

《数字信号处理 实验报告 打印Word格式.docx》由会员分享,可在线阅读,更多相关《数字信号处理 实验报告 打印Word格式.docx(18页珍藏版)》请在冰豆网上搜索。

数字信号处理 实验报告 打印Word格式.docx

幅度为1,脉冲宽度占空比duty=50,%周期T=5的周期方波脉冲信号的产生。

T=5,t=-2*T:

0.01:

2*T;

duty=50;

%duty—信号为正的区域在一个周期内所占的百分比;

x=square(t,duty);

subplot(2,2,1)

plot(t,x)

title('

连续时间函数-周期方波脉冲'

)%title—标出图名;

axis([-10,10,-1.2,1.2])

例五:

幅度为±

1,周期T=4的三角波脉冲信号的产生

T=4;

t=-2.5*T:

2.5*T;

x=sawtooth(t-2*T/3,0.5);

%sawtooth(x,width):

三角波函数,width为该位置的横坐标和周期的比值(0-1的标量)。

width=1时产生锯齿波,width=0.5时产生标准对称三角波;

subplot(3,3,1);

plot(t,x);

周期三角波脉冲,T=4'

axis([-10,10,-1.2,1.2]);

实验二

clear;

closeall;

N=64;

n=[0:

N-1];

A=[1,-0.9];

B=[0.05,0.05];

%系统差分方程系数向量;

x=[n==0];

%产生deta(n);

x1n=[11111111zeros(1,56)];

%产生

x2n=ones(1,64);

%产生

hn=filter(B,A,x);

%filter求系统对序列x的响应;

subplot(2,2,1);

stem(n,hn,'

line([0,64],[0,0]);

axis([0,64,0,0.1]);

(a)系统单位脉冲响应h(n)'

y1n=filter(B,A,x1n)%求系统对序列x1n的响应;

subplot(2,2,2);

stem(n,y1n,'

axis([0,64,0,0.6]);

(b)系统对R8(n)的响应y1(n)'

y2n=filter(B,A,x2n);

%求系统对序列x2n的响应;

subplot(2,2,4);

stem(n,y2n,'

axis([0,64,0,1]);

(c)系统对u(n)的响应y2(n)'

clearall

x1n=[11111111];

N=8;

M1=10;

M2=4;

h1n=ones(1,10);

h2n=[12.52.51];

y1n=conv(x1n,h1n);

%conv求卷积;

y2n=conv(x1n,h2n);

L1=N+M1-1;

L2=N+M2-1;

n1=0:

L1-1;

n2=0:

L2-1;

stem(n1,y1n,'

line([0,20],[0,0]);

axis([0,20,0,10]);

(d)h1(n)与R8(n)的卷积'

stem(n2,y2n,'

line([0,15],[0,0]);

axis([0,15,0,10]);

(e)h2(n)与R8(n)的卷积'

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);

stem(n,y31n,’.’)

title(′(f)谐振器对u(n)的响应y31(n)′)

subplot(2,1,2);

stem(n,y32n,’.’)

title(′(g)谐振器对正弦信号的响应y32(n)′)

实验三

clearall;

x1n=ones(1,4);

N1=8;

N2=16;

k1=0:

N1-1;

k2=0:

N2-1;

w1=k1*2/N1;

w2=k2*2/N2;

%k1和k2是频域取样点的取值区间,w1和w2是将k值转换为归一化频率;

M=8;

xa=1:

(M/2);

xb=(M/2):

-1:

1;

x2n=[xa,xb];

%构造x2n

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);

stem(w1,abs(X1k8),'

(1a)8点DFT[x1(n)]'

w/pi'

幅度'

axis([0,2,0,1.2*max(abs(X1k8))]);

stem(w2,abs(X1k16),'

(1b)16点DFT[x1(n)]'

axis([0,2,0,1.2*max(abs(X1k16))]);

figure

(2)%创建图形窗

stem(w1,abs(X2k8),'

(1c)8点DFT[x2(n)]'

axis([0,2,0,1.2*max(abs(X2k8))]);

stem(w2,abs(X2k16),'

(1d)16点DFT[x2(n)]'

axis([0,2,0,1.2*max(abs(X2k16))]);

subplot(2,2,3);

stem(w1,abs(X3k8),'

(1e)8点DFT[x3(n)]'

axis([0,2,0,1.2*max(abs(X3k8))]);

stem(w2,abs(X3k16),'

(1f)16点DFT[x3(n)]'

axis([0,2,0,1.2*max(abs(X3k16))]);

15;

x1n=cos(pi*n/4);

x2n=cos(pi*n/4)+cos(pi*n/8);

(2a)8点DFT[x1(n)]'

(2b)16点DFT[x1(n)]'

(2c)8点DFT[x2(n)]'

(2d)16点DFT[x2(n)]'

Fs=64;

T=1/Fs;

N=16;

N-1;

xnT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T);

%对x(t)取样;

Xk16=fft(xnT,16);

Xk16=fftshift(Xk16);

%将0频率移到频谱中心;

Tp=N*T;

F=1/Tp;

%求频率分辨率F

k=-N/2:

N/2-1;

fk=k*F;

subplot(3,1,1);

stem(fk,abs(Xk16),'

(3a)16点|DFT[x(nT)]|'

f(Hz)'

axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(Xk16))]);

N=32;

Xk32=fft(xnT,32);

Xk32=fftshift(Xk32);

subplot(3,1,2);

stem(fk,abs(Xk32),'

(3b)32点|DFT[x(nT)]|'

axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(Xk32))]);

Xk64=fft(xnT,64);

Xk64=fftshift(Xk64);

subplot(3,1,3);

stem(fk,abs(Xk64),'

(3c)64点|DFT[x(nT)]|'

axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(Xk64))]);

实验四

functionst=mstg%编写程序mstg,供后面调用;

N=1600;

Fs=10000;

%N为信号s(t)的长度;

采样频率Fs=10kHz;

t=0:

T:

(N-1)*T;

k=0:

f=k/Tp;

fc1=Fs/10;

%第一路调幅信号的载波频率fc1=1kHz;

fm1=fc1/10;

%第一路调幅信号的调制信号频率fm1=100Hz;

fc2=Fs/20;

%第二路调幅信号的载波频率fc2=500Hz;

fm2=fc2/10%第二路调幅信号的调制信号频率fm2=50Hz;

fc3=Fs/40;

%第三路调幅信号的载波频率fc3=250Hz;

fm3=fc3/10;

%第三路调幅信号的调制信号频率fm3=25Hz;

xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t);

%产生第一路调幅信号;

xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t);

%产生第二路调幅信号;

xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t);

%产生第三路调幅信号;

st=xt1+xt2+xt3;

%三路信号叠加形成时域混叠信号;

fxt=fft(st,N);

%计算信号st的频谱

plot(t,st);

grid;

%plot线性x-y坐标绘图;

图上加坐标网格;

t/s'

s(t)'

axis([0,Tp/2,min(st),max(st)]);

(a)s(t)的波形'

stem(f,abs(fxt)/max(abs(fxt)),'

%stem离散序列绘图;

(b)s(t)的频谱'

axis([0,Fs/5,0,1.2]);

f/Hz'

M=1600;

(M-1)*T;

st=mstg;

%调用子程序mstg;

%==============以下为低通滤波器的设计与实现======================

fp=280;

fs=450;

wp=2*fp/Fs;

ws=2*fs/Fs;

rp=0.1;

rs=60;

%获取数字滤波器的指标;

[N,wp]=ellipord(wp,ws,rp,rs);

%计算椭圆DF的阶数N;

[B,A]=ellip(N,rp,rs,wp);

%计算椭圆低通DF系统函数系数向量B和A;

[h1w,w]=freqz(B,A);

%计算DF的频率响应

y1t=filter(B,A,st);

%对信号st进行滤波

figure

(2);

%figure创建图形窗;

plot(w/pi,20*log10(abs(h1w)));

grid%grid图上加坐标网络;

axis([0,1,-100,10]);

幅度(dB)'

plot(t,y1t);

grid

axis([0,0.1,-1.5,1.5]);

y1(t)'

%===============以下为带通滤波器的设计与实现=========================

fpl=440;

fpu=560;

fsl=275;

fsu=900;

wp=[2*fpl/Fs,2*fpu/Fs];

ws=[2*fsl/Fs,2*fsu/Fs];

[h2w,w]=freqz(B,A);

y2t=filter(B,A,st);

figure(3);

plot(w/pi,20*log10(abs(h2w)));

plot(t,y2t);

y2(t)'

%===============以下为高通滤波器的设计与实现====================

fp=890;

fs=600;

[B,A]=ellip(N,rp,rs,wp,'

high'

[h3w,w]=freqz(B,A);

y3t=filter(B,A,st);

figure(4);

plot(w/pi,20*log10(abs(h3w)));

plot(t,y3t);

y3(t)'

实验五

functionxt=xtg(N)%信号x(t)产生函数,并显示信号的幅频特性曲线

%xt=xtg产生一个长度为N,有加性高频噪声的单频调幅信号xt,采样频率Fs=1khz

%载波频率fc=Fs/10=100Hz,调制正弦波频率f0=Fc/10=10Hz

N=2000;

Fs=1000;

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,频率为fc

xt=mt.*ct;

%相乘产生单频调制信号xt

nt=2*rand(1,N)-1;

%产生随机噪声nt

%=========设计高通滤波器hn,用于滤除噪声nt中的低频成分,生成高频噪声=====

fp=150;

fs=200;

rs=70;

%滤波器指标

fb=[fp,fs];

m=[0,1];

%计算remenzord函数所需参数f,m,dev

dev=[10^(-rs/20),(10^(rp/20)-1)/(10^(rp/20)+1)];

[n,fo,mo,w]=remezord(fb,m,dev,Fs);

%确定remenz函数所需参数

hn=remez(n,fo,mo,w);

%调用remenz函数进行设计,用于滤除噪声nt中的低频成分

yt=filter(hn,1,10*nt);

%滤除随机噪声中低频成分,生成高频噪声yt

%===================================================================

xt=xt+yt;

%噪声加信号

fst=fft(xt,N);

plot(t,xt);

x(t)'

axis([0,0.5,min(xt),max(xt)]);

(a)信号加噪声波形'

subplot(3,2,2);

plot(f,abs(fst)/max(abs(fst)));

(b)信号加噪声的频谱'

axis([0,Fs/2,0,1.2]);

%=====调用xtg产生信号xt,xt长度N=1000,并显示xt及其频谱===========

N=1000;

xt=xtg(N);

fp=120;

fs=150;

rp=0.2;

%输入给定指标

T=1/Fs;

k=0:

f1=k/Tp;

%

(1)用窗函数法设计滤波器

wc=(fp+fs)/Fs;

%理想低通滤波器截止频率(关于pi归一化)

B=2*pi*(fs-fp)/Fs;

%过渡带宽度指标

Nb=ceil(11*pi/B);

%blackman窗的长度N

hn=fir1(Nb-1,wc,blackman(Nb));

ywt=fftfilt(hn,xt,N);

f=[f1,zeros(1,length(ywt)-1)];

%调用函数fftfilt对xt滤波

[length(ywt)-1]*T;

subplot(3,2,5);

plot(t,ywt);

grid;

(c)滤除噪声后的信号波形'

axis([0,0.5,-1,1]);

yw(t)'

%=======

(2)用等波纹逼近法设计滤波器========================

m=[1,0];

%确定remenzord函数所需参数f,m,dev

dev=[(10^(rp/20)-1)/(10^(rp/20)+1),10^(-rs/20)];

[Ne,fo,mo,W]=remezord(fb,m,dev,Fs);

hn=remez(Ne,fo,mo,W);

%调用remenz函数进行设计

yet=fftfilt(hn,xt,N);

f=[f1,zeros(1,length(yet)-1)];

subplot(3,2,6);

plot(t,yet);

(d)滤除噪声后的信号波形'

ye(t)'

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 生物学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1