1、3. 序列的基本运算l 移位 y(n)=x(n-m)l 反褶 y(n)=x(-n)l 和 l 积 l 标乘 y(n)=mx(n)l 累加l 差分运算 4. 离散傅里叶变换的相关概念l 定义 l 两个性质1)2) 当x(n)为实序列时,的幅值在区间内是偶对称函数,相位是奇对称函数。5. Z变换的相关概念l 定义 (双边Z变换) (单边Z变换)四、实验内容与步骤1.离散时间信号(序列)的产生利用MATLAB语言编程产生和绘制单位样值信号、单位阶跃序列、指数序列、正弦序列及随机离散信号的波形表示。1. 单位取样序列的产生函数 functionx,n=impseq(n0,n1,n2) %产生x(n)=
2、delta(n-n0);n1=n,n0=n2;%x,n=impseq(n0,n1,n2)if(n0n2)|(n1n2) error(参数必须满足n1=n0=0;Matlab产生各种常见序列的程序n=-5:5;x1=impseq(0,-5,5);subplot(2,2,1);stem(n,x1);title(单位取样序列);xlabel(nylabel(x(n)n=-3:10;x2=stepseq(0,-3,10);subplot(2,2,2);stem(n,x2);单位阶跃序列n=-10:x3=(0.5).n;subplot(2,2,3);stem(n,x3);实指数序列n=0:20;x4=s
3、in(0.3*n);subplot(2,2,4);stem(n,x4);正弦序列Matlab产生复指数序列的程序1:alpha=-0.1+0.5j;x=exp(alpha*n);stem(real(x);实部stem(imag(x);虚部stem(abs(x);振幅stem(n,(180/pi)*angle(x);相位 Matlab产生随机离散信号的程序n=1:x=rand(1,10);figure;stem(n,x);随机序列grid2.序列的运算()利用语言编程实现信号平滑运算。程序r=65;d=0.8*(rand(r,1)-0.5);m=0:r-1;s=2*m.*(0.9.m);x=s+
4、d;subplot(2,1,1);plot(m,d,r-,m,s,g-,m,x,b-. nlegend(dnsnxnx1=0 0 x;x2=0 x 0;x3=x 0 0;y=(x1+x2+x3)/3;subplot(2,1,2);plot(m,y(2:r+1),yn() 利用MATLAB语言编程实现信号的调制。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);plot(x);t(s)x原信号plot(X);plot(-128:127,fftshift
5、(abs(X);wX(jw)原信号频谱plot(y);y调制信号plot(Y);127,fftshift(abs(Y);Y(jw)已调信号频谱() 利用MATLAB语言编程实现信号卷积运算。序列卷积的产生函数functiony,ny=conv_m(x,nx,h,nh)%信号处理的卷积程序%y,ny=conv_m(x,nx,h,nh)%y=卷积结果%ny=y的基底(support)%x=基底nx上的第一个信号%nx=x的基底%h=基底nh上的第二个信号%nh=h的基底nyb=nx(1)+nh(1);nye=nx(length(x)+nh(length(h);ny=nyb:nye;y=conv(x
6、,h);Matlab实现线性卷积的程序x=0 0.5 1 1.5 0;nx=0:4;h=1 1 1 0 0;nh=0:y,ny=conv_m(x,nx,h,nh);stem(nx,x);序列xstem(nh,h);序列hh(n)stem(ny,y);两序列卷积);y(n)() 利用MATLAB语言编程实现信号离散傅立叶的正反变换。离散傅立叶正变换的产生函数functionXk=dft(xn,N)N-1;k=n;WN=exp(-j*2*pi/N);nk=n*k;WNnk=WN.nk;Xk=xn*WNnk;离散傅立叶反变换的产生函数functionXk=idft(xn,N)WNnk=WN.(-nk
7、);Xk=xn*WNnk/N;(5)利用MATLAB语言编程实现信号的圆周移位,圆周卷积,验证DFT 的圆周时移、圆周卷积性质和圆周卷积与线性卷积的关系。 function m=sigmod(n,N);m=rem(n,N);m=m+N;m=rem(m,N); function y=cirshift(x,m,N);if length(x)N error(N must be greater then length(x)x=x zeros(1,N-length(x);n=sigmod(n-m,N);y=x(n+1);Matlab实现圆周移位的程序M=6;N=11;x=15*0.4.n;y=cirsh
8、ift(x,M,N);原序列波stem(n,y);圆周移位序波形圆周卷积function y=circonvt(x1,x2,N)if length(x1)length(x1)is not great than Nif length(x2)length(x2)is not greater than Nx1=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);for n=1:N; H(n,:)=cirshift(x2,n-1,N);y=x1*HMatlab实现圆周卷积的程序x1=2,4,3;x2=4 3 5 1;disp(N=7) N=7;y=circonvt(x1,x2,N)subplot(3,1,1);stem(x1);x1(n)subplot(3,1,2);stem(x2);x2(n)subplot(3,1,3);stem(y);圆周卷积(6) 验证一个周期实序列奇偶部分的DFT与此序列本身的DFT之间的关系。functionx1,x2=circevod(x)if any(imag(x)=0)不是实序列0N=length(x);n=0:(
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1