实验二DSP 数据存取实验.docx

上传人:b****4 文档编号:3903022 上传时间:2023-05-06 格式:DOCX 页数:12 大小:83.67KB
下载 相关 举报
实验二DSP 数据存取实验.docx_第1页
第1页 / 共12页
实验二DSP 数据存取实验.docx_第2页
第2页 / 共12页
实验二DSP 数据存取实验.docx_第3页
第3页 / 共12页
实验二DSP 数据存取实验.docx_第4页
第4页 / 共12页
实验二DSP 数据存取实验.docx_第5页
第5页 / 共12页
实验二DSP 数据存取实验.docx_第6页
第6页 / 共12页
实验二DSP 数据存取实验.docx_第7页
第7页 / 共12页
实验二DSP 数据存取实验.docx_第8页
第8页 / 共12页
实验二DSP 数据存取实验.docx_第9页
第9页 / 共12页
实验二DSP 数据存取实验.docx_第10页
第10页 / 共12页
实验二DSP 数据存取实验.docx_第11页
第11页 / 共12页
实验二DSP 数据存取实验.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

实验二DSP 数据存取实验.docx

《实验二DSP 数据存取实验.docx》由会员分享,可在线阅读,更多相关《实验二DSP 数据存取实验.docx(12页珍藏版)》请在冰点文库上搜索。

实验二DSP 数据存取实验.docx

实验二DSP数据存取实验

实验二DSP数据存取实验

一、实验目的

1.了解TMS320VC6713的内部存储器空间的分配及指令寻址方式;

2.学习用CodeComposerStudio修改、填充DSP内存单元的方法;

3.学习操作TMS320VC6713内存空间的指令。

二、实验内容

1.读写DSP内存单元数据;

2.复制内存单元的数据。

三、实验要求

通过本试验,了解TMS320VC6713存储空间的操作,掌握DSP内存单元数据的存取、复制操作。

四、实验步骤

1.打开CCS,进入CCS的操作环境。

2.装入Memory.pjt工程文件,添加DEC6713.gel文件。

3.装载程序Memory.out,进行调试。

4.程序区的观察和修改

运行到main函数入口:

选择菜单Debug->GoMain,当程序运行并停止在main函数入口时,展开“Disassembly”反汇编窗口,发现main函数入口地址为09ccH,也就是说从此地址开始存放主函数的程序代码。

修改程序区的存储单元:

程序区单元的内容由CCS的下载功能填充,但也能用手动方式修改;双击“Code”窗口地址“0x09cc:

”后的第一个数,显示“EditMemory”窗口,在“Data”中输0x00000000,单击“Done”按钮,观察“Code”窗口中相应地址的数据被修改,同时在反汇编窗口中的反汇语句也发生了变化,当前语句被改成了“NOP”。

将地址0x09cc上的数据改回0x01BCD4F6,程序又恢复成原样。

5.观察修改数据区

显示片内数据存储区:

同样打开窗口Data1,起始地址在0x4100。

修改数据单元:

数据单元可以单个进行修改,只需双击想要改变的数据单元即可,与修改程序区单元的操作相同。

填充数据单元:

选择Edit->Memory->Fill…观察“Data”窗口中的变化。

同样将0x4100开始的头16个单元的值用0填充。

6.运行程序观察结果

在Memory.c程序的第55行”for(i=0,pz=py;i<16;i++,pz++)”,第59行”for(i=0;i<16;i++,px++,py++)”,第64行”}”处设置断点。

运行程序,程序会停在断点处,此时可观察到Data窗口中前16个单元的值被写入0000至000F。

继续运行程序,程序会停在第二个断点处,此时可观察到Data1窗口中前16个单元的值被均被写入1234。

继续运行程序,程序结束,此时0x4080前16个单元的值复制到0x4100的前16个单元。

五、实验总结和心得

通过本次实验,我了解了TMS320VC6713的内部存储空间的分配及指令寻址方式,学习了用CodeComposerStudio修改、填充DSP内存单元的方法。

