DSP实验报告.docx
- 文档编号:7677570
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:9
- 大小:275.73KB
DSP实验报告.docx
《DSP实验报告.docx》由会员分享,可在线阅读,更多相关《DSP实验报告.docx(9页珍藏版)》请在冰豆网上搜索。
DSP实验报告
电子科技大学DSP实验报告
实验一:
VisualDSP++开发环境和流程、FIR滤波器设计
实验目的:
熟悉VisualDSP++开发环境,熟练使用开发软件,初步了解ADSP汇编程序结构。
在此基础上,掌握在DSP处理器上设计和实现FIR滤波器的方法。
实验器材
计算机、MATLAB仿真软件、VisualDSP++软件。
实验内容:
1、简单自学VisualDSP++自带的例子
2、利用MATLAB产生包含三个不同频率正弦信号的测试数据,设计一个带通滤波器,滤去频率最小和最大的两个正弦信号,而仅允许中间频率值的信号通过。
3、编写FIR测试程序,利用上述设计的滤波器系数和测试数据测试该滤波器,用VisualDSP++的SIMULATOR观察滤波前后的信号波形
实验步骤:
1、启动VisualDSP++,打开tutorial中的项目
2、全速运行得到结果Dotproduct[0]=0.000000;Dotproduct[1]=0.707107;
Dotproduct[2]=-0.500000
3、利用MATLAB产生测试数据和FIR滤波器系数
4、将mydata.dat和coff.dat文件拷贝到VisualDSP++工程文件夹下,设计带通滤波器:
#include"def21060.h"
#defineSAMPLES101//0x3E8
#defineTAPS21
.EXTERNfir,fir_init;
.SEGMENT/PMpm_data;
.VARcoefs[TAPS]="coff.dat";/*FIRcoefficientstoredinfile*/
.ENDSEG;
.SEGMENT/DMdm_data;
.VARdline[TAPS];/*noneedtomakethiscircular*/
.ENDSEG;
.SEGMENT/DMdm_data;
.VARinbuf[SAMPLES]="mydata.dat";
.VARoutbuf[SAMPLES];
.ENDSEG;
.SEGMENT/PMpm_rsti;
initial_setup:
jumpbegin(db);
pmwait=0x0021;
dmwait=0x8421;
.ENDSEG;
.SEGMENT/PMpm_code;
begin:
l1=0;
l2=0;
l0=TAPS;
l8=TAPS;
m0=1;
m8=1;
r0=TAPS;
callfir_init(db);/*setuptheFIRfilterDAGsandzerodelayline*/
b1=inbuf;
b2=outbuf;
b0=dline;
b8=coefs;
lcntr=SAMPLES,dofilteringuntillce;
callfir(db);/*inputsamplepassedinF0,outputreturnedinF0*/
r1=TAPS-3;
f0=dm(i1,1);
filtering:
dm(i2,1)=f0;
done:
jumpdone;
.ENDSEG;
通过修改coff.dat和mydata.dat文件中的数据,分别实现高通、低通、带通滤波器。
波形:
高通滤波器
结论:
在滤波器设计中,用MATLAB得到了相关滤波器系数和测试信号,在DSP++上进行滤波!
实验二:
基于SIMULATOR的DFT及音频音量调节
实验目的:
利用SIMULATOR实现几种基本的数字信号处理算法之一DFT运算,初步接触利用DSP处理音频信号
实验器材
计算机、MATLAB仿真软件、VisualDSP++软件、EZ-KIT实验开发板。
实验内容:
1、DFT运算:
编写对输入序列进行DFT运算以及对DFT运算结果进行求模的汇编程序;利用plot功能,观察波形。
2、音量调节:
按下不同按键,通过耳机观察音频音量是否增大、减小、静音。
实验步骤:
#include"def21160.h"/*MemoryMappedIOPregisterdefinitions*/
#defineN64/*Constantfornumberofpointsininput*/
.section/DMseg_dmda;/*Declarevariablesindatamemory*/
.VARinput[N]="sin64.dat";
.VARreal[N];
.VARimag[N];
.section/PMseg_pmda;/*Declarevariablesinprogrammemory*/
.VARsine[N]="sin64.dat";/*Cosineisderivedusingashifted*/
/*pointertothiscircularbuffer.*/
.section/PMseg_rth;
rth:
nop;nop;nop;nop;
nop;
jump_main;
nop;nop;
.section/PMseg_pmco;/*ExamplesetupforDFTroutine*/
_main:
BITSETMODE1CBUFEN;
M1=1;
M9=1;
B0=input;
L0=@input;/*Inputbufferiscircular*/
I1=imag;
L1=0;
CALLdft(DB);/*Exampledelayedcallinstruction*/
I2=real;/*Indelayfieldofcall*/
L2=0;/*''*/
_exit:
IDLE;
dft:
B8=sine;/*Sinepointer*/
L8=@sine;
B9=sine;/*Derivecosinefromsineby*/
I9=sine+N/4;/*shiftingpointerover2pi/4*/
L9=@sine;/*andusingacircularbuffer.*/
I10=0;/*I10isusedtoincrementthe*/
L10=0;/*frequencyofsinelookup.*/
F15=0;/*Zerotoclearaccumulators*/
LCNTR=N,DOouterUNTILLCE;
F8=PASSF15,M8=I10;/*Updatefrequency*/
F9=PASSF15,F0=DM(I0,M1),F5=PM(I9,M8);
F12=F0*F5,F4=PM(I8,M8);
LCNTR=N-1,DOinnerUNTILLCE;
F13=F0*F4,F9=F9+F12,F0=DM(I0,M1),F5=PM(I9,M8);
inner:
F12=F0*F5,F8=F8-F13,F4=PM(I8,M8);
F13=F0*F4,F9=F9+F12;
F8=F8-F13,DM(I2,M1)=F9;/*Writerealresult*/
MODIFY(I10,M9);/*Incrementfrequency*/
outer:
DM(I1,M1)=F8;/*Writeimaginaryresult*/
RTS;
DFT实验结果:
1、打开示例工程TT_VolumeControl,运行所给示例程序,观察开发板led灯得亮灭情况,按下不同按键,通过耳机观察音频音量是否增大、减小、静音。
音量调节实验结果:
通过按键尝试,发现可以减小、增大耳机中传出声音音量的大小,也可以一次是音量静音,说明中断按键也实现了相应功能,整个系统正常工作。
实验结论:
通过在开发板上进行试验,对DSP硬件有了初步了解,也初步认识了DSP的中断系统。
实验三:
基于SIMULATOR的卷积及FFT的了解
实验目的:
学习卷积,进一步巩固VisualDSP++的使用,同时加深巩固对基本的数字信号处理理论的理解。
实验器材:
计算机、MATLAB仿真软件、VisualDSP++软件。
实验内容:
1、时域卷积:
输入不同的序列x和y,编译并运行程序,通过MEMORY命令和plot功能观察各种输入、输出序列的数值和波形。
2、FFT运算
运行所给示例程序,观察输入输出波形。
实验步骤:
#include"def21060.h"
#defineM6
#defineN3
.section/dmdm_data;
.varinputx[M]={1e+0,2e+0,1e+0,3e+0,2e+0,1e+0};
.varinputy[N]={1e+0,1e+0,2e+0};
.section/pmpm_rsti;
jumpstart;
.section/pmpm_data;
.varoutput[M+2*N-2]={0,0,0,0,0,0,0,0,0,0};
.section/pmpm_code;
start:
i0=inputx;
m0=1;
i8=output+N-1;
m8=1;
lcntr=M,dolabeluntillce;
f0=dm(i0,m0);
label:
pm(i8,m8)=f0;
conv:
i10=output;
m10=1;
m1=-1;
lcntr=M+N-1,doouteruntillce;
i1=inputy+N-1;
i9=i10;
f9=0;
lcntr=N,doinneruntillce;
f0=dm(i1,m1),f5=pm(i9,m10);
f12=f0*f5;
inner:
f9=f9+f12;
outer:
pm(i10,m10)=f9;
end:
idle;
实验结果:
卷积波形
实验结论:
通过本次试验,掌握了FFT的基本算法思想,通过对波形的观察,进一步了解了FFT算法的实质,进而利用FFT变换得到了两个信号的卷积,把FFT的作用落到了实处,知道了FFT的具体应用之一。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP 实验 报告