DSP实验报告.ppt
- 文档编号:7881531
- 上传时间:2023-05-12
- 格式:PPT
- 页数:62
- 大小:1.24MB
DSP实验报告.ppt
《DSP实验报告.ppt》由会员分享,可在线阅读,更多相关《DSP实验报告.ppt(62页珍藏版)》请在冰点文库上搜索。
实验一CodeComposerStudio软件的使用实验二DSP的C语言编程实验三DSP的汇编(ASM)语言编程实验四汇编语言和C语言的混合编程实验五DSP的定时器实验六外中断实验七数字正弦振荡器的设计实验八有限冲激响应滤波器(FIR)的设计实验九快速傅立叶变换(FFT)算法实验十语音信号编码解码(G.711),Contents,一实验目的1掌握CodeComposerStudio3.1的安装和配置步骤。
2了解DSP开发系统中计算机与目标系统的连接方法。
3了解CodeComposerStudio3.1软件的操作环境和基本功能,了解TMS320C55xx软件开发过程。
实验一CodeComposerStudio软件的使用,二实验设备,1PC兼容机一台,WindowsXP+CCS3.1。
2ICETEK-VC5509-A实验箱一台(配备ICETEK-USB仿真器和ICETEKVC5509评估板,+5V电源)。
3USB连接电缆一条。
三实验步骤,1实验准备2设置CodeComposerStudio3.1在硬件仿真(Emulator)方式下运行;3启动CodeComposerStudio3.1,选择菜单DebugResetCPU。
4创建工程,弹出下图,按编号顺序操作建立volume.pjt工程文件:
5编辑修改工程中的文件,6基本调试功能下载程序。
设置软件调试断点。
利用断点调试程序。
按F10执行到write_buffer()函数。
再按F11,程序将转到write_buffer函数中运行。
此时,为了返回主函数,按shift-F11完成write_buffer函数的执行。
再执行到write_buffer行,按F10执行程序,对比与F11执行的不同。
执行ViewWatchWindow打开观察窗口。
在volume.c中,用鼠标双击一个变量(比如num),再单击鼠标右键,选择“QuickWatch”,CCS将打开QuickWatch窗口并显示选中的变量。
在volume.c中,选中变量num,单击鼠标右键,选择“AddtoWatchWindow”,CCS将把变量添加到观察窗口并显示选中的变量值。
在观察窗口中双击变量,则可以在这个窗口中改变变量的值。
把str变量加到观察窗口中,点击变量左边的”+”,观察窗口可以展开结构变量,并且显示结构变量的每个元素的值。
把str变量加到观察窗口中;执行程序进入write_buffer函数,此时num变量超出了作用范围,可以利用CallStack窗口察看在其他函数中的变量。
7使用观察窗口,8文件输入/输出,请你简要阐述CCS软件的使用方法,并给出你的实验结果。
四实验报告,实验二DSP的C语言编程,一实验目的1学习用标准C语言编制程序;了解常用的C语言程序设计方法和组成部分。
2学习编制连接命令文件,并用来控制代码的连接。
3学会建立和改变map文件,以及利用它观察DSP内存使用情况的方法。
4熟悉使用软件仿真方式调试程序。
二实验设备,PC兼容机一台,操作系统为WindowsXP,安装CodeComposerStudio3.1软件。
三实验原理,CCS在编译标准C语言程序时,首先将其编译成相应汇编语言程序,再进一步编译成DSP的可执行代码。
最后生成的是COFF格式的可下载到DSP中运行的文件,其文件名后缀为.out。
由于使用C语言编制程序,其中调用的标准C的库函数由专门的库提供,在编译链接时编译系统还负责构建C运行环境。
所以工程中需注明使用C的支持库。
四实验步骤,1设置软件仿真模式.2建立新的工程文件:
3设置工程文件,4编辑输入源程序,新建源程序窗口:
输入源程序:
main()intx,y,z;x=1;y=2;while
(1)z=x+y;,输入连接命令文件内容:
-lrts55x.libMEMORYDARAM:
o=0x100,l=0x7f00DARAM2:
o=0x8000,l=0x8000SECTIONS.text:
DARAM.bss:
DARAM.stack:
DARAM.cinit:
DARAM,链接命令文件,将上述编译的源程序加入工程CProgram.pjt,5编译源文件、下载可执行程序观察程序运行结果内存映像文件对照观察map文件和cmd文件的内容改变内存分配,五实验结果,1程序入口为_c_int00,执行标准C库中的程序,负责初始化C环境、申请堆栈、初始化有初始值的变量等。
2程序最终转到用户编制的主函数运行。
3程序在主函数中的无限循环中持续运行。
六实验报告试阐述DSP的C语言程序的运行特点,给出你的实验结果,然后修改程序完成计算sin(2.3)+cos(1.7)的值.,实验三DSP的汇编(ASM)语言编程,一实验目的1学习用汇编语言编制程序;了解汇编语言程序与C语言程序的区别和在设置上的不同。
2了解TMS320C55x汇编语言程序结果和一些简单的汇编语句用法。
3学习在CCS环境中调试汇编代码。
二实验设备,PC兼容机一台,操作系统为WindowsXP,安装CodeComposerStudio3.1软件。
三实验原理,汇编语言程序除了程序中必须使用汇编语句之外,其编译选项的设置与C语言编制的程序也稍有不同。
其区别为:
汇编语言程序在执行时直接从用户指定入口开始,而C语言程序在执行时,先要调用C标准库中的初始化程序(入口标号为“_c_init00”),完成设置之后,才转入用户的主程序main()运行。
由于CCS的代码链接器默认支持C语言,在编制汇编语言程序时,需要设置链接参数,选择非自动初始化,注明汇编程序的入口地址。
四实验步骤,1设置软件仿真模式2建立新的工程文件:
3设置工程文件,4编辑输入源程序,新建源程序窗口:
输入源程序:
main()intx,y,z;x=1;y=2;while
(1)z=x+y;,新建源程序窗口:
输入源程序:
.mmregs.modelcall=c55_std.modelmem=large.globalx.bssx,1,0,0.symx,x,4,2,16.globaly.bssz,1,0,0.symz,z,4,2,16.sect“.text”,.align4.globalstart.symstart,start,36,2,start:
MOV#2,*(#y)MOV#1,*(#x)L1:
MOV*(#y),AR1ADD*(#x),AR1,AR1MOVAR1,*(#z)BL1,输入连接命令文件内容:
MEMORYDARAM:
o=0x100,l=0x7f00DARAM2:
o=0x8000,l=0x8000SECTIONS.text:
DARAM.bss:
DARAM.stackDARAM,链接命令文件,将上述编译的源程序加入工程TASM.pjt,5编译源文件、下载可执行程序,内存映像文件对照观察map文件和cmd文件的内容,观察程序运行结果,五实验报告,1、简要阐述DSP汇编语言程序的运行特点,给出实验结果。
2、修改程序完成0f000h+0e000h的计算。
实验四汇编语言和C语言的混合编程,一实验目的1学习在C工程中加入汇编编程的混合编程方法。
2了解混合编程的注意事项。
3理解混合编程的必要性和在什么情况下要采用混合编程。
二实验设备,PC兼容机一台,安装CodeComposerStudio3.1软件。
三实验原理,1使用C语言开发应用程序的优缺点:
优点:
-易于开发和维护。
-可移植性强。
-不容易发生流水线冲突。
-有大量现存的算法可利用。
-适用于人机界面的开发。
缺点:
-代码量大。
-程序效率较低。
-优化代码存在一定困难。
2使用汇编语言开发应用程序的优缺点:
优点:
-更能发挥系统特点。
-代码精练,效率高。
-代码量小。
缺点:
-可读性差。
-可移植性差。
-容易产生流水线冲突。
3如何混合编程,混合工程:
一般地,我们使用C程序为主,加入汇编语言程序模块。
使用模块技术:
在应用程序中划分出比较清晰的模块,不同模块可采用不同语言设计。
强调效率和速度的模块采用汇编设计。
尽量少用汇编语言设计程序。
如何找出需要用汇编程序设计的模块:
用C语言完成设计后,运用CCS的软件仿真功能,找到程序运行中的瓶颈。
找到的模块单独写成子程序,存入独立的文件中。
观察需要优化的模块的汇编结果,进行人工优化。
运用人工优化后形成的汇编程序模块,代替原来需要优化的C语言模块。
程序中可使用内嵌汇编。
4何时使用混合编程技术:
当程序中需要操作与硬件密切相关的设备,而用C语言较难实现时。
当需要绕开C编译器的规定,进行特殊操作时。
当需要提高模块的效率,而C语言程序无法达到要求时。
在汇编程序中使用其他C语言模块中定义的变量或函数名称时,需要在引用的名称前加一下划线。
汇编语言写的子程序需要符合C语言的调用规则。
在汇编语言模块中,需要编程者自己消除流水线冲突。
5使用混合编程时的注意事项:
在使用内嵌汇编技术时,需要考虑以下内容:
要非常小心地处理,以免破坏C语言操作环境。
避免从内嵌汇编语句跳转到C语言模块中。
不要在内嵌汇编语句中改变C语言模块中变量的值,但可以安全读取。
在汇编程序中不要使用内嵌汇编。
实验程序提供了一个使用C与汇编程序混合编程的实例,是一个用汇编语言模块优化自己编制的应用程序的实例。
6实验程序解释:
四实验步骤,1设置软件仿真模式2打开工程、浏览程序内容、编译生成和下载可执行代码:
3修改程序:
修改算法部分为单独的子程序。
intadd(inta,intb)return(a+b);修改完成后,可以编译、下载、运行到断点,观察运行结果,判断子程序是否能完全与原程序一样完成算法。
将子程序移入add.c。
将add.c加入工程,编译、下载、运行,检查结果,保证运算无误。
选择菜单Project-BuildOptions,进行如下设置:
重新编译工程将工程中的add.c换成add.asm。
重新编译、下载、运行程序并观察结果。
五、实验报告简要阐述DSP混合编程的特点和注意事项,给出你的实验结果。
实验五DSP的定时器,一实验目的1通过实验熟悉VC5509A的定时器;2掌握VC5509A定时器的控制方法;3掌握VC5509A的中断结构和对中断的处理流程;4学会C语言中断程序设计,以及运用中断程序控制程序流程。
二实验设备,计算机,ICETEK-VC5509-A实验箱.,三实验原理,1.TMS320VC5509A内部有两个20位通用定时器,每个通用定时器包括:
一个16位的减计数的计数器TIM;一个16位的定时器周期寄存器PRD;一个16位的定时器控制寄存器TCR;一个16位的定时器预定标寄存器PSCR;,2中断响应过程:
外设事件要引起CPU中断,必须保证:
IER中相应使能位被使能,IFR相应中断也被使能。
在软件中,当设置好相应中断标志后,开中断,进入等待中断发生的状态;外设(如定时器)中断发生时,首先跳转到相应中断高级的服务程序中(如:
定时器1会引起TINT中断),程序在进行服务操作之后,应将本外设的中断标志位清除以便能继续中断,然后返回。
五实验报告,阐述该DSP处理器定时器的控制方法和程序输出结果。
四实验步骤见实验教材。
一实验目的1.通过实验熟悉VC5509A的中断响应过程。
2.学会C语言中断程序设计,以及运用中断程序控制程序流程。
二实验设备计算机,ICETEK-VC5509-A实验箱。
实验六外中断,三实验原理1中断及中断处理过程中断简介:
中断是一种由硬件或软件驱动的信号。
DSP处理中断的步骤:
接收中断请求。
响应中断请求。
准备执行中断服务程序。
执行中断服务程序。
中断向量表外中断:
TMS320C5509可以响应INT0-INT4五个外中断。
五实验报告,阐述该DSP处理器中断的原理、控制方法和程序输出结果。
四实验步骤见实验教材。
实验七数字正弦振荡器的设计,一实验目的1进一步掌握C和ASSEMBLY的混合编程。
2进一步掌握定时器中断的使用方法。
3学习CCS中图形观察动态数据的方式。
4学习用定时器实现数字振荡器的算法。
二实验设备,PC兼容机一台,安装CodeComposerStudio3.1软件。
三、实验原理,四、实验内容请你运用在前面实验中学到的知识,结合本节中介绍的数字振荡器设计原理,在CCS环境下实现该数字振荡器。
五、实验报告给出数字振荡器设计过程,中断矢量表内容,源程序,图形观察的输出结果。
一实验目的1掌握用窗函数法设计FIR数字滤波器的原理和方法。
2熟悉线性相位FIR数字滤波器特性。
3了解各种窗函数对滤波器特性的影响。
实验八有限冲激响应滤波器的设计,二实验设备PC一台,安装CodeComposerStudio3.1软件。
三实验原理1有限冲激响应数字滤波器的基础理论(请参考相关书籍)。
2模拟滤波器原理(巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器、贝塞尔滤波器)。
3数字滤波器系数的确定方法。
4根据要求设计低通FIR滤波器。
四、实验内容请你在示例程序C:
ICETEKVC5509AeVC5509AeLab0501-FIRFir.pjt的基础上编写程序,选用合适的高通滤波参数滤掉实验的输入波形中的低频信号。
五、实验报告请你阐述FIR滤波器的基本原理,你所编写的程序的实现过程以及得到的滤波结果。
实验九快速傅立叶变换(FFT)算法,一实验目的1掌握用窗函数法设计FFT快速傅里叶的原理和方法;2熟悉FFT快速傅里叶特性;3了解各种窗函数对快速傅里叶特性的影响。
二实验设备PC兼容机一台,安装CodeComposerStudio3.1。
三实验原理见相关参考书。
四、实验内容请你根据本节中所述的实验原理和程序流程图编写程序实现FFT变换的计算,看看能否得到类似如下所示的结果。
五、实验报告要求给出FFT的计算流程,源程序,图形观察的输出结果。
实验十语音信号编码解码(G.711),一实验目的1熟悉ICETEKVC5509-A板上语音codec芯片TLV320AIC23的设计和程序控制原理。
2了解语音编码G.711的特点、工作原理及其编程。
3了解PCM编码过程及应用,学习ALaw压缩解压缩方法的运算过程和程序编制实现。
4通过实验体会语音编解码过程及应用。
二实验设备计算机,ICETEK-VC5509-A实验箱,耳机,麦克风。
三、实验原理参见实验教材。
四、实验内容
(1)完成练习C:
ICETEKVC5509AeVC5509AeLab0702-AudioG711audio.pjt
(2)试采用查找表法提高原程序压扩算法速度。
五、实验报告请你简要阐述G.711算法的基本原理,并将示例程序和你的程序做一定对比。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP 实验 报告