《DSP原理及应用》实验指导书.docx

上传人:b****8 文档编号:28864539 上传时间:2023-07-20 格式:DOCX 页数:31 大小:641.93KB
下载 相关 举报
《DSP原理及应用》实验指导书.docx_第1页
第1页 / 共31页
《DSP原理及应用》实验指导书.docx_第2页
第2页 / 共31页
《DSP原理及应用》实验指导书.docx_第3页
第3页 / 共31页
《DSP原理及应用》实验指导书.docx_第4页
第4页 / 共31页
《DSP原理及应用》实验指导书.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

《DSP原理及应用》实验指导书.docx

《《DSP原理及应用》实验指导书.docx》由会员分享,可在线阅读,更多相关《《DSP原理及应用》实验指导书.docx(31页珍藏版)》请在冰豆网上搜索。

《DSP原理及应用》实验指导书.docx

《DSP原理及应用》实验指导书

 

DSP原理及应用

实验指导书

 

编写人:

许成哲

审核人:

许一男

 

延边大学工学院

电子信息通信学科

目 录

一、基础实验部分

二、选做实验部分

三、创新实验部分

实验一CCS的使用实验

一、实验目的

1.熟悉掌握集成开发环境(CCS)软件。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器;

三、预习要求

1.预习CCS安装与配置。

四、实验内容

打开CCS5000主程序,打开的主界面如下:

本节使用工程“Volume1”为例做一个实验,该实验开发并运行一个简单的程序,指导读者如何新建一个工程,如何向工程添加源文件并修改代码,编译并且运行程序。

1.准备工作

在以下各节之前,为了便于学习,我们事先准备好实验文件。

在CCS的安装目录下,找到“\myprojects”目录,在这里新建一个名为“volume1”的目录,再到CCS安装目录下找到“\tutorial\sim54xx\volume1”目录,把下表的7个文件复制到刚才新建的目录下:

需要复制的文件

文件说明

volume.c

实验用C源文件

load.asm

实验用汇编源文件

vectors.asm

实验用中断向量表文件

volume.h

C函数使用的头文件

volume.cmd

内存定位文件

sine.dat

实验用数据文件

volume.gel

实验用GEL控制文件

2.新建工程文件

文件复制完成以后,启动CCS,再主菜单中单击“Project”(设计),会有“new”和“open”选项,创建新工程使用“new”选项。

程序会提问新建工程的名字以及保存位置,指定后单击“确定”即可。

3.向工程添加各类型文件

可以使用两种方式向工程添加源文件、CMD文件和库文件。

(1)添加源文件:

在主菜单中单击“Project”,选择“AddFilestoProject”命令,在弹出的添加文件对话框中找到目录“volume1”,选择文件“volume.c”,单击“打开”按钮,如下面左图所示。

另一个方法是在工程名“volume.pjt”上单击鼠标右键,选择“AddFiles”命令。

在弹出的添加文件的对话框中,找到目录“volume1”,再在添加文件对话框中单击“文件类型”,选择“AsmSourceFiles(*.a*;*.s*)”,这样在添加文件对话框里就只显示指定类型的文件。

同时选择“load.asm”和“vectors.asm”,单击“打开”按钮(通过这种方法也可添加C代码文件“volume.c”),如右下图所示。

(2)接着添加必需的内存定位文件“*.cmd”,使用上述任一方式,向工程里添加“volume.cmd”,注意在添加文件对话框的“文件类型”下拉列表中要选择“LinkCommandFile(*.cmd)”,该文件定义了各代码段和数据段在存储器中的位置。

(3)因为本实验工程是基于C语言编写的,因此还需要添加运行时支持库(Run-Time-SupportLibrary如果基于汇编的就不需要)。

使用上述任何一种方式,向工程添加“rts.lib”文件,该文件存放在CCS的安装目录“\c5400\cgtools\lib”下。

注意在添加文件对话框的“文件类型”下拉列表中要选择“ObjectLibraryFiles(*.o*,*.l*)”。

(4)添加头文件。

在工程名“volume.pjt”上单击鼠标右键,选择“ScanAllDependencies”,这样volume.c文件所包含的头文件“volume.h”将出现在工程浏览窗中的“Iclude”文件夹中。

头文件实际不用人工添加,在Build工程时,CCS本身就会自动完成扫描。

4.查阅代码

在继续完成实验之前,先阅读一下源代码。

