数字信号处理实验报告一Word文件下载.docx
- 文档编号:20840424
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:19
- 大小:376.82KB
数字信号处理实验报告一Word文件下载.docx
《数字信号处理实验报告一Word文件下载.docx》由会员分享,可在线阅读,更多相关《数字信号处理实验报告一Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。
n0=0;
n1=-10;
n2=10;
n=[n1:
n2];
x=[(n-n0)>
=0];
stem(n,x);
xlabel('
n'
);
ylabel('
x{n}'
单位阶跃序列'
实指数序列
n=[0:
10];
x=(0.5).^n;
实指数序列'
正弦序列
n=[-100:
100];
x=2*sin(0.05*pi*n);
正弦序列'
随机序列
n=[1:
x=rand(1,10);
subplot(221);
随机序列'
实验二序列的运算
(1)利用MATLAB语言编程实现信号平滑运算。
(2)利用MATLAB语言编程实现信号的调制。
(3)利用MATLAB语言编程实现信号卷积运算。
(4)利用MATLAB语言编程实现信号离散傅立叶的正反变换。
利用MATLAB语言编程实现信号的圆周移位、圆周卷积,验证DFT的圆周时移、圆周卷积性质和圆周卷积与线性卷积的关系。
验证一个周期实序列奇偶部分的DFT与此序列本身的DFT之间的关系。
平滑运算
r=51;
d=0.8*(rand(r,1)-0.5);
m=0:
r-1;
s=2*m.*(0.9.^m);
x=s+d'
;
subplot(2,1,1);
plot(m,d'
'
r-'
m,s,'
g--'
m,x,'
b-.'
Timeindexn'
Amplitude'
legend('
d[n]'
s[n]'
x[n]'
x1=[00x];
x2=[0x0];
x3=[x00];
y=(x1+x2+x3)/3;
subplot(2,1,2);
plot(m,y(2:
r+1),'
y[n]'
调制程序
Fm=10;
Fc=100;
Fs=500;
k=0:
199;
t=k/Fs;
x=sin(2*pi*Fm*t);
y=x.*cos(2*pi*Fc*t);
X=fft(x,256);
Y=fft(y,256);
subplot(2,2,1);
plot(x);
t(s)'
x'
±
»
µ
÷
Ð
Å
º
'
subplot(2,2,2);
plot(X);
plot([-128:
127],fftshift(abs(X)));
w'
X(jw)'
xx'
subplot(2,2,3);
plot(y);
y'
xy'
subplot(2,2,4);
plot(Y);
127],fftshift(abs(Y)));
Y(jw)'
yy'
卷积M函数
function[y,ny]=conv_m(x,nx,h,nh)
nyb=nx
(1)+nh
(1);
nye=nx(length(x))+nh(length(h));
ny=[nyb:
nye];
y=conv(x,h);
卷积程序
x=[00.511.50];
nx=0:
4;
h=[111100];
nh=0:
[y,ny]=conv_m(x,nx,h,nh);
stem(nx,x);
xuliex'
x(n)'
stem(nh,h);
xulieh'
h(n)'
stem(ny,y);
junji'
y(n)'
Dft
function[Xk]=dft(xn,N)
1:
N-1];
k=n;
WN=exp(-j*2*pi/N);
nk=n'
*k;
WNnk=WN.^nk;
Xk=xn*WNnk;
Idft
function[Xk]=idft(xn,N)
WNnk=WN.^(-nk);
Xk=xn*WNnk/N;
程序
xn=[1,1,1,1];
N=4;
xk=dft(xn,N)'
xk=[4,0,0,0];
xk=idft(xn,N)'
Matlab程序
N=length(xn);
n=0:
N-1;
k=0:
Xk=xn*exp(-j*2*pi/N).^(n'
*k);
x=(Xk*exp(j*2*pi/N).^(n'
*k))/N;
subplot(1,2,2);
stem(k,abs(Xk));
grid;
|X(k)|'
axis([-1,N,1.1*min(abs(Xk)),1.1*max(abs(Xk))]);
subplot(1,2,1);
stem(n,xn);
axis([-1,N,1.1*min(xn),1.1*max(xn)]);
序列的圆周移位
已知序列X(n)=10(0.8)n(0≤n≤10),序列圆周向右移m=3,绘制原序列波形和圆周移位序列波形
cigmod函数
functionm=sigmod(n,N);
m=rem(n,N);
m=m+N;
m=rem(m,N);
cirshhift函数
functiony=cirshift(x,m,N);
iflength(x)>
N
error('
Nmustbegreaterthenlength(x)'
end
x=[xzeros(1,N-length(x))];
n=sigmod(n-m,N);
y=x(n+1);
圆周移位程序
M=6;
N=11;
x=10*0.8.^n;
y=cirshift(x,M,N);
subplot(211)
原序列波形'
subplot(212)
stem(n,y);
圆周移位序列波形'
圆周卷积
已知X1=[122],x2=[1234],试计算x1
x2
程序卷积程序
functiony=circonvt(x1,x2,N)
iflength(x1)>
Length(x1)isnotgreatthanN'
iflength(x2)>
erroe('
Lengeh(x2)isnotgreaterthanN'
x1=[x1,zeros(1,N-length(x1))];
x2=[x2,zeros(1,N-length(x2))];
m=[0:
x2=x2(mod(-m,N)+1);
H=zeros(N,N);
forn=1:
N;
H(n,:
)=cirshift(x2,n-1,N);
y=x1*H'
运算程序x1=[122];
x2=[1234];
disp('
N=5'
N=5;
y=circonvt(x1,x2,N)
Z变换求(n-1)u(n)的Z变换
F=ztrans(sym('
n-1'
))
F=simplify(F)
F
=
z/(z
-
1)^2
1)
-(z*(z
2))/(z
1)^2
结果分析:
将函数分解为nu(n)-3u(n),再分别进行Z变换。
其中用到了ztrans函数和simplify函数
逆Z变换求X(z)=z-1/(1+z-1-20z-2),4<
|z|<
5
a=[11-20];
b=[010];
[r,p,k]=residuez(b,a)
r=-1,1为函数z变换后的系数,p为逆变换后系数。
验证一个周期实序列奇偶部分的DFT与此序列本身的DFT之间关系
dft程序
function[Xk]=dft(xn,N)n=[0:
Idft程序
function[Xk]=idft(xn,N)n=[0:
function[xev,xod]=circevod(x)
ifany(imag(x)~=0)
不是实序列'
N=length(x);
n=0:
(N-1);
xev=0.5*(x+x(sigmod(-n,N)+1));
xod=0.5*(x-x(sigmod(-n,N)+1));
已知序列X(n)=10(0.8)n,序列长度N=21绘出傅里叶的奇数部分和偶数部分并求它们的DFT
20];
N=length(n);
[xev,xod]=circevod(x);
stem(n,xev);
奇部'
xev(n)'
subplot(222)stem(n,xod);
偶部'
xod(n)'
holdonplot(n,zeros(1,N))
holdoff
Xkev=dft(xev,N);
Xkod=dft(xod,N);
Xkse=dft(x,N);
subplot(223);
stem(n,real(Xkev));
Xkev(k)'
偶部分的DFT'
subplot(224);
stem(n,imag(Xkod));
k'
Xkod(k)'
奇部分的DFT'
holdon
plot(n,zeros(1,N))
四:
实验总结
通过这几个实验对MATLAB有了简单的认识,并学会了基本的编写方法,也从中了解到了一些基本运算函数。
但是对于复杂的程序并不能准确给出,必须借助一些其他力量完成。
对于MATLAB学习还有很多需要在仔细学习,仅仅通过课堂时间完全不够。
5.实验拓展与思考
1.编程产生方波信号序列和锯齿波信号序列。
clf
x=[0:
0.01:
y1=square(pi*x);
subplot(1,2,1)
plot(x,y1);
axis([0,10,-2,2]);
y1'
title(‘方波'
y2=sawtooth(0.5*pi*x);
plot(x,y2);
y2'
锯齿波'
2.试验中你所产生的正弦序列的频率是多少?
怎样才能改变它?
分别是哪些参数控制该序列的相位。
振幅和周期?
0.05pi,在函数里面可以进行修改,A控制振幅,周期由频率控制。
3.编程实现序列长度为N的L点的正反离散傅立叶变换,并分析讨论所得的结果,其中L>
=N,如L=8,N=6。
L-1];
4.由实验说明离散傅立叶变换的对称关系,说明序列的时域和频域的关联特性。
1其实这是一个一般的规律,一个长为N的实数数组a,对其进行离散傅里叶变换得数组A,则A(i)与A(N-i)互为共轭,其i的取值与N的奇偶有关,详细如下:
1)N为偶数时,i=1,...,N/2-1,A(0)与A(N/2)各为其值,且肯定是实数;
2)N为奇数时,i=1,...,(N-1)/2,A(0)为实数
2若y(n)=x1(n)x2(n)则Y(k)=(1/N)X1(k)X2(k)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字信号 处理 实验 报告