DSP实验教案.docx

上传人:b****4 文档编号:3635094 上传时间:2022-11-24 格式:DOCX 页数:22 大小:346.80KB
下载 相关 举报
DSP实验教案.docx_第1页
第1页 / 共22页
DSP实验教案.docx_第2页
第2页 / 共22页
DSP实验教案.docx_第3页
第3页 / 共22页
DSP实验教案.docx_第4页
第4页 / 共22页
DSP实验教案.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

DSP实验教案.docx

《DSP实验教案.docx》由会员分享,可在线阅读,更多相关《DSP实验教案.docx(22页珍藏版)》请在冰豆网上搜索。

DSP实验教案.docx

DSP实验教案

课程教案

课程名称:

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.<>电子工业出版社赵红怡编著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支持如下所示的开发周期的所有阶段。

湖南工学院教案用纸p

2.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:

汇编源文件

湖南工学院教案用纸p

1.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命令

 

湖南工学院教案用纸p

6.Graph的设置即图形显示

1)选择View→Graph→Time/Frequency。

2)在弹出的GraphPropertyDialog对话窗中,将GraphTitle,Start

Address,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→Save

4).创建其他源程序(如.cmd)可重复上述步骤。

1.4.2创建工程文件

1.打开CCS,点击Project-->New,创建一个新工程,其中工程名及路径可任意指定

2.弹出如下对话框:

3.在Project中填入工程名,Location中输入工程路径;其余按照默认选项,点击完成即可完成工程创建。

4点击Project选择addfilestoproject,添加工程所需文件。

湖南工学院教案用纸p

5.在弹出的对话框中的下拉菜单中分别选择.c点击打开,即可添加源程序XXX.c添加到工程中。

6.同样的方法可以添加文件XXX.cmd、XXX.lib到工程中;在下面窗口中可以看到XXX.c、XXX.cmd、XXX.lib文件已经加到工程文件中。

7.以下操作可使您对工程中的文件进行打开、删除、查看属性等操作

1.4.3设置编译与连接选项

1.点击Project选择BuildOpitions

2.在弹出的对话框中设置相应的编译参数,一般情况下,按默认值就可以;

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部分,数据流程请参考第五章中的发光二极管。

 

湖南工学院教案用纸p

2.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硬件复位后,程序运行中不要再按复位键,以免实验由十DSP复位而失败。

3.4实验原理及说明

本实验采用键盘中断,当有键按下时一给DSP一个中断信号(INT2)DSP通过此I/O端口地址COOlh读键值,在读取键值后由数码管显T出来。

硬件原理图请参考“SZ-LK板”的说明,逻辑关系请参考第二章逻辑分析5416部分,数据流程请参考第五章中的数码管和按键。

中断标志寄存器(IFR},中断屏蔽寄存器(IMR)。

3.5实验步骤及结果

本实验是一个测试键盘的实验,运行程序依次按键1-8,数码管依次显T7-0,中间键一一对应,任意按一键,其对应的数码管显不相应的数字。

步骤:

1.启动CCS}编写实验程序代码(可参考随机光盘中的例程alldsp4\h2keptest,进行编译并加载到DSP中。

2.采用单步运行或执行到光标处,或全速运行。

观察其结果。

(具体请参考实验一)

 

湖南工学院教案用纸p

3.6实验程序框图

3.7完成实验报告及实验思考

1.分析下例指令的特点POPD,POPM,PSHDPUSHM?

2.分析中断管理流程及中断向量表的特点。

 

湖南工学院教案用纸p

四、定时器实验

4.1实验目的

1.了解DSP汇编程序的构成;

2.了解DSP程序各段的含义;

3.熟悉在汇编条件下如何编写中断服务程序;

4.了解串行通讯的过程

5.掌握长时间间隔的定时器的处理。

6.掌握片内外设的设置方法。

4.2实验内容

1.DSP的初始设置;

2.DSP中断向量表的建立;

3.定时中断的编写;

4.查询方式异步串口程序的编写。

4.3实验要求

能够掌据汇编语言的程序结构。

正确进行异步串口的通讯与定时器的设置。

能够与系统正确通讯。

通过LCD与键盘可以控制定时器的运行。

4.4实验程序功能与结构说明

 

湖南工学院教案用纸p

4.5.实验步骤

首先将光盘下03.ExamplesofProgram\04.SEED_DTK-DBD调试实验程

序目录下的CCS-Timer的文件夹拷贝到D:

盘根目录下。

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的操作环境。

5.装入timer.pjt工程文件,添加dtk-boot.gel文件。

6.装载程序timer.out,进行调试。

7.在程序的第101行“i=i+1;”处设置断点。

8.运行程序,程序会停在断点处,表明已进入定时器中断。

继续运行程序,

程序每次都会停在断点处。

实验者可根据自己的需要改变周期寄存器的

值,从而控制每次进中断的时间。

4.6思考题

理解DSP程序的编写过程,如何编写中断程序?

湖南工学院教案用纸p

五、液晶显示实验

5.1实验目的

了解工作原理,

熟悉DSP和外围器件的链接和操作。

学习DSP控制液晶显示汉子和图像的程序设计

5.2实验设备

计算机,仿真器,DSP开发平台

5.3实验硬件设置

做实验之前,需要接通该实验所需的硬件电路,实验操作:

先将实验箱上的电源开关“MS2”、“MS3”和“MS4”按下,再将机箱右侧的船型开关往“I”的方向打开电源,SZ-5416主控模块上的J7,J9,J4,J16短接,在“设置模块”中将“A”和“C”设置为“1”,然后开始做实验,注意在做DSP实验时按过了复位键后,程序运行时不要再按复位键,以免实验由于DSP复位而失败。

 

5.4实验原理

本液晶显示屏是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128X64全点阵液晶显示器组成,可完成图形显示,也可以显示8X4个(16X16点阵)汉字。

对于液晶显示屏的控制可以分为几种状态来控制,具体详细资料请参阅随机光盘资料中的液晶显示屏资料。

根据液晶显示原理,我们可以用DSP的I/O方式对液晶显示屏进行控制,CPLD(EPM7128)利用DSP的控制线IOSTRB和地址线经逻辑组合扩展I/O口,并给出液晶显示需要的几种状态来控制,这样DSP就只要采用I/O访问方式就能对液晶显示屏读写控制和寄存器控制等来完成显示的功能,具体详细资料请参阅随机光盘资料中的“SZ-LK板”的说明,逻辑关系参考第二章逻辑分析5416部分,数据流程请参考第五章中的LCD。

5.5实验步骤实验

本实验是一个液晶的测试实验,运行程序即可在液晶屏中看到一个小熊猫。

步骤:

1、启动CCS,编写实验程序代码(可参考随机光盘中的例程),进行编译并加载到DSP中。

2、采用单步运行或执行到光标处,或全速运行。

观察其结果。

(具体方法请参考实验一)

5.6实验思考

1.尝试调入其他数据,显示不同的图像和文字

2.思考如何显示一段连续的动态图像

湖南工学院教案用纸p

六、直流电机实验

6.1实验目的:

了解直流电机及电开关的工作原理。

学习DSP用I/o方式对直流电机控制及测速的编程方式

6.2实验设备

计算机,仿真器,DSP开发平台

6.3实验原理

通常直流电机由一串脉冲控制,通过调节脉冲的电平方向及脉冲宽度可以使得电机正转、反转、加速、减速和停转。

直流电机转动的基本原理:

转动的方向由电压控制,电压是正时则电机就正转,电压我负时则电机就反转,如下图所示:

本实验是通过DSP的I/O方式来控制电机的运转,这里采用CPLD(EMP7128)给DSP扩展了一个I/O口,来完成对步进电机的控制。

在DSP的I/O方式下,将DSP的数据经过电平转换的低两位数据线D1、D0送往直流电机模块的锁存器,信号再经过隔离和驱动后对直流电机控制。

DSP对步进电控制的I/O访问一址是C004H,其硬件的原理图请参考“2.11电机模块”的说明,逻辑关系请参考第二章逻辑分析5416部分,数据应和请参考第五章中的电机部分。

 

6.4实验步骤:

本实验是一个闭环直流电机测速的实验,可在液晶屏上看速度值。

实验按键功能:

按键1是停止,指示灯熄灭;

按键2是正转,右边指示灯亮;

按键3是反转,左边指示灯亮;

按SZ-5416EVM板上复位键要也可停止电机运转。

做实验时,先让电机转起来,记住其显示速度值,然后用手轻轻的接触转盘边沿,观察速度变化。

(注意:

不要加太大的负载,用时不要太久)

步骤:

1、启动CCS,编写实验程序代码(可参考随机光盘中的例程H4motor),进行编译并加载到DSP中。

2、采用单步运行或执行到光标处,或全速云雾。

观察其结果。

6.5实验程序框图

6.6实验思考

编写程序:

用键盘预先设置要求的转速,再使电机旋转,其转速是否基本与设置的值相同?

湖南工学院教案用纸p

七、快速傅立叶变换(FFT)

7.1实验目的

(1)了解FFT的原理;

(2)了解使用Matlab语言实现FFT的方法;

(3)了解在DSP中FFT的设计及编程方法;

(4)熟悉对FFT的调试方法;

7.2实验内容

本试验要求使用FFT变换求一个时域信号的频域特性,并从这个频域特性求出该信号的频率值。

使用Matlab语言实现对FFT算法的仿真,然后使用DSP汇编语言实现对FFT的DSP编程。

7.3实验原理

参照教科书

N点DFT所需要的乘法次数,而乘数2代表必须完成两个DFT。

上述处理方法可以反复使用,即(N/2)点的DFT计算也可以化成两个(N/4)点DFT(假定N/2为

偶数),从而又少作一半乘法。

使用这种方法,在组合输入和拆散输出的操作中,

FFT的运算量减半。

这样,利用实数FFT算法来计算实输入序列的DFT的速度几

乎是一般复FFT算法的两倍。

7.4FFT的DSP编程

从上面FFT实现的过程可以看出,其实现步骤主要有以下四步:

(1)将输入序列压缩和位倒序。

(2)N点的复数FFT。

(3)奇数号部分和偶数号部分分离。

(4)产生最后的输出数据

程序可以参考指导书

7.5CCS使用步骤

1.打开CCS,新建立一工程文件FFT.pjt。

2.将汇编源文件fft.asm、中断向量表vectors.asm和链接命令文件fft.cmd

添加到fft.pjt中。

3.在project菜单下选择buildoptions选项,选取Linker选项,调整为

-q-c-m".\Debug\fft.map"-o".\Debug\fft.out"-w–x。

点击编译,链接图

湖南工学院教案用纸p

标,通过后生成fft.out文件和fft.map文件,其余选项可默认。

4.在file菜单下,选择loadprogram选项,将生成的fft.out文件装载

到DSP中。

5.运行程序,在view菜单下选择watchwindow选项来观测变量值。

6.可以在view菜单下选择graph/timefrequence,弹出如下对话框。

按照要求,设置好相应的参数,来观测信号输入和经FFT变换后输出数据的

波形。

7

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

当前位置:首页 > 高等教育 > 文学

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

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