实验一CCS及基本指令实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一CCS及基本指令实验
一、实验目的
1)了解TMS320C54x汇编语言程序的基本格式,以及使用CCS进行汇编、链接的基本过程。2)熟悉硬件仿真器Emulator和软件仿真器Simulator的使用方法。
3)通过软件仿真器各窗口观察TMS320C5402内部资源和修改内部寄存器状态。
4)初步熟悉C54x汇编语言COFF公共目标格式文件。
二、实验设备
1)微机一套,操作系统为WINWODS98、WINDOWS2000 SP2或WINDOWS XP SP1或具有更高级的补丁。
2)5000CCS2.0软件版本。
3)程序及链接命令文件见D:\EXPER\EXP1目录下的.asm 和.cmd文件。
三、开关设置
将开关K9拨到右边,即仿真器选择连接右边的CPU2。
四、实验内容
1) 系统连接
进行DSP实验之前,先必须连接好仿真器、实验箱及计算机,连接方法如下所示:
2) 仿真口选择开关K9拨到右侧,即仿真器选择连接右边的CPU:CPU2;
接通实验箱后面220V输入电源,系统会自动上电复位,在硬件安装完成后,确认安装正确、各实验部件及电源连接正常后,,此时,仿真器上的“红色小灯”应点亮,否则DSP开发系统有问题。
3)在D:\USER下建立自己的目录,并将实验所用的源程序和链接器命令文件复制到自建的子目录下。如D:\USER\LLD
4)启动CCS,待计算机启动成功后,开关置“ON”,实验箱上电,启动CCS,此时仿真器上的“绿色小灯”应点亮,并且CCS正常启动,表明系统连接正常;否则仿真器的连接、JTAG 接口或CCS相关设置存在问题,则掉电,检查仿真器的连接、JTAG接口连接,或检查CCS 相关设置是否正确。
5)建立项目文件:如果还没有建立项目文件,则使用[Project]-[New]菜单中新建一个项目。在选porject creat 对话框中的Project location中选择或填入新建项目的路径(如D:\USER\LAN),在project中添入项目名称(如test.pjt)并选择完成。这样就在D:\USER\LAN\TEST\目录下建立了一个名称为test.pjt的项目文件。
注意:实验程序所在的目录不能包含中文,目录不能过深
打开项目文件:如果项目已经建立,则使用在[Project]-[Open]菜单,通过改变目录打开该目录下面下的项目文件“test.pjt”,不必重新添加文件。
选择location右边按钮
6)在项目中添加源程序文件和链接器命令文件。使用[Project]-[Add files to project]命令分别添加扩展名为.asm和.cmd的两个文件(注意:在选择添加文件前要修改文件的察看类型为ALL FILE (*.*),如果有.asm 文件、.cmd文件、.c文件和.lib文件也要添加),再选择[Project]-[Save]保存新建的项目。
7)在左边树状列表框内双击[Project]展开目录树,双击[ex1.asm]打开源程序文件(或者打开自己编写的程序),参考程序中的注释仔细阅读源程序;选择[Project]-[Build]可对源程序进行编译,生成.out文件。
7)使用[File]-[Load Programm]中加载输出执行代码文件test.out(文件在D:\USER\LAN\TEST\DEBUG\目录下)。
8)选择 [View]-[CPU Register](或点击左边工具栏的快捷按钮)打开处理器映射寄存器窗口。
9)选择[View]-[Memory](或点击左边工具栏的快捷按钮),在弹出的[Windows Memory
Options]对话框的Address文本框中输入0x2060,Page下拉框中选中Data,确定后将打开数据存储器查询窗口,此时数据存储器地址0x2060~0x2063就对应着ex1.asm中声明的标号为DAT0~DAT3的四个单元。
10)调整源程序、[memory]、[CPU Registers]三个窗口的大小,以便于观察。
11)依次把光标移动到反汇编窗口中标号为bk?(?表示从0开始的整数)段的最后一个nop 指令处,选择菜单[Debug]-[Breakpoint](或者点击快捷按钮手行按钮)设置断点,断点设置后,都将以红色原点显示。如果想取消断点,可以将光标移动到该行处,重新作一次断点设置操作。
12)选择[Debug]-[Run](也可以按快捷键F5或点击快捷按钮)执行程序。
13)程序将停止在第一个断点bk0位置,bk0标号下的指令将以黄色箭头指示,在存储器映射CPU寄存器窗口和数据存储器查询窗口中双击相应操作数的内容,即可进行修改(注意:如步骤9所述,DAT0~DAT3对应地址为0X2060~0X2063),然后在存储器映像cpu寄存器窗口中和数据存储器查询窗口中观察指令执行结果。可试着修改一下指令操作数的内容,然后重新进行编译、链接、载入程序,最后执行,观察存储器中内容的变化。
14)重复执行9、10步骤,依次观察加法指令、减法指令、乘法指令、除法指令、平方指令以及3数累加宏指令的执行结果,调用子程序前后堆栈指针及堆栈中数值的变化。
15)全部程序执行后,程序转到bk0处,可再次重复以上指令的实验。
16)可使用[Debug]-[Restart]重新执行程序,或者[Debug]-[Reset CPU]将5402复位。
五、实验报告:
1)TMS320C54X在复位时,PC=? ,ST0=? ,ST1= ? ,PMST= ?
注意:硬件复位是在硬件仿真条件下进行的,使用菜单执行[Debug]-[Reset CPU]进行复位。2)如何检查程序存储器和数据存储器的内容?
3)给出每段执行后的结果。即START段执行后的DP和 SP值,Bk0, Bk1 ,Bk2 Bk4段执行后A的值,Bk3段之行后数存2062和2063单元的值,BK5执行后2063单元的值,BK 6执行后2003单元的值。
六、源程序及链接命令文件
1、exp1.asm
*************************************************
* FileName: ex1.asm *
* Description: DSP指令实验*
* Write by: lanrunze *