明白各文件内容:

在工程浏览窗里的“volume.c”文件名上双击鼠标,即可在CCS的编辑窗口看到源代码,注意该文件的以下三个部分:

(1)在主函数输出消息"volumeexamplestarted"后,主函数进入一个无限循环,在循环内部调用了两个函数dataIO()与processing()。

(2)函数processing()对输入缓冲区的每个采样值乘以一个增益值“gain”,并将结果存放到输出缓冲区中。

改函数同时调用汇编程序load(),该函数会根据processing()传递过来的参数processingLoad来消耗指令周期,模拟复杂信号处理算法在时间上的消耗。

(3)函数dataIO()在本实验中不作任何实际操作而直接返回。

5.建造和运行程序

建造(Building)在这里指编译、汇编、链接三个独立步骤按顺序联合运行。

在主菜单中单击“Project”,选择“RebuildAll”,或者单击工具条图标

,CCS将重新对工程中所有文件进行编译、汇编、链接,并同步在底部窗口中显示编译连接信息。

连接完毕,CCS生成一个“.out”文件,默认存放在目录“volume1”下的“debug”(除错)目录中。

建造完毕后,再完成装载程序的步骤:

在主菜单中单击“File”,选择“LoadProgram”,在弹出对话框中,找到目录“volume1”下的“debug”目录,选择“volume.out”,并打开。

CCS装载完毕该文件到目标DSP以后,会自动弹出“Dissassembly”窗口,显示构成源代码的反汇编指令。

同时,CCS还会在底部弹出“stdout”栏,用于显示程序在运行时的输出信息。

现在可以运行我们的程序:

在主菜单中单击“Debug”,选择“GoMain”,让程序从主函数开始运行。

程序会停在main()处,并会有一个黄色的箭头

标记当前要执行的C语言代码。

如果希望同时看到C语言代码和对应编译生成的汇编代码,在主菜单中单击“View”,选择“MixedSource/ASM”,此时会有一个绿色箭头

标记当前要执行的汇编代码,如图所示:

在主菜单中单击“Debug”,选择“Run”,或单击工具条图标

,让程序全速运行。

如果能在底部的stdout标准输出窗口看到程序运行的输出信息“volumeexamplestarted”,证明程序能够正常运行。

在主菜单中单击“Debug”,选择“Run”,或单击工具条图标

,让程序停止运行。

常用的按钮如下:

单步执行;

不进入子程序中;

 从子程序中执行出;

执行到子程序开始处;

运行程序;

停止运行;

全速运行程序。

5.多种观察窗口帮助调试。

查看寄存器:

在CCS中选择View菜单中的CPURegisters命令。

查看数据:

选择View菜单中的Memory…命令,弹出设置窗口,按实际需要指定其中的参数,如起始地址等,就可以观察到数据单元中的值,该值可以以多种格式表示。

查看程序中变量的当前值:

可以在程序中用光标选中变量名,在鼠标右键菜单中选择AddtoWatchWindow命令就可以把该变量添加到Watch窗口。

随着程序的运行,可以在Watch窗口看到该变量的值的变化。

显示图形:

如果要观察的变量太多,例如要观察一个数组的值,那么可以用一种更直观的方法,就是把数据用图形的方式表现出来。

选择View菜单中的Graph命令,会有不同类型的图形可供选择。

常用的是时域/频域波形,即Time/Frequency…项。

在弹出的GraphProperty对话框中,可以设定图形的标题、数据的起始地址、采集缓冲区的大小、显示数据的大小、数据类型等属性。

五、实验报告

1.整理使用CCS的步骤。

六、思考题

1.总结DSP基本开发流程。

实验二卷积运算实验

一、实验目的

1.掌握卷积运算的基本原理;

2.掌握用C语言编写DSP程序的方法。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器。

三、预习要求

1.预习卷积的基本原理。

四、实验内容

1.在CCS环境中打开本实验的工程(Ex2.pjt)

2.编译并重建.out输出文件,然后通过仿真器把执行代码(.out的文件)下载到DSP芯片中;

3.把x,h和y添加到Watch窗口中作为观察对象(选中变量名,单击鼠标右键,在弹出菜单中选择“AddWatchWindow”命令);

4.单击运行

5.观察三个数组从初始化到卷积运算结束整个过程中的变化(可单击变量名前的“+”号把数组展开

);

