北邮DSP软件实验报告_第1页
北邮DSP软件实验报告_第2页
北邮DSP软件实验报告_第3页
北邮DSP软件实验报告_第4页
北邮DSP软件实验报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MATLAB软件仿真实验报告 MATLAB软件仿真实验报告姓 名:_ _学 号:_201321099X_班 级:_201321120X_学 院:_电子工程学院_专 业:_电子科学与技术_目 录实验一:数字信号的 FFT 分析21.实验内容及要求22.实验目的23.实验代码34.实验截图4实验二: DTMF 信号的编码51实验内容及要求52实验目的63.实验代码64.实验截图9实验三:FIR 数字滤波器的设计和实现141.实验内容及要求:142.实验目的153.实验代码154.实验截图17四、实验总结18实验一:数字信号的 FFT 分析1.实验内容及要求(1) 离散信号的频谱分析: 设信号此信号

2、的0.3pi 和 0.302pi两根谱线相距很近,谱线 0.45pi 的幅度很小,请选择合适的序列长度 N 和窗函数,用 DFT 分析其频谱,要求得到清楚的三根谱线。(2) DTMF 信号频谱分析用计算机声卡采用一段通信系统中电话双音多频(DTMF)拨号数字 09的数据,采用快速傅立叶变换(FFT)分析这10个号码DTMF拨号时的频谱。 2.实验目的通过本次实验,应该掌握:(a) 用傅立叶变换进行信号分析时基本参数的选择。 (b) 经过离散时间傅立叶变换(DTFT)和有限长度离散傅立叶变换(DFT) 后信号频谱上的区别,前者 DTFT 时间域是离散信号,频率域还是连续的,而 DFT 在两个域中

3、都是离散的。(c) 离散傅立叶变换的基本原理、特性,以及经典的快速算法(基2时间抽选法),体会快速算法的效率。(d) 获得一个高密度频谱和高分辨率频谱的概念和方法,建立频率分辨率和时间分辨率的概念,为将来进一步进行时频分析(例如小波)的学习和研究打下基础。(e) 建立 DFT 从整体上可看成是由窄带相邻滤波器组成的滤波器组的概念,此概念的一个典型应用是数字音频压缩中的分析滤波器,例如 DVD AC3 和MPEG Audio。3.实验代码频谱分析:clf;close all;%关闭所有图形窗口N=1000;%DFT点数n=1:1:N;x=0.001*cos(0.45*n*pi)+sin(0.3*

4、n*pi)-cos(0.302*n*pi-pi/4);y=fft(x,N);mag=abs(y);%对FFT结果求模w=2*pi/N*0:1:N-1; %数字角频率wsubplot(2,1,1);%将图形窗分为2行1列stem(n,x,'.');%画脉冲图title('时域');xlabel('n');ylabel('x(n)');subplot(2,1,2);stem(w/pi,mag);%归一化角频率axis(0 0.5 0 2);%控制坐标范围以使谱线幅度合适title('1000点DFT');xlabel(

5、'数字频率');ylabel('X(k)');grid on;DTMF频谱分析:x,fs,bits=wavread('mjl_num.wav');%从当前目录下读取声音文件N=1:1:fs;%取样点数subplot(2,1,1);plot(x);%画出时域波形title('时域声音波形');xlabel('n');ylabel('x(n)');n=2*fs;%奈奎斯特取样xk=fft(x,n);k=0:1:n-1;w=2*pi/n*k;%数字角频率subplot(2,1,2);stem(w/pi,a

6、bs(xk),'.');%归一化角频率title('频谱');xlabel('数字频率');ylabel('幅度');axis(0 2 0 1200);4.实验截图实验二: DTMF 信号的编码1实验内容及要求1)把您的联系电话号码 通过DTMF 编码生成为一个 .wav 文件。³ 技术指标:± 根据 ITU Q.23 建议,DTMF 信号的技术指标是:传送/接收率为每秒 10 个号码,或每个号码 100ms。± 每个号码传送过程中,信号存在时间至少 45ms,且不多于 55ms,100ms 的其余时

7、间是静音。± 在每个频率点上允许有不超过 ±1.5% 的频率误差。任何超过给定频率 ±3.5% 的信号,均被认为是无效的,拒绝接收。(其中关键是不同频率的正弦波的产生。可以使用查表方式模拟产生两个不同频率的正弦波。正弦表的制定要保证合成信号的频率误差在±1.5%以内,同时使取样点数尽量少)2)对所生成的DTMF文件进行解码。³ DTMF 信号解码可以采用 FFT 计算 N 点频率处的频谱值,然后估计出所拨号码。但 FFT计算了许多不需要的值,计算量太大,而且为保证频率分辨率,FFT的点数较大,不利于实时实现。因此,FFT 不适合于 DTMF 信

8、号解码的应用。³ 由于只需要知道 8 个特定点的频谱值,因此采用一种称为 Goertzel 算法的 IIR 滤波器可以有效地提高计算效率。其传递函数为:³2实验目的(a)复习和巩固 IIR 数字滤波器的基本概念;(b)掌握 IIR 数字滤波器的设计方法;(c)掌握 IIR 数字滤波器的实现结构;(d)能够由滤波器的实现结构分析滤波器的性能(字长效应);(e)了解通信系统电话 DTMF 拨号的基本原理和 IIR 滤波器实现方法。3.实验代码=500;fs=8000;tm=49,50,51,65;52,53,54,66;55,56,57,67;42,4