通过实验中对DSP内存单元数据的读写和复制内存单元的数据,从一开始的CCS程序的安装使我进一步熟悉了CCS的运行环境及调试,到后来进行存储器程序区的修改相关配置及操作是我受益匪浅。

 

实验三定时器控制实验

一、实验目的

1.了解TMS320VC6713的定时器;

2.熟悉定时器各寄存器的配置;

3.掌握TMS320VC6713的中断结构和对中断的处理流程;

4.学会C语言中断程序设计,以及运用中断程序控制程序流程

二、实验内容

1.系统初始化;

2.定时器中断初始化;

三、实验要求

通过本实验,熟悉中断的结构及用中断程序控制程序流程,掌握定时器的应用。

四、实验步骤

1.打开CCS,进入CCS的操作环境。

2.装入time.pjt工程文件,添加DEC6713.gel文件。

3.装载time.out文件,进行调试。

4.打开DEC6713_Timer.c,在程序的第163行“TimerEventHandler();”处设置断点。

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

此时观察CCS下方的“Stdout”窗口,会看到“Count:

1”。

继续运行程序,程序每次都会停在断点处,连续进入中断100次后,退出主程序。

提示:

实验者可根据自己的需要改变周期寄存器的值,从而控制每次进中断的时间。

五、实验总结和心得

本次实验,主要了解TMS320VC6713的定时器,熟悉定时器各寄存器的配置,了解TMS320VC6713的终端结构和终端的处理过程。

通过定时器的中断的流程图对中断有了大致了解。

在操作中需在C语言程序中”TimerEvntHandler();”设置断点,若设置100,在CCS下方会看到”Count:

1”。

继续运行程序,程序每次都会停在断点处,,连续进入中断100次后,退出程序。

 

定时器实验原理图:

 

 

实验四交通灯实验

一、实验目的

1.熟悉使用SEED-DEC6713板控制SEED-DTK_MBoard上交通灯的方法;

2.掌握DSP扩展数字I/O口的方法;

3.了解SEED-DEC6713的硬件系统。

二、实验内容

1.DSP的初始化;

2.TMS320C6713的扩展数字I/O口使用;

3.交通灯实现程序。

三、实验要求

通过本实验,了解DSP对I/O口的操作,完成交通灯的控制。

熟练使用CCS对程序进行调试。

DSP系统中一般只有少量的数字I/O资源,而一些控制中经常需要大量的数字量的输入与输出。

因而,在外部扩展I/O资源是非常有必要的。

在扩展I/O资源时一般占用DSP的I/O空间。

其实现方法一般有两种:

其一为采用锁存器像74LS273、74lS373之类的集成电路;另一种是采用CPLD在其内部做锁存逻辑,我们采用的是后者。

SEED-DEC6713模板提供标准化的存储器扩展总线,以方便用户扩展其专用的电路。

SEED-DEC6713的存储器扩展总线,包含4个存储空间,每个存储空间有20-位地址线、32-位数据线。

SEED-DEC6713的这4个存储空间被映射到’C6713的和

空间中

四、实验步骤

1.打开CCS,进入CCS的操作环境;

2.装入IO.wk,,添加DEC6713.gel文件开始进行调试;

3.打开6IO.c文件,到第29行,修改TESTCOMMAND的宏定义;TESTCOMMAND是交通灯操作控制选项。

可以为1、2、3、4、5这5个数。

1为自动运行;2为夜间模式;3为交通灯东西通;4为交通灯南北通;5为禁行。

SEED-DTK_MBoard单元的TrafficLamp处将显示结果;

4.装载程序IO.out;

5.运行,观察。

在程序运行过程中,可直接在WatchWindow里修改TestCommand的值,即将每一种运行方式所对应宏定义的值直接赋值给TestCommand,即可改变运行方式。

例如在程序运行过程中,若想将运行方式改为夜间模式,就请将TestCommand赋值为0xAA16(关于各种方式的宏定义已在第33行到第37行给出)即可。

6.重新到第3)步开始尝试其他情况或者退出实验。

五、实验总结和心得

通过本次实验中,基本掌握了C600的指令系统的特点,进一步加深了对DSP的认识。