6.修改输入序列的长度或初始值,重复上述过程,观察卷积结果。

五、实验报告

1.整理卷积运算原理;

2.整理实验步骤及其中间结果。

六、思考题

1.试用汇编语言编写实现卷积运算的程序;

2.考虑如何实现复数的卷积运算。

实验三相关运算实验

一、实验目的

1.掌握相关系数的估计方法;

2.掌握用C语言编写DSP程序的方法。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器。

三、预习要求

1.预习自相关系数和互相关系数理论知识。

四、实验内容

1.在CCS环境中打开本实验的工程(Ex3.pjt)

2.编译并重建.out输出文件,然后通过仿真器把执行代码(.out的文件)下载到DSP芯片中;

3.在Watch窗口中添加相关系数数组r作为观察对象;

4.单击运行

,观察数据值的变化;

5.修改估计模式mode,重复上述过程,观察有偏估计与无偏估计的差别;

6.修改输入数组x[]和y[]的初始赋值函数、参与估计的数组长度、输出数组的长度等参数,重复上述过程,观察运行结果。

五、实验报告

1.整理自相关与互相关系数理论内容;

2.整理每个实验步骤所能观察到的中间结果。

六、思考题

1.试证明上面给出的第二组相关系数估计公式的无偏性;

2.在本实验程序的基础上,修改代码,实现自相关系数的估计;

3.分析阶数对相关系数的影响。

实验四快速傅里叶变换实验

一、实验目的

1.掌握FFT算法的基本原理;

2.掌握用C语言编写DSP程序的方法。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器。

三、预习要求

1.预习基2FFT算法理论知识。

四、实验内容

1.在CCS环境中打开本实验的工程(Ex4.pjt)

2.编译并重建.out输出文件,然后通过仿真器把执行代码(.out的文件)下载到DSP芯片中;

3.运行程序;

4.选择view->graph->time/frequency… 。

设置对话框中的参数:

其中“StartAddress”设为“x_re”,“Acquisitionbuffersize”和“DisplayDatasize”都设为“64”,并且把“DSPDataType”设为“32-bitfloatingpoint”(如图),

设置好后观察输入信号序列的波形(单边指数函数,如图);

同样方法观察经DFT变换后的输出序列“y_re”的波形,“StartAddress”改为“y_re”,其余参数不变(如图);

5.在Watch窗口中添加i,j,k,m,n,a,b,c等变量,在Debug菜单中先“Restart”然后“Gomain”,单步运行程序,跟踪FFT算法的过程;

(可以跳过程序开始部分对各个数组的赋值代码,方法是在雷德算法的第一行代码前设置断点,然后先单击运行,待程序停在该断点后再单步执行后面的代码,见下图)

6.修改N的值(应为2的整数次幂,如8,16,32等,最大不超过256),或者修改输入信号x的函数,如直流、正弦、三角等,观察程序运行结果。

注意观察图形时,数据块大小要相应更改为当前N值。

五、实验报告

1.整理基2FFT理论知识;

2.整理每个实验步骤所能观察到的中间结果。

六、思考题

1.分析本实验程序中完成位倒序排列的“雷德算法”的原理;

2.参考资料,了解TMS320C5000系列专门为FFT运算提供的“比特反转寻址方式”;

3.思考如何实现实数序列的FFT,它在复数序列的算法基础上还能作哪些优化,从而进一步降低运算量和所需的存储空间。

实验五离散余弦变换实验

一、实验目的

1.掌握离散余弦变换算法的概念和实现方法;

2.掌握用C语言编写DSP程序的方法。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器。

三、预习要求

1.预习一维离散余弦变换理论知识。

四、实验内容

1.在CCS环境中打开本实验的工程(Ex5.pjt)

2.编译并重建.out输出文件,然后通过仿真器把执行代码(.out的文件)下载到DSP芯片中;

3.运行程序;

4.在Watch窗口中添加ck变量,观察离散余弦变换的结果,当要把ck展开时,程序会提示输入要显示的范围,源程序中N=8,因此只需显示0-7 如图);

5.修改N的值(可以是16,32,64…256),或者修改输入信号x的函数,重复上述过程,观察程序运行结果。

五、实验报告

1.整理离散余弦变换数理论内容;

2.整理每个实验步骤所能观察到的中间结果。

六、思考题

1.了解二维离散余弦变换的定义;

