数字信号处理实验报告
实验名称: 数字信号处理实验 学生姓名: 班 级: 班内序号:
1.实验要求
假设信号 x(n) 由下述信号组成:
请选择合适的长度 N 和窗函数,用 DFT 分析其频谱,得到清楚的三根谱线。
2.实验代码和实验结果
N = 1000; % Length of DFT n = [0:1:N-1]; xn = 0.001*cos(0.45*n*pi)+sin(0.3*n*pi)-cos(0.302*n*pi-pi/4);
Xk = fft(xn,N); k=[0:1:N-1]; subplot(5,1,1);
stem(k,abs(Xk(1:1:N))); title('DFT x(n)');xlabel('k');
axis([140,240,0,6])
subplot(5,1,2);stem(k, abs(Xk(1:1:N)),'r');%画出sin(0.3npi)-cos(0.302npi-pi/4) axis([140,160,0,6]);
title('sin(0.3*pi*n)-cos(0.302*pi*n) '); xlabel('k');
subplot(5,1,3);stem(k, 1000*abs(Xk(1:1:N)),'g');%画出0.001*cos(0.45npi) axis([220,230,0,6]); title('cos(0.45*pi*n) '); xlabel('k');
subplot(5,1,4);stem(k,0.01*abs(Xk(1:1:N)),'k');%画 %sin(0.3npi)-cos(0.302npi-pi/4) axis([140,160,0,6]);
title('sin(0.3*pi*n)-cos(0.302*pi*n) ');
1
数字信号处理实验报告
xlabel('k');
subplot(5,1,5);stem(k, 10*abs(Xk(1:1:N)),'m');%画出0.001*cos(0.45npi) axis([220,230,0,6]); title('cos(0.45*pi*n) ');
xlabel('k');
结论:
由上图及过程可知,当DFT变换长度为1000时所得到的谱线非常理想。由此可知当DFT变换长度N为多个数字频率公倍数时,即数字频率正好位于子带的中心频率上时,得到理想的谱线。
3.总结
通过这次实验,让我增强了使用matlab的能力,同时增强了我对FFT、DFT等相关概念的理解,对课本上的理论有了更加深入的认识。Matlab作为一个软件,在数字信号处理中有十分重要的作用,要想学好数字信号处理,并将有关知识用于以后的工作中,掌握好matlab是十分必要的。
在本次实验中,不管是问题解决方法的构思还是程序的编写方面,或多或少都存在一些问题。出现这些问题也是很正常的,而我要做的,就是在下次实验中吸取教训,比如在编程的错误、算法的错误上。
另外,合作也是非常重要的。在这次实验中,我也注意了和同学进行讨论,集体的智慧
2
数字信号处理实验报告
是巨大的。我觉得,一个人有时只会陷入思维的死胡同,只有和大家交流才会产生新的想法,才会激发自己的创造力。
3
因篇幅问题不能全部显示,请点此查看更多更全内容