同时,通过实验操作DSP的IO操作使用方法,对于DSP的IO操作可以熟悉的运用,学到更多的知识。

在交通灯的控制程序中,在TESTCOMMAND处可以用1到5这五个数分别代表交通灯的各种运行状况。

例如在程序运行的过程中,若想将运行方式改为夜间模式,可赋值为0Xaa16。

 

实验五EMIF口读写实验——同步动态存储器的访问与控制

一、实验目的

1.认识DEC6713外部存储器SDRAM;

2.掌握外部接口EMIF的配置;

3.熟悉SDRAM的读取操作。

二、实验内容:

1.系统初始化

2.外部接口的初始化;

3.SDRAM的读写操作。

三、实验要求

通过本试验,掌握外部存储器接口的配置,熟悉SDRAM程序的读写。

四、实验步骤

1.打开CCS,进入CCS的操作环境;

2.装入SDRAM.pjt工程文件,添加DEC6713.gel文件;

3.装载SDRAM.out文件,进行调试;

4.打开DEC6713_SDRAM.c程序,在第59行“Src_StartAdd=(Uint32*)0x80000000;”和第73行“for(;;);”设置断点;

5.运行程序,程序会停在断点处,观察SDRAM的值;

6.继续运行程序,观察结果。

五、实验总结和心得

EMIF口读写实验,通过对同步动态存储器的访问与控制,认识了DEC6713外部存储器SDROM。

SDRAM被映射到C6713的存储空间,字节地址为0x8000000-0x80ffffff。

在连接完毕实验器材后,同样需要在C语言程序中设置断点。

运行程序,程序会停在断点处,从而观察SDRAM可得出结论。

实验六直流步进电机驱动实验

一、实验目的

1.了解直流步进电机驱动的原理;

2.了解PWM对直流电机的驱动原理;

3.了解PWM调速的实现过程。

4.了解步进电机的控制原理;

5.通过IO总线锁存产生的脉冲的频率与相位的顺序控制速度与方向。

二、实验内容

1.DSP的初始化;

2.PWM产生的定时中断服务程序。

3.步进电机的驱动程序。

三、实验要求

通过电机实验,了解对直流电机的驱动的基本原理;区分定时器延时与软件延时的区别。

了解对步进电机的驱动的基本原理。

四、实验步骤

直流电机

1.打开CCS,进入CCS的操作环境;

2.装入motor.pjt工程文件,添加DEC6713.gel文件;

3.打开MOTOR.c文件,到第26行,修改TESTCOMMAND的宏定义;TESTCOMMAND是操作控制选项,可以为1-3这5个数;

1为直流电机运行;

2为直流电机停止;

4.编译,链接,生成MOTOR.out文件。

装载MOTOR.out;

5.运行程序,观察实验箱上电机的运行是否与设置相符。

同时用户可查看step变量的值观察电机运行速度。

注:

因外部信号效果不好,以及算法比较简单,step计数值有一定误差,用户可自行进行算法设计,取得电机速度反馈值。

6.此时若想改变电机的运行状态,无需停止程序后通过修改TESTCOMMAND的宏定义来实现。

而只需在程序运行过程中打开WatchWindow窗口,在其中修改TestCommand变量,输入1-2宏定义所对应的具体数值。

如:

若想使直流电机停止,请输入0xAA39(DCMTRRVS所对应的宏定义,可在MOTOR.c程序找到),此时若直流电机正在运行,其将立刻停止运行。

7.MOTOR.c文件243行的interruptvoidc_int14(void)函数下列代码的功能为电机调速。

用户可通过调整time_num变量的值实现电机速度变化。

步进电机

1.打开CCS,进入CCS的操作环境。

2.装入motor.pjt工程文件,添加DEC6713.gel文件。

3.打开MOTOR.c文件,到第36行,修改TESTCOMMAND的宏定义。

TESTCOMMAND是操作控制

选项,可以为1-3这3个数。

1为步进电机运行;

2为步进电机反向运行;

3为步进电机停止;