2.把源程序改写成纯实数运算。

实验六有限冲击响应滤波器实验

一、实验目的

1.掌握FIR滤波器的原理和窗函数设计法;

2.掌握用C语言编写DSP程序的方法。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器。

三、预习要求

1.预习FIR滤波器理论知识。

四、实验内容

1.在CCS环境中打开本实验的工程(Ex6.pjt)

2.编译并重建.out输出文件,然后通过仿真器把执行代码(.out的文件)下载到DSP芯片中;

3.阅读源代码,记下各种窗函数的公式;

4.运行程序;

5.选择view->graph->time/frequency…。

设置对话框中的参数:

其中“StartAddress”设为“hd”,“Acquisitionbuffersize”和“DisplayDatasize”都设为“21”(因为源程序中n=21),并且把“DSPDataType”设为“32-bitfloatingpoint”,设置好后观察理想冲击响应序列的波形示意图,可与公式对照分析;

6.观察其它序列的波形示意图,包括所用窗函数w,加窗后响应序列h和输出对数幅频响应db的图形,这时的“StartAddress”应分别设为“w”和“h”和“db”,其中观察前两者时数据块大小设为“21”(同n值),观察“db”时数据块大小设为“300”(同l值),所观察到的图形应大致如下面五组图所示;

7.从1-5依次修改m的值,按上面步骤观察各图形。

Øm=1时:

矩形窗函数(w)

加窗后序列(h)

加窗后的幅频响应db

 

Øm=2时:

三角窗函数(w)

加窗后序列(h)

加窗后的幅频响应db

 

Øm=3时:

汉宁窗函数w

加窗后序列h

加窗后的幅频响应db

 

Øm=4时:

汉明窗函数w

加窗后序列h

加窗后的幅频响应db

 

Øm=5时:

布莱克曼窗函数w

加窗后序列h

加窗后的幅频响应db

五、实验报告

1.整理FIR滤波器设计方法;

2.整理每个实验步骤所能观察到的中间结果。

六、思考题

1.总结窗函数法的设计步骤和关键问题。

实验七无限冲击响应滤波器实验

一、实验目的

1.掌握IIR滤波器的原理与设计方法;

2.掌握用C语言编写DSP程序的方法。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器。

三、预习要求

1.预习IIR滤波器理论知识。

四、实验内容

1.在CCS环境中打开本实验的工程(Ex7.pjt)

2.编译并重建.out输出文件,然后通过仿真器把执行代码(.out的文件)下载到DSP芯片中;

3.运行程序;

4.在Watch窗口观察系统函数H(z)的分子和分母系数ptr_b,ptr_a。

写出该滤波器的系统函数;

5.选择view->graph->time/frequency…。

设置对话框中的参数:

其中“StartAddress”设为“hwdb”,“Acquisitionbuffersize”和“DisplayDatasize”都设为“50”,并且把“DSPDataType”设为“32-bitfloatingpoint”,观察幅频响应的波形(如图);

6.修改滤波器的设计参量fp,fr,fs,ap,ar等,重复上述过程,观察设计结果。

(其参数值均在编写的程序中请注意按程序修改)

五、实验报告

1.整理IIR滤波器设计方法;

2.整理每个实验步骤所能观察到的中间结果。

六、思考题

1.总结巴特沃思型滤波器的设计方法。

实验八普通语音A/D与D/A实验

一、实验目的

1.熟悉5410DSP的MCBSP的使用;

2.了解AD50的结构;

3.掌握AD50各寄存器的意义及其设置;

4.掌握AD50与DSP的接口;

5.掌握AD50的通讯格式;

6.掌握AD50的DA实验。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器。

三、预习要求

1.预习MCBSP接口;

2.预习AD50接口及其使用方法。

四、实验内容

1.连接好DSP开发系统,音频线连接计算机和AD50模块的输入,另一条音频线连接AD50模块输出和扬声器输入,或者用耳机连接AD50模块输出;

2.调节RPC03可变电阻,使Uc02运放的正输入端(3脚和5脚)[出场前均设计好],输入电平为2.5V把JC05跳到上面3.3V,AD50做Master;

3.打开CPU寄存器观察窗口,把OVLY位设置为0(因为我们把程序放到片外,数据放到片内);

4.本实验工程文件(.\ad50ad_da\ad50.pjt),编译之后下载程序到DSP;