9、8,35,68;n=1:N;%取样点flow=697 770 852 941;%低频fhigh=1209 1336 1477 1633;%高频x01=sin(2*pi*flow(1)*n/fs)+sin(2*pi*fhigh(1)*n/fs); %1x02=sin(2*pi*flow(1)*n/fs)+sin(2*pi*fhigh(3)*n/fs); %3x03=sin(2*pi*flow(1)*n/fs)+sin(2*pi*fhigh(2)*n/fs); %2x04=sin(2*pi*flow(2)*n/fs)+sin(2*pi*fhigh(3)*n/fs); %6x05=sin(2*pi*

10、flow(3)*n/fs)+sin(2*pi*fhigh(3)*n/fs); %9x06=sin(2*pi*flow(2)*n/fs)+sin(2*pi*fhigh(3)*n/fs); %6x07=sin(2*pi*flow(1)*n/fs)+sin(2*pi*fhigh(3)*n/fs); %3x08=sin(2*pi*flow(3)*n/fs)+sin(2*pi*fhigh(3)*n/fs); %9x09=sin(2*pi*flow(1)*n/fs)+sin(2*pi*fhigh(2)*n/fs); %2x10=sin(2*pi*flow(3)*n/fs)+sin(2*pi*fhigh(1

11、)*n/fs); %7x11=sin(2*pi*flow(3)*n/fs)+sin(2*pi*fhigh(3)*n/fs); %9 x=x01,x02,x03,x04,x05,x06,x07,x08,x09,x10,x11;%组成矩阵 x01_z=x01,zeros(1,500);%补零x02_z=x02,zeros(1,500);x03_z=x03,zeros(1,500);x04_z=x04,zeros(1,500);x05_z=x05,zeros(1,500);x06_z=x06,zeros(1,500);x07_z=x07,zeros(1,500);x08_z=x08,zeros(1,

12、500);x09_z=x09,zeros(1,500);x10_z=x10,zeros(1,500);x11_z=x11,zeros(1,500); x_z=x01_z,x02_z,x03_z,x04_z,x05_z,x06_z,x07_z,x08_z,x09_z,x10_z,x11_z;x_z=x_z/max(abs(x_z);subplot(2,1,1);plot(x_z);sound(x_z);wavwrite(x_z,fs,'phone_wl.wav');%写入声音文件 k=18 20 22 24 31 34 38 42;N=205;subplot(2,1,2);dis

13、p('解码得到的号码是:')for i=1:11 m=800*(i-1); X=goertzel(x(m+1:m+N),k+1);%goertzel算法做变换 v=abs(X);%求模 stem(k,v,'.');%画脉冲图 grid; xlabel('k'); ylabel('x(k)'); set(gcf,'color','w'); shg; pause; limit=80; for s=5:8; if v(s)>limit,break,endendfor r=1:4; if v(r)&g

14、t;limit,break,endend disp(setstr(tm(r,s-4)end4.实验截图数字1 _ 数字3 _数字2 _ 数字6 _ 数字9 _ 数字6 _ 数字3 _ 数字9 _ 数字2 _ 数字7 _ 数字9 _ 实验三:FIR 数字滤波器的设计和实现1.实验内容及要求:录制自己的一段声音,长度为 45秒,取样频率 32kHz,然后叠加一个高斯白噪声,使得信噪比为 20dB。请采用窗口法设计一个 FIR 带通滤波器,滤除噪声提高质量。n 提示:³ 滤波器指标参考:通带边缘频率为 4kHz,阻带边缘频率为4.5kHz,阻带衰减大于 50dB;³ Matlab

15、 函数 y = awgn(x,snr,'measured') ,首先测量输入信号 x 的功率,然后对其叠加高斯白噪声;2.实验目的通过本次实验,掌握以下知识:± FIR 数字滤波器窗口设计法的原理和设计步骤;± Gibbs 效应发生的原因和影响;± 不同类型的窗函数对滤波效果的影响,以及窗函数和长度 N 的选择。3.实验代码fs=32000; x,fs=audioread('mysound.wav'); %原声snr=20; x2=awgn(x,snr,'measured','db'); %加噪声au

16、diowrite('sound_noise.wav',x2,fs);%加噪声后的声音t=0:1/fs:(size(x2)-1)/fs;wp=8000*pi/32000; ws=9000*pi/32000;wdelta=ws-wp; N=ceil(11*pi/wdelta); %取整wn=(ws+wp)/2; %截止频率b=fir1(N,wn/pi,blackman(N+1); %选择窗函数,并归一化截止频率 figure(1) freqz(b,1,512)f2=filter(b,1,x2); title('滤波器幅频、相频特性');figure(2)subplo

17、t(2,1,1)plot(t,x2) title('滤波前时域波形');subplot(2,1,2)plot(t,f2) title('滤波后时域波形'); F0=fft(f2,1024); f=fs*(0:511)/1024; figure(3)y2=fft(x2,1024); subplot(2,1,1)plot(f,abs(y2(1:512);title('滤波前频谱') xlabel('Hz');ylabel('幅度'); subplot(2,1,2) F2=plot(f,abs(F0(1:512); title('滤波后频谱') xlabel('Hz'); ylabel('幅度'); audiowrite('filterable.wav',f2,fs); 4.实验截图四、实验总结本次实验是数字信号处理的软件实验,以MATLAB为软件平台,实现课本上所学的内容,将枯燥抽象的书本内容通过具体的实验展示出来,巩固课堂所学的知

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论