4.编译,链接,生成MOTOR.out文件。

装载MOTOR.out。

5.运行程序,观察实验箱上电机的运行是否与设置相符。

此时若想改变电机的运行状态,无需停止程序后通过修改TESTCOMMAND的宏定义来实现。

而只需在程序运行过程中打开WatchWindow窗口,在其中修改TestCommand变量,输入1-3宏定义所对应的具体数值。

如:

若想使步进电机反向,请输入0xAA26(STPMTRRVS所对应的宏定义,可在MOTOR.c文件第243行中找到),此时若步进电机正在运行,其将立刻反向运行。

修改motorset[4]初始值,可以改变电机的设置。

motorset[]各位的具体含义见MOTOR.c第53,54行的注释。

可根据此修改电机步长,初始方向等参量。

五、实验总结和心得

通过电机控制实验,要知道计数器的计数方式,当计数寄存器的值与比较寄存器的值相等时,发生事件匹配,得到想要的波形来控制电机的转动方向以及转动速度。

同时,在实验过程中也学习了CCS软件的使用,以及对SEED仿真器的熟悉和使用。

由于以前接触的相关课程非常少,基础知识比较薄弱,学起来比较吃力。

但是在老师和同学的帮助和指导下,对DSP有一定的了解。

但还是有许多的不足,希望在后面的大作业中取得进一步的提升。

 

实验一开发环境建立

一、实验目的

1.学会CCS软件的安装方法。

2.熟悉CCS集成开发环境,掌握工程的生成方法。

3.熟悉CCS常用菜单的使用。

4.掌握CCS集成开发环境的调试方法。

二、实验仪器和设备

1.主机1台

2.仿真器1台

3..主机1台

三、实验原理

CCS是进行DSP开发的一个集成环境,它是在WINDOWS系统下工作的一个软件,通过该软件,我们可以进行DSP程序及系统的开发。

CCS提供了配置、建立、调试、跟踪和分析程序的工具,是进行DSP开发的常用工具,它是在WINDOWS系统下工作的一个软件,通过该软件,我们可以进行DSP程序的编辑及系统的开发。

(1)cmd文件用于DSP代码的定位。

由3部分组成:

1.输入/输出定义:

2.MEMORY命令:

描述系统实际的硬件资源。

3.SECTIONS命令:

描述"段"如何定位。

(2)创建源文件

1.打开CCS选择File→New→SourceFile命令

2.编写源代码并保存

3.保存源程序名为math.c,选择File→Save

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

(3)创建工程文件

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

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

3.点击Project选择addfilestoproject,添加工程所需文件;

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

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

(4)设置编译与连接选项

1.点击Project选择BuildOpitions;

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

3.在弹出的对话框中选择连接的参数设置,设置输出文件名(可执行文件与空间分配文件),堆栈的大小以及初始化的方式。

(5)工程编译与调试

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.通过实际安装CCS软件,学会CCS软件的安装方法,熟悉CCS集成开发环境,了解CCS安装程序所建立的目录结构,熟悉CCS软件的操作。

详细实验内容和步骤见《DSP实验箱使用手册》中调试工具安装与使用说明。

2.DSP源文件的建立、DSP程序工程文件的建立,学会使用CCS调试工具。

编写一段DSP程序,实现文本的输出。

3.编译与链接的设置、生成可执行的DSP文件、进行DSP程序的调试与改错、学会使用CCS调试工具。

详细实验内容和步骤见《DSP实验箱使用手册》中简单应用程序的调试。

五、实验总结和心得

通过本次实验,通过SEED-DTK6713试验箱的配置与特点及功能的实现,CCS的安装与调试,加深了我对DSP的认识,使我对DSP实验的操作有了更进一步的理解。

基本掌握了CCS实验环境的使用,并能够通过本次实验,通过SEED-DTK6713试验箱的配置与特点及功能的实现,CCS的安装与调试,加深了我对DSP的认识,使我对DSP实验的操作有了更进一步的理解。

基本掌握了CCS实验环境的使用,并能够使用C语言进行简单的DSP程序设计。

  

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2