5.复位AD50,并观察AD50复位后默认的MCLK,FS的频率;

6.运行程序,用示波器观察设置AD50的MCLK,FS频率的变化;

7.当声音不清晰时可调节RPC02(VOCALOUTPUT旁边那个),调节音量,使音量大小恰当;

8.计算机用声卡信号源产生声音信号,测试输入输出信号波形。

五、实验报告

1.整理每个实验步骤所能观察到的中间结果。

六、思考题

1.总结A/D与D/A的原理。

实验九高精度音频A/D与D/A实验

一、实验目的

1.熟悉DSP中多功能缓冲串口(MCBSP);

2.熟悉数字D/A,A/D芯片的功能和结构;

3.掌握MCBSP及AIC23的设置和使用方法;

4.了解AIC23与MCBSP的硬件结构与连接方式。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器。

三、预习要求

1.预习MCBSP接口;

2.预习AIC23接口及其使用方法。

四、实验内容

本实验包含两部分:

一部分是AIC23的Bypass功能,即从线路输入口(LINEIN)输入音频信号,控制芯片内寄存器,使输入音频信号通过AIC23内Bypass通道经功率放大直接输出,实现模拟到模拟输出,另一部分是AIC23的D/A变换实验,即由DSP送来的音频数据字,经音频数字接口送到AIC23内D/A变换成模拟信号,经功率放大器由耳机输出口(HPOUT)输出。

1.我们首先要了解本次实验使用的硬件资源,在实验中我们使用5410芯片的MCBSP0口和AIC23,AIC23有控制接口,音频数据接口,而DSP只提供了MCBSP0口。

故该串口要复用,传送AIC23的控制字与音频数据字;

2.实验要求首先实现30秒的Bypass功能,然后自动转换为DSP芯片输出音频数据字;

注意事项:

(1)AIC23控制接口的通信模式是硬件控制,应将AIC23的MODE引脚拉高电平,置SPI模式,即跳线帽插在中间与右边。

(2)由CPLD的内部设置,在音频数据传送过程中,应设AIC23为DSP主模式,MCBSP0为DSP从模式,并注意收发时钟,帧同步的极性与延迟脉冲的个数设置匹配。

(3)注意AIC23休眠寄存器中ADC,DAC不能同时开启,否则芯片会自动关闭,在改变控制字后应激活寄存器,否则芯片不会进入工作状态。

3.音频线连接计算机和AIC23模块的输入(LINEIN),另一条音频线连接AIC23模块输出(PHONE)和扬声器输入,或者用耳机连接AIC23模块输出(PHONE),用计算机播放声音文件;

4.本实验工程文件(.\aic23bypassda\aic231215.pjt),编译之后下载程序到DSP;

5.运行程序,听声音输出的变化。

五、实验报告

1.整理每个实验步骤所能观察到的中间结果。

六、思考题

1.比较本实验和实验八。

实验十AIC23的数字录音实验

一、实验目的

1.熟悉掌握TMS32C5410配置CODEC芯片的过程;

2.熟悉AIC23芯片的使用;

3.掌握串口中断的配合使用。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器;

4.MIC一个。

三、预习要求

1.预习AIC23接口及其使用方法。

四、实验内容

1.用音频线连接实验箱的扬声器和AIC23模块的LINEOUT或者PHONE端,MIC端口连接一个MIC;

2.打开aic23micphone.pjt工程,这是一个AIC23的程序,编译;

3.将编译的aic23micphone.out文件通过仿真器下载到DSP芯片,执行程序;

4.听到“滴”的一声以后开始录音,大概6秒后“滴”的一声是录音结束,接着DSP会循环回放刚才录的声音。

如果想再次录音则需要再次下载并运行。

五、实验报告

1.整理每个实验步骤所能观察到的中间结果。

六、思考题

1.总结本实验的流程。

实验十一BootLoader实验

一、实验目的

1.掌握TMS32C5410Bootloader的原理;

2.掌握TMS32C5410Bootloader的并行加载程序的编写。

二、实验仪器及材料

1.一台装有CCS软件的计算机;

2.DSP实验箱的TMS320C5410主控板;

3.DSP硬件仿真器;

三、预习要求

1.预习BootLoader内容。

四、实验内容

1.打开bypass.pjt工程,这是一个AIC23的程序,编译时注意加上参数-v548,在Project菜单下的Build

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1