课程教案课程名称:DSP技术实验任课教师:成利香所属系部:电气与信息工程学院教学班级:电子1103,通信1101教学时间:2013—2014学年第2学期湖南工学院课程基本信息课程名称DSP技术实验课程代码总计:16学时讲课:学时实验:16学时上机:学时课程设计:周学分类别必修课(√)选修课()理论课()实验课(√)任课教师成利香职称讲师授课对象专业班级:电子1103,通信1101共2个班课程简介(不超过1000字)“DSP技术实验”是电子信息专业本科生的一门必修的实验课,通过本课程的学习,让学生深入了解tms320vc54X组成、工作原理及应用技术。实验平台选用tms320vc5416做为主处理器,介绍了DSP的通用开发环境CCS5000,让学生通过调试简单的示例程序来学习DSP的开发,并通过外围的I/O扩展以及定时器和中断系统让学生对硬件做一些基本的了解。要求学生在学完本课程以后,具有阅读各类DSP技术资料的自学能力和进行DSP应用系统设计的开发能力,并为其它后续课程奠定数字信号处理基础。1.实验一:熟悉CCS开发环境。掌握CCS5000的安装、设置以及启动。掌握打开、创建和管理一个工程;掌握工程的编辑、装载和编辑环境的设置;了解工程文件系统的组成。2.实验五:DSP时钟和定时器。掌握54X系列DSP内部时钟和定时器的工作原理和应用。3.DSP中断系统掌握54X系列DSP中断系统的工作原理和应用。4.发光二极管实验了解I/O访问方式。熟练掌握DSP的各种指令。编写调试发光二管流水灯程序。5.液晶显示实验进一步掌握I/O读写方式。掌握DSP控制图形LCD显示方法6.直流电机控制实验要求学生掌握采用DSP的PWM输出;进一步熟悉DSP的特征引脚功能;掌握DSP对直流电机的控制原理;7.快速傅立叶变换实验。掌握计算FFT的计算机实现方法.分析时域离散信号、系统和系统响应8.FIIR滤波器实验掌握FIR滤波器的基本原理和实现方法熟悉DSP编程技巧学生在完成每个实验项目后,要求认真撰写包括实验名称、目的要求、设计步骤、实验电路、实验结果及实验结果分析、总结与讨论等内容的实验报告,并鼓励学生在报告中发表自己的独到见解和所做的实验创新。教师将根据学生实验过程中的综合表现和对实验报告的批阅情况,对学生的实验成绩进行认真评定。该课程以考查方式对学生的实验成绩进行考核。基本教材和主要参考资料教材:TMS320C54XDSP原理及应用(第二版)乔瑞萍等编著参考书1.DSP技术与应用实例电子工业出版社赵红怡编著2003年6月第一版2.TMS320C54xDSP应用程序设计与开发刘益成编著北京航空航天大学出版社2002年5月出湖南工学院教案用纸p一基础实验:CCS的使用与简单应用程序的调试1.1实验目的1.熟悉CCS集成开发环境,掌握工程的生成方法;2.熟悉SEED-DEC5416实验环境;3.掌握CCS集成开发环境的调试方法;1.2实验内容1.DSP源文件的建立;2.DSP程序工程文件的建立;3.学习使用CCS集成开发工具的调试工具;1.3实验知识背景1.3.1CCS简介1.CCS提供了配置、建立、调试、跟踪和分析程序的工具,它便于实时、嵌入式信号处理程序的编制和测试,它能够加速开发进程,提高工作效率。CCS提供了基本的代码生成工具,它们具有一系列的调试、分析能力。CCS支持如下所示的开发周期的所有阶段。1.3.1CCS简介1.CCS提供了配置、建立、调试、跟踪和分析程序的工具,它便于实时、嵌入式信号处理程序的编制和测试,它能够加速开发进程,提高工作效率。CCS提供了基本的代码生成工具,它们具有一系列的调试、分析能力。CCS支持如下所示的开发周期的所有阶段。湖南工学院教案用纸p2.CCS窗口介绍1.3.2CCS常用文件介绍使用CCS时,经常遇见下述扩展名文件:1.project.mak:CCS使用的工程文件2.program.c:C程序源文件3.program.asm:汇编程序源文件4.filename.h:C程序的头文件,包含DSP/BIOSAPI模块的头文件5.filename.lib:库文件6.project.cmd:连接命令文件7.program.obj:由源文件编译或汇编而得的目标文件8.program.out:(经完整的编译、汇编以及连接的)可执行文件9.project.wks:存储环境设置信息的工作区文件保存配置文件时将产生下列文件:1.programcfg.cmd:连接器命令文件2.programcfg.h54:汇编头文件3.programcfg.s54:汇编源文件湖南工学院教案用纸p1.3.3CCS常用指令简介1.设置断点。将光标放置在需要设置断点的程序行前,选择Debug→Breakpoints,即完成可一个断点的设置。2.CCS提供3种方法复位目标板1)ResetDSP:Debug→ResetD,初始化所有的寄存器内容并暂停运行中的程序。使用此命令后,要重新装载.out文件后,在执行程序。2)Restart:Debug→Restart,将PC值恢复到当前载入程序的入口地址。3)Gomain:Debug→Gomain,将程序运行到主程序的入口处暂停。3.CCS提供4种执行操作1)执行执行:Debug→Run,程序运行直到遇到断点为止。2)暂停执行:Debug→Halt,程序停止运行。3)动画执行:Debug→Animate,用户反复运行程序,直到遇到断点为止。4)自由执行:Debug→RunFree,禁止所有断点运行程序。4.CCS提供4种单步执行操作1)单步进入:Debug→stepinto,快捷键F8,当调试语句不是基本的汇编指令时,此操作进入语句内部。2)单步执行:Debug→stepOver,此命令将函数或子函数当作一条语句执行,不进入内部调试。3)单步跳出:Debug→stepOut,此命令作用为从子程序中跳出4)执行到光标处:Debug→RuntoCursor,快捷键crtl+F10,此命令作用为将程序运行到光标处。5.内存、寄存器与变量的操作1)查看变量使用view→WatchWindow命令2)查看寄存器使用view→Registers→CPURegisters命令3)查看内存使用view→memory命令湖南工学院教案用纸p6.Graph的设置即图形显示1)选择View→Graph→Time/Frequency。2)在弹出的GraphPropertyDialog对话窗中,将GraphTitle,StartAddress,AcquisitionBufferSize,DisplayDataSize,DSPDataType等的属性可改变为如下图所示(也可根据具体需要设置属性)。向下滚动右侧的滚动条或调整dialog框的大小可看到所有的属性。1.4实验步骤1).将DSP仿真器与计算机连接好;2).将DSP仿真器的JTAG插头与SEED-DEC5416单元的J1相连接;3).启动计算机,当计算机启动后,打开SEED-DTK_DBD的电源。观察SEED-DTK-IO1单元的+5V,+3.3V,+15V,-15V的电源指示灯,SEED_DEC5416的D2以及SEED-DSK2812的D2是否均亮;若有不亮的,请断开电源,检查电源。4).双击图标进入CCS环境。下面按照原文件、工程文件以及编译条件的设置来分别介绍一下CCS的使用。1.4.1创建源文件1).打开CCS选择File→New→SourceFile命令2).编写源代码并保存3).保存源程序名为math.c,选择File→Save4).创建其他源程序(如.cmd)可重复上述步骤。1.4.2创建工程文件1.打开CCS,点击Project--New,创建一个新工程,其中工程名及路径可任意指定2.弹出如下对话框:3.在Project中填入工程名,Location中输入工程路径;其余按照默认选项,点击完成即可完成工程创建。4点击Project选择addfilestoproject,添加工程所需文件。湖南工学院教案用纸p5.在弹出的对话框中的下拉菜单中分别选择.c点击打开,即可添加源程序XXX.c添加到工程中。6.同样的方法可以添加文件XXX.cmd、XXX.lib到工程中;在下面窗口中可以看到XXX.c、XXX.cmd、XXX.lib文件已经加到工程文件中。7.以下操作可使您对工程中的文件进行打开、删除、查看属性等操作1.4.3设置编译与连接选项1.点击Project选择BuildOpitions2.在弹出的对话框中设置相应的编译参数,一般情况下,按默认值就可以;3.在弹出的对话框中选择连接的参数设置,设置输出文件名,堆栈的大小以及初始化的方式。1.4.4工程编译与调试1.点击Project→Buildall,对工程进行编译,如正确则生成out文件;若是修改程序,可以使用Project→Build命令,进行编译连接,它只对修改部分做编译连接工作。可节省编译与连接的时间。编译通过,生成.out文件。2.点击File→loadprogram,在弹出的对话框中载入debug文件夹下的.out可执行文件。3.装载完毕4.点击debug→GoMain回到C程序的入口5.打开File→Workspace→SaveWorkspace保存调试环境,以便下次调试时不需要重新进行设置。只要File→Workspace→LoadWorkspace即可恢复当前设置1.5完成简单应用程序的调试1.6记录实验结果1.7完成实验报告:湖南工学院教案用纸p二.发光二极管显示实验2.1实验目的1.熟悉SZ-DSPF开发教学平台的使用;2.掌握DSP对I/OII的访问方式;3.熟悉C语言程序设。2.2实验设备计算机;DsP硬件仿真器;SZ-DSPF开发教学平台。2.3实验硬件设置在做实验之前,需要接通该实验所需的硬件电路,本实验为:先将实验箱上的电源开关“MS2,MS3和MS4”按下,再将机箱右侧的船型开关往I”方向打开电源;SZ-5416主控模块上的J7,J9,J4,J16短接;在“设置模块”中将“A和C”设置为“1。然后开始做实验,注意在做DSP实验时一开始按了SZ-5416主控模块上的K1硬件复位后,程序运行中不要再按复位键,以免实验由于DSP复位而失败。2.4实验原理DSP处理器TMS320VC5416的64K字I/O空间必须通过外加缓冲或锁存电路,配合外部I/O读写控制时一序构成片外外设的控制电路。所以木实验中采用CPLD(CEPM7128)和锁存器(在XC95216中已设计好)给DSP扩展了一个I/O口,来完成DSP对I/O口的访问。本实验程序主要是实现将数据往一个I/O端口送,从而显示一种状态,来验证DSP对I/O口的访问,实验中是由DSP直接编程,往发光二极管的I/O口端地址C002h送数,通过观察发光二极管的变化,来验证其正确性。硬件原理图请参考“SZ-LK板”的说明,逻辑关系请参考第二章逻辑分析5416部分,数据流程请参考第五章中的发光二极管。湖南工学院教案用纸p2.4程序设计及步骤:1.程序设计流图如下:2.完成源程序和连接命令文件的编写3.编译连接生成可执行文件4.下载并记录实验结果2.5实验思考1、如何设置DP,SP值,以及DP,SP在程序中所起的作用是什么?2、如何理解、设置I/O等待寄存器?湖南工学院教案用纸p三.设计实验按键中断显示实验3.1实验目的1.了解DSP外部中断的使用,中断服务程序的设计方法;2.掌握DSP中断向量表的划分。3.2实验设备计算机;DSP硬件仿真器;SZ-DSPF开发教学平台。3.3实验硬件设置做实验之前,需要接通该实验所需的硬件电路,木实验为:先将实验箱上的电源开关“MS2,MS3和MS4”按下,再将机箱右侧的船型开关往I”方向打开电源;SZ-5416的主控模块上的J7,J9,J4,J16短接;在“设置模块”中将“A和C”设置为“1。然后开始做实验,注意在做DSP实验时一开始按了SZ-5416的主控模块上的K1硬件复位后,程序