CCS程序设计和DSP硬件实验

实验项目5、CCS程序设计与DSP硬件实验一、实验目的(1)掌握CCS环境下程序编辑、编译、运行、下载、调试的过程。

(2)掌握DSP处理器的汇编、C语言程序设计方法。

(3)掌握DSP的硬件访问。

二、实验原理及知识点第一部分 DSP实验箱简介与CCS第二部分 CCS 软件安装第三部分 TDS510USB仿真器安装与CCS设置测试三、实验内容及步骤一、实验原理和方法开发TMS320C6xxx 应用系统一般需要以下几个调试工具来完成:1.软件集成开发环境(CCS):完成程序编译、目标文件产生、下载,进行程序和硬件的联合仿真调试。

2.仿真器:实现硬件仿真调试时与硬件系统的通信、控制和读取硬件系统的状态和数据。

CCS 通过工程来管理文件,一般包括以下几种文件:1) 源程序文件:C 语言或汇编语言文件(*.c 或*.asm),所编写的代码都写在各个源文件中;包含了所有要实现功能的代码,是工程的核心。

2) 头文件(*.h):主要定义了芯片内部寄存器结构、中断服务程序等内容。

3) 链接命令文件(*.cmd):分配RAM空间,用来将下载到RAM中的程序进行调试,是因为DSP编译器编译结果是未定位的,DSP也没有相应系统来执行代码,DSP系统的配置需求也不尽相同,因此需要定义代码的存储位置。

4) 库文件(*.lib,*.obj):包含了寄存器的地址和对应标示符的定义,还包含标准C/C++运行支持的库函数。

二.汇编语言DSP程序设计实验(一)实验原理与方法1.汇编语言程序在执行时直接从用户指定入口开始。

2.由于CCS的代码链接器默认支持C 语言,在编制汇编语言程序时,需要设置链接参数,选择非自动初始化,注明汇编程序的入口地址。

(二)实验步骤与内容1.运行 CCS Setup连接实验箱与PC机,打开电源给实验箱供电,点击setup code composer studio v3.3,运行CCS Setup,设置CCS,就是建立CCS与用户的目标板或软仿真器之间的通信。

保存配置。

2.启动 CCS3.在C:\CCStudio_v3.3\MyProjects下新建一个文件夹:myasm。

创建工程4. 设置工程编译选项选择CCS菜单project->Build Options,点击Linker页,设置Autoinit Model为:No Autoinitialization(这点是与C语言程序设计不同)注意:若省略这一步,也不影响程序建立,只不过会出现警告:warning: entry point symbol _c_int00 undefined5. 输入源程序1)输入汇编源程序选择File->New->Source File或使用工具条的快捷按钮,进入文件编辑窗口。

录入汇编源程序:;**********************************; 输入数据存放在:x,y; 本例程完成运算:x+y; 结果存放:z; 其中:x,y,z都占32位;*********************************.bss x, 4 ;排版要空一格,下同.bss y, 4.bss z, 4;.def start;.def x, y, z.textstart: ;排版要顶格mvkl x, A0;立即寻址,将变量x 的值放到寄存器A0mvkh x, A0;立即寻址,将变量x 的值放到寄存器A0mvkl y, B0;立即寻址,将变量y 的值放到寄存器B0mvkh y, B0;立即寻址,将变量y 的值放到寄存器B0mvkl z, B2;立即寻址,将变量z 的值放到寄存器B2mvkh z, B2;立即寻址,将变量z 的值放到寄存器B2mvkl 0x010a0f2a, A4;给A4 低16位赋值mvkh 0x010a0f2a, A4;给A4 高16位赋值mvkl 0x1ab31211, B4;给B4 低16位赋值mvkh 0x1ab31211, B4;给B4 高16位赋值stw A4, *A0;A4存入A0所指地址单元nop 5stw B4, *B0;B4存入B0所指地址单元nop 5ldw *A0, B1 ;将A0寻址单元的值读入B1nop 5 ;避免流水线冲突ldw *B0, A1;将B0寻址单元的值读入A1nop 5add A1, B1, A2 ;加法运算:A1+B1-->A2stw A2, *B2 ; 将A2的值存入B2所指地址单元b $ ;一直在这里跳转,注意:b后有一个空格注意:汇编语句前需要留出空格,标号顶格输入,否则编译有错误提示。

保存源程序到工程目录下,保存文件为:myasm.asm2)输入链接命令文件点击“File/New/Source File”或使用工具条的快捷按钮,进入文件编辑窗口。

输入链接命令文件内容:-stack 400-heap 400MEMORY{ISRAM : origin =0x0, len =0x1000000}SECTIONS{.vectors > ISRAM.text > ISRAM.bss > ISRAM.cinit > ISRAM.const> ISRAM.far > ISRAM.stack > ISRAM.cio > ISRAM.sysmem > ISRAM}保存源程序到工程目录下,命名为my asm.cmd。

6. 将上述编辑的源程序my asm.asm和链接命令文件my asm.cmd加入工程my asm.pjt。

7.编译源文件、建立目标文件(.out)点击菜单project->compile file,可以对文件进行编译再点击菜单Project->Build,建立目标文件成功建立的文件应该是错误和警告都为0.8.调用目标文件(调用编程可执行程序)1)连接仿真器与目标板点击:Debug->connect,连接成功后,CCS左下角有提示。

Connect连接之后,选择File->Load Program,选择\myasm\debug\myasm.out,点击Debug->Restart后PC此时指向00000000 00000000地址。

9.调试1)goto main2)设置断点在需要设置断点的行前双击鼠标,则在行前出现红色的原点,表示设置了断点;若在已经设置了断点的行前双击鼠标,则可以取消该断点。

3)单步运行用菜单debug->Step Into或F11可以单步运行。

10. 观察开启CPU寄存器观察窗口:单击菜单。

使用单步运行,查看相应寄存器的值的变化。

还可开启Watch window,Memory窗口,进行变量、存储空间的观察。

点击view->watch window,则打开观察窗口11. 退出CCS三.C 语言DSP 程序设计实验 (一)实验原理与方法 1. 标准C 语言程序CCS 支持使用标准C 语言开发DSP 应用程序。

C 源程序文件名的后缀应为.c 。

CCS 在编译标准 C 语言程序时,首先将其编译成相应汇编语言程序,再进一步编译成目标DSP 的可执行代码。

最后生成的是COFF 格式的可下载到DSP 中运行的文件,其文件名后缀为.out 。

由于使用C 语言编制程序,其中调用的标准C 的库函数由专门的库提供,在编译链接时编译系统还负责构建C 运行环境。

所以用户工程中需要注明使用C 的支持库。

2. 命令文件的作用命令文件(文件名后缀为cmd)为链接程序提供程序和数据在具体DSP 硬件中的位置分配信息。

通过编制命令文件,我们可以将某些特定的数据或程序按照我们的意图放置在DSP 所管理的内存中。

命令文件也为链接程序提供了DSP 外扩存储器的描述。

在程序中使用CMD 文件描述硬件存储区,可以只说明使用部分,但只要是说明的,必须和硬件匹配,也就是只要说明的存储区必须是存在的和可用的。

3. 内存映射(map)文件的作用为了更精确地使用ROM 空间,我们就需要知道程序的大小和位置,通过建立目标程序的map 文件可以了解DSP 代码的确切信息。

当需要更改程序和数据的大小和位置时,就要适当修改cmd 文件和源程序,再重新生成map 文件来观察结果。

另外,通过观察map 文件,可以掌握DSP 存储器的使用和利用情况,以便进行存储器方面的优化工作。

(二)实验步骤与内容1. 准备将DSP实验设备与硬件仿真器相连接,连接电源线,打开电源开关。

2.设置CCS 在硬件仿真(Emulator)方式下运行,选择实际的仿真器。

3.启动CCS环境4.创建工程。

选择菜单Project->New,创建ctest.pjt工程5.建立源文件1)建立C语言源程序文件。

选择FILE->New->Source,输入下列C代码,保存到文件ctest.c。

int sel_max(int a, int b);void main(){int x;int y;int z;x = 21;y = 98;while(1){z=sel_max(x,y); //函数调用}}int sel_max(int a, int b){return((a>=b)?a:b);}2)建立链接命令文件点击“File/New/Source File”或使用工具条的快捷按钮,打开编辑窗,建立ctest.cmd文件,内容如下:-stack 400-heap 400MEMORY{ISRAM : origin =0x0, len =0x1000000}SECTIONS{.vectors > ISRAM.text > ISRAM.bss > ISRAM.cinit > ISRAM.const> ISRAM.far > ISRAM.stack > ISRAM.cio > ISRAM.sysmem > ISRAM}6.工程添加文件点击菜单Project->Add Files to project,分别加入ctest.c,ctest.cmd文件,再向工程添加C:\CCStudio_v3.3\C6000\cgtools\lib下的文件rts6400.lib(这点与汇编程序设计不同)(注意:若不添加,则链接时会出现警告:warning: entry point symbol _c_int00 undefined)7.编译、建立目标文件产生ctest.out8.调用编程可执行程序1)连接仿真器与目标板点击:Debug->connect,连接成功后,CCS左下角有提示。

2)选择File->Load Program,选择\ctest\debug\ctest.out。

合集下载

实验一、熟悉CCS开发环境及DSP实验箱

实验一、熟悉CCS开发环境及DSP实验箱

实验一熟悉CCS开发环境及DSP实验箱注意:在构建工程之前请先把仿真器正确连接好试验箱和计算机,接通试验箱电源。

1、双击CCS Stido v3.3图标,进入CCS环境。

2、打开CCS选择projec t→New3、在弹出的对话框中点击下图红色圆圈中的按钮,选择工程合适的位置。

注意:路径中不要有中文。

选择好工程需要建立的位置后,点击确定。

4、在弹出的对话框中,输入工程的名字。

例如,test。

5、点击Finish。

出现下图对话框,红圈内为添加的工程,点击工程名前面的加号,出现下图。

6、打开CCS选择Fil e→New→Source File 命令。

7、点击保存按钮。

8、输入文件的名字,点击保存。

注意:C源程序的后缀名应为.c;汇编程序的后缀名为.asm;CMD文件的后缀名为.cmd。

例如:test.c9、如下图所示,单击右键,将test.c添加到工程中。

10、选中test.c,点击打开。

11、如下图所示,即可在test.c文件中输入编写的C程序了。

注意随时保存自己编写的源文件。

12、重复上述6—11步,添加cmd文件。

13、同样的方法将rts.lib 添加到工程中。

rts.lib在C:\CCStudio_v3.3\C5400\cgtools\lib目录下。

■设置编译和连接选项1、点击Project 选择Build Opintions;2、在弹出的对话框中设置相应的编译参数,一般情况下,按默认值就可以。

3、在弹出的对话框中选择连接的参数设置,Heap Size:1000;Stack Size:1000;点击确定结束设置。

4、点击Projec t→Build命令,对工程进行编译,如正确则生成out文件。

5、点击Fil e→load program ,在弹出的对话框中载入debug文件夹下的.out可知性文件。

6、装载完毕。

7、点击debu g→Go Main回到C程序的入口。

实验一CCS基础实验

实验一CCS基础实验

实验一CCS基础实验一.实验目的1.通过简单的程序了解DSP程序的结构和文件组织2.了解CCS开发环境的功能,掌握使用方法。

二.实验器材DSP试验箱和仿真器三.实验内容1.编写程序控制XF引脚的周期性变化;2.使用CCS编译,下载和运行程序;3.观察XF管脚对应的LED灯的闪烁情况。

四.实验背景知识CCS中,源代码的书写必须遵守一定的规则,养成良好的书写代码格式,增加代码的可读性,对于今后的软件开发是很有帮助的。

汇编语句的种类划分:A.指令性语句:可执行的语句,汇编后产生机器代码B.伪指令语句:指示性语句,不生成代码( 不占存储单元),伪指令给程序提供数据,控制汇编过程C.宏命令语句:具有独立功能的一段程序代码一条语句的构成:【标号】[:] 助记符【操作数】【;注释】(1)标号:必须从第一列开始,如果没有标号则第一个字母必须是空格,分号或者星号(2)助记符:如果是指令性语句要大写如果是伪指令和宏命令要以句号,或者“.”开始,必须小写宏调用(3)操作数(4)注释五.实验所用文件:1. Xf.asm (路径:F\DSP\Program\exp-xf\) 实验主程序2.C54.cmd (路径:F\DSP\Program\common\C54_cmd) 链接配置文件六.实验准备:将DSP仿真器和计算机的25针并口连接好;将DSP仿真器的JTAG与试验箱的J1相连接;打开试验箱的电源,观察SEED-DTK_MBoard单元的电源指示灯是否亮,若不亮,就检查电源。

七.实验步骤:1.双击,进入CCS环境。

2.新建一个工程文件XF在名称栏里输入xf点击完成,就可以在C:\ ti\myprojects根目录下面看到我们新建的工程文件xf,可以看到里面有文件xf.pjt3.把两个源文件拷贝到这个工程文件里,直接将Xf.asm (路径:F\DSP\Program\exp-xf\)和C54.cmd (路径:F\DSP\Program\common\C54_cmd) 复制黏贴过去即可。

DSP实验手册实验一CCS使用及DSP的运算(精)

DSP实验手册实验一CCS使用及DSP的运算(精)

实验一 CCS使用及DSP 基本数学运算一、实验目的:1、熟悉CCS 集成开发环境,掌握工程的生成方法;2、熟悉SEED-DTK5416实验环境;3、掌握CCS 集成开发环境的调试方法;4、了解数在计算过程中的定标,掌握数的定点、浮点表示方法,定点、浮点基本运算以及定点、浮点间的相互转换。

二、实验内容:1、 DSP源文件的建立;2、 DSP程序工程文件的建立;3、编译与链接的设置,生成可执行的DSP 文件;4、进行DSP 程序的调试与改错;5、学习使用CCS 集成开发工具的调试工具;6、观察实验结果;三、实验知识背景:在DSP 编程过程中,数以二进制、十进制、与十六制表示均可。

在定点DSP 的运算过程中,数一般采用二进制与二进制补码的形式进行运算的。

其中二进制数只能代表正数不能代表负的数,而二进制补码记数系统弥补了这一缺点。

它的构成如下;在二进制的基础上,加一符号位。

符号位位于二进制数的最高位当为正数时,符号位为0,为负数时,符号位为1当采用二进制补码进行数的运算时,具有如下的两个优点:可以将加法与减法统一成加法运算符号位可以进行扩展,而其数值不变,这可以使一个比较小的数存放到比较大的寄存器当中例:1×2 + 0×1 = -2 (11110)2 = 1×(-16)+ 1×8 + …… +当将其符号位扩展三位,放入一8位的寄存器中1×2 + 0×1 = -2 (11111110)2 = 1×(-128)+ 1×64 + …… +这将为运算提供极大的方便,因而在定点的DSP 中,大多数情况采用二进制补码形式。

C5000系列的DSP 硬件只支持定点运算,浮点运算要通过软件来实现。

其运算字长为16位,也就是说,DSP 所能表示的整数的范围也就决定了,其范围为-32768到32767。

而在很多情况下,数学运算过程中不一定是整数,而且动态范围也不是固定不变的。

实验七 dsp系统开发环境实验

实验七 dsp系统开发环境实验

DSP系统开发环境实验【实验目的】1.了解DSP模块的基本特性。

2.掌握CCS)集成开发环境的软硬件调试方法。

【实验内容】1. 了解CCS的编程。

2. CCS中的软件开发环境的搭建及调试。

S中的硬件开发环境的搭建及调试。

4.实现LED的定时闪烁。

【实验器材】1.DSP开发板2.DSP仿真器3 .PC机(软件:CCS,全称:Code composer studio)【实验原理】•DSP模块的核心芯片为T MS320VC5402,系统主频可编程控制,SRAM可存储64k*16bit 数据。

T MS320VC540主要由中央处理器、内部总线控制、特殊功能寄存器、数据存储器RAM、程序存储器ROM、两个通用I/O引脚(BIO和XF) 、串行口、主机通信接口HPI、定时器(两个定时器)、中断系统(硬件中断和软件中断)等部分组成。

T MS320VC5402上有两个定时器,本实验主要对定时器0进行操作,1ms产生一次中断,并让DSP模块上的D9发光二极管每1秒闪烁一次。

本实验是个入门实验,主要是为了让用户了解如何利用本实验系统配合CCS 软件以及DSP的USB仿真器来完成代码的开发、下载和验证。

在本实验中,首先利用CCS软件创建工程,并加入相应的DSP相关文件,然后对其进行编译、下载、调试以及结果验证等。

【实验步骤】1.将DSP的USB仿真器(TDS510)连接到DSP模块上的JTAG接口和PC机,上电并安装驱动软件;2.驱动软件安装后,打开桌面上”setup ccs”软件,设置软件和硬件仿真设备;3.打开桌面上” ccs”软件,建立工程或打开一工程;4.编译,然后打开OUT文件,此时可以进行单步运行、断点设置、全速运行等调试;下面以硬件调试为例:1) 首先用建立一个工程CpuTimer.pjt,并添加源文件main.c,代码如下:#include "cpu_reg.h"int ms,f;Uint16 Temp;void main(){asm(" STM #0000h,CLKMD ");while(*CLKMD & 0x01 );asm(" STM #40C7h,CLKMD "); //设置CPU运行频率=100M/* 40C7h:5*clkin =100M30c7h:4*clkin =80M20c7h:3*clkin =60M10C7h:2*clkin =40M*/asm(" stm #4240h, SWWSR ");//2 wait except for on-chip program 1asm(" stm #00a0h, PMST "); //MP/MC = 0, IPTR = 001,ovly=0asm(" stm #0802h, BSCR ");asm(" STM #0h,IMR ");asm(" STM #0010h,TCR "); //关定时器asm(" STM #0186ah,PRD ");//1msasm(" STM #0C2fh,TCR "); //TCR=最后四位asm(" STM #0008h,IFR ");asm(" ORM #0008h,*(IMR) ");/*开时间中断*/asm(" ORM #0100h,*(IMR) ");/*开INT3中断*/asm(" SSBX XF ");asm(" RSBX INTM "); /*开中断*/f=1;ms=0;while(1){while(ms<500/f); //LED_flashms=0;asm(" RSBX XF ");while(ms<500/f);ms=0;asm(" SSBX XF ");}}interrupt void timer0(){ms++;}interrupt void int3(){f++;if (f>5) f=1;}2.)再建立一个cpu_reg.h 头文件#define int0_V AL 1<<0#define tint_V AL 1<<3#define rint_VAL 1<<4#define xint_V AL 1<<5#define SPCR10_V AL 0x0000#define SPCR20_V AL 0x0200//2 words per frame#define RCR10_V AL 0x0140#define RCR20_V AL 0x04//2 words per frame#define XCR10_VAL 0x0140#define XCR20_VAL 0x04#define PCR0_V AL 0x01//CLKG=16.9344*6M/48=2.1168M,帧脉冲宽度=24#define SRGR1_V AL2 (23<<8)+47#define SRGR1_V AL1 (23<<8)+47//帧长度=48、CLK由CPU的时钟驱动、由FSG驱动#define SRGR2_V AL1 0x3000+47//发送帧同步、时钟由内部产生(11 9位=1)//接收帧同步、时钟由外部产生(10 8位=0)//帧同步高有效,(2 3位=0),下降沿有效(2 3位=1)//时钟上升沿有效(最后2位=0),下降沿有效(最后2位=1)//引脚配置成串口,#define PCR_VAL1 0x0a03//DX is on(7=True)//RINT by RRDY#define SPCR1_V AL1 0x0080// 一帧2个字,每字24bit#define XCR1_V AL1 0x0180// 单相帧、无压缩、0-bit延迟#define XCR2_V AL1 0x0004// 一帧2个字,每字24bit#define RCR1_V AL1 0x0180// 单相帧、无压缩、0-bit延迟#define RCR2_V AL1 0x0004//McBSP Memory Mapped Registers#define CLKMD (unsigned int *)0x58#define SWCR (unsigned int *)0x2b#define IMR (unsigned int *)0x00#define SPSA0 (unsigned int *)0x38#define SPSD0 (unsigned int *)0x39#define DRR20 (unsigned int *)0x20#define DRR10 (unsigned int *)0x21#define DXR20 (unsigned int *)0x22#define DXR10 (unsigned int *)0x23#define SPSA1 (unsigned int *)0x48#define SPSD1 (unsigned int *)0x49#define DRR21 (unsigned int *)0x40#define DRR11 (unsigned int *)0x41#define DXR21 (unsigned int *)0x42#define DXR11 (unsigned int *)0x43// McBSP Subaddresed Registers#define SPCR1 0x00#define SPCR2 0x01#define RCR1 0x02#define RCR2 0x03#define XCR1 0x04#define XCR2 0x05#define SRGR1 0x06#define SRGR2 0x07#define PCR 0x0E3,)再建立一个INRAM.cmd命令文件,代码为:MEMORY{PAGE 0: EPROG: origin = 0x1400, len = 0x7c00 VECT: origin = 0xff80, len = 0x80PAGE 1: USERREGS: origin = 0x60, len = 0x1c BIOSREGS: origin = 0x7c, len = 0x4IDA TA: origin = 0x80, len = 0x1380EDATA: origin = 0x1400, len = 0x8000EDATA1: origin = 0x9400, len = 0x4c00 }SECTIONS{.vectors: {} > VECT PAGE 0.sysregs: {} > BIOSREGS PAGE 1.trcinit: {} > EPROG PAGE 0.gblinit: {} > EPROG PAGE 0frt: {} > EPROG PAGE 0.text: {} > EPROG PAGE 0.cinit: {} > EPROG PAGE 0.pinit: {} > EPROG PAGE 0.sysinit: {} > EPROG PAGE 0.bss: {} > IDA TA PAGE 1.far: {} > IDA TA PAGE 1.const: {} > IDATA PAGE 1.switch: {} > IDATA PAGE 1.sysmem: {} > IDATA PAGE 1.cio: {} > IDA TA PAGE 1.MEM$obj: {} > IDA TA PAGE 1.sysheap: {} > IDATA PAGE 1.stack: {} > IDATA PAGE 1}4)添加库文件5)编译、调试、运行这时候点击全速运行即可看到LED交替闪烁。

CCS程序设计与DSP硬件实验

CCS程序设计与DSP硬件实验

CCS程序设计与DSP硬件实验实验项⽬5、CCS程序设计与DSP硬件实验⼀、实验⽬的(1)掌握CCS环境下程序编辑、编译、运⾏、下载、调试的过程。

(2)掌握DSP处理器的汇编、C语⾔程序设计⽅法。

(3)掌握DSP的硬件访问。

⼆、实验原理及知识点第⼀部分 DSP实验箱简介与CCS第⼆部分 CCS 软件安装第三部分 TDS510USB仿真器安装与CCS设置测试三、实验内容及步骤⼀、实验原理和⽅法开发TMS320C6xxx 应⽤系统⼀般需要以下⼏个调试⼯具来完成:1.软件集成开发环境(CCS):完成程序编译、⽬标⽂件产⽣、下载,进⾏程序和硬件的联合仿真调试。

2.仿真器:实现硬件仿真调试时与硬件系统的通信、控制和读取硬件系统的状态和数据。

CCS 通过⼯程来管理⽂件,⼀般包括以下⼏种⽂件:1) 源程序⽂件:C 语⾔或汇编语⾔⽂件(*.c 或*.asm),所编写的代码都写在各个源⽂件中;包含了所有要实现功能的代码,是⼯程的核⼼。

2) 头⽂件(*.h):主要定义了芯⽚内部寄存器结构、中断服务程序等内容。

3) 链接命令⽂件(*.cmd):分配RAM空间,⽤来将下载到RAM中的程序进⾏调试,是因为DSP编译器编译结果是未定位的,DSP也没有相应系统来执⾏代码,DSP系统的配置需求也不尽相同,因此需要定义代码的存储位置。

4) 库⽂件(*.lib,*.obj):包含了寄存器的地址和对应标⽰符的定义,还包含标准C/C++运⾏⽀持的库函数。

⼆.汇编语⾔DSP程序设计实验(⼀)实验原理与⽅法1.汇编语⾔程序在执⾏时直接从⽤户指定⼊⼝开始。

2.由于CCS的代码链接器默认⽀持C 语⾔,在编制汇编语⾔程序时,需要设置链接参数,选择⾮⾃动初始化,注明汇编程序的⼊⼝地址。

(⼆)实验步骤与内容1.运⾏ CCS Setup连接实验箱与PC机,打开电源给实验箱供电,点击setup code composer studio v3.3,运⾏CCS Setup,设置CCS,就是建⽴CCS与⽤户的⽬标板或软仿真器之间的通信。

实验2:CCS软件仿真实验

实验2:CCS软件仿真实验

五(B) 、 ASM语言补充实验

修改程序,完成计算:
四(A) 、 C语言实验步骤(4)

4.添加文件 5.编译下载可执行文件CProgram.out 6.观察寄存器窗口
【View】->【Registers】->【Core】
将CProgram.c、CProgram.cmd添加到工程CProgram.pjt。

7.观察运行结果(参照Ⅲ-20) 8.内存映像文件 9.对照观察map文件和cmd文件 *参照实验指导书Ⅲ-20~ Ⅲ-21实验内容
点击菜单中【Project】->【New】
四(A) 、 C语言实验步骤(2)
3.编写程序 (1)C程序 --新建代码编辑窗口
--代码输入 --保存为CProgram.c
四(A) 、 C语言实验步骤(3)
3.编写程序 (2)命令文件 --新建代码编辑窗口
--代码输入 --保存为
C:\ICETEK-F2812-A-EDUlab\DSP281x_examples\Lab0102CProgram\CProgram.cmd

命令文件:文件名.cmd
命令文件为连接程序提供程序和数据在具体DSP硬件 中的位置

内存映SP存储器的使用和利 用情况,便于进行存在存储器优化工作。
三(A) 、 C语言实验原理(2)

程序设计要求:
四(A) 、 C语言实验步骤(1)
1.设置软件仿真模式,启动CCS 2.建立新工程
二、实验设备


硬件: PC机 1台 ICETEK-F2812-EDU实验箱 1台 软件: Windows 98/2000/XP操作系统 CCS集成开发环境

DSP硬件实验报告

DSP 硬件课程实验报告实验一:常用指令实验一、实验目的1.熟悉DSP开发系统的连接2.了解DSP开发系统的组成和结构和应用系统构成3.熟悉常用C54X系列指令的用法(程序寻址,寄存器,I/O口,定时器,中断控制)。

二、实验设备计算机,CCS 2.0版软件,DSP仿真器,实验箱。

三、实验操作方法1、系统连接进行DSP实验之前,先必须连接好仿真器、实验箱及计算机,连接方法如下所示:在硬件安装完成后,接通仿真器电源或启动计算机,此时,仿真盒上的“红色小灯”应点亮,否则DSP开发系统与计算机连接有问题。

2、运行CCS程序先实验箱上电,然后启动CCS,此时仿真器上的“绿色小灯”应点亮,并且CCS正常启动,表明系统连接正常;否则仿真器的连接、JTAG接口或CCS 相关设置存在问题,掉电,检查仿真器的连接、JTAG接口连接,或检查CCS 相关设置是否正确。

四、实验步骤与内容(一)简单指令程序运行实验1、实验使用资源实验通过实验箱上的XF指示灯观察程序运行结果2、实验过程启动CCS 2.0,并加载“exp01.out”;加载完毕后,单击“Run”运行程序;实验结果:可见XF灯以一定频率闪烁;单击“Halt”暂停程序运行,则XF 灯停止闪烁,如再单击“Run”,则“XF”灯又开始闪烁;关闭所有窗口,本实验完毕。

源程序查看:用下拉菜单中Project/Open,打开“Exp01.pjt”,双击“Source”,双击“exp01.asm”可查看源程序。

源程序注释如下:;File Name:exp01.asm;the program is compiled at no autoinitialization mode.mmregs ;定义存储器映像寄存器.global _main ;全局符号,可在外部定义_main:stm #3000h,sp ;设置堆栈指针寄存器的值为3000hssbx xf ;置位状态寄存器xfcall delay ;调用delay函数rsbx xf ;复位状态寄存器xfcall delay ;调用delay函数b _main ;无条件转移至_mainnop ;空指令nop;delay .5 seconddelay:stm 270fh,ar3 ;设置辅助寄存器ar3值为9999loop1:stm 0f9h,ar4 ;设置辅助寄存器ar4值为249loop2:banz loop2,*ar4- ;寄存器ar4值减一,当其值不为0时跳转到loop2 banz loop1,*ar3- ;寄存器ar3值减一,当其值不为0时跳转到loop1 ret ;返回nop ;空指令nop;stm 2 cycles;banz when TRUE 4 cycles; FALSE 2 cycles;0f9h=>249d;270fh=>9999d.end(二)资料存储实验1、实验使用资源本实验指导书是以TMS32OVC5410为例,介绍相关的内部和外部内存资源。

dsp实验报告

dsp实验报告实验一:CCS入门实验实验目的:1. 熟悉CCS集成开发环境,掌握工程的生成方法;熟悉SEED-DEC643实验环境; 掌握CCS集成开发环境的调试方法。

2.学习用标准C 语言编写程序;了解TI CCS开发平台下的C 语言程序设计方法和步骤; 熟悉使用软件仿真方式调试程序。

3. 学习用汇编语言编写程序; 了解汇编语言与 C 语言程序的区别和在设置上的不同;了解TMS320C6000 汇编语言程序结果和一些简单的汇编语句用法学习在CCS 环境中调试汇编代码。

4. 在了解纯C 语言程序工程和汇编语言程序工程结构的基础上,学习在C 工程中加入汇编编程的混合编程方法; 了解混合编程的注意事项;理解混合编程的必要性和在什么情况下要采用混合编程5. 熟悉CCS集成开发环境,掌握工程的生成方法; 熟悉SEED-DEC643实验环境;掌握CCS集成开发环境的调试方法。

实验原理:CCS 提供了配置、建立、调试、跟踪和分析程序的工具,它便于实时、嵌入式信号处理程序的编制和测试,它能够加速开发进程,提高工作效率。

CCS 提供了基本的代码生成工具,它们具有一系列的调试、分析能力序。

使用此命令后,要重新装载.out 文件后,再执行程序。

使用 CCS常遇见文件简介1. program.c: C 程序源文件;2. program.asm: 汇编程序源文件;3. filename.h: C 程序的头文件,包含DSP/BIOS API模块的头文件;4. filename.lib: 库文件;5. project.cmd: 连接命令文件;6. program.obj: 由源文件编译或汇编而得的目标文件;7. program.out: 经完整的编译、汇编以及连接后生成可执行文件; 8. program.map: 经完整的编译、汇编以及连接后生成空间分配文件; 9.project.wks: 存储环境设置信息的工作区文件。

P.S(CMD文件中常用的程序段名与含义1. .cinit 存放C程序中的变量初值和常量;2. .const 存放C程序中的字符常量、浮点常量和用const声明的常量;3. .text 存放C程序的代码;4. .bss 为C 程序中的全局和静态变量保留存储空间;5. .far 为C 程序中用far声明的全局和静态变量保留空间;6. .stack 为 C 程序系统堆栈保留存储空间,用于保存返回地址、函数间的参数传递、存储局部变量和保存中间结果;7. .sysmem 用于 C 程序中malloc、calloc 和 realloc 函数动态分配存储空间。

001音频数据的DSP处理和CCS编程


为了满足多处理器系统的设计,许多 DSP 芯片都采用支持多处理器的结构。
如:TMS320C40 提供了 6 个用于处理器间高速通信的 32 位专用通信接口,使处理器之间可直接对通,
应用灵活、使用方便;
9.省电管理和低功耗
DSP 功耗一般为 0.5~4W,若采用低功耗技术可使功耗降到 0.25W,可用电池供电,适用于便携式数字终
陕西理工学院实验报告
(200 ———200 学年第 学期)
线 日期: 线
订 学号: 订
院(系)
专业班级
学号
课程或实验课名称
实验项目名称
测试信号分析与处理 音频数据的 DSP 处理和 CCS 编程
学生姓名 实验学时
2
实验类型
一、 实验目的:
1、 了解 DSP 对外设的控制 2、 学习 C54X 对音频数据的处理 3、 掌握简单的 CCS 编程
端设备。
四、 实验条件:
DSP 实验箱、装有 CCS 环境的计算机
五、 实验步骤:
1、 使用已固化的程序,观察 DSP 对外设的控制 2、 使用 DSP 播放 MP3 文件 1) 在本目录下有多个文件,他们分别是: (1). de_mp3.out: DES5402PP-U 的 MP3 播放代码,可以直接使用 CCS 装入,并运行; (2). pc_hpi.exe: 在 PC 机上运行此程序,将硬盘中的 MP3 数据文件通过 HPI 接口传送到 DSP,以便 DSP 完成解码; (3). 使用说明.txt 或 readme.txt: 本说明文件。 (4). de_mp3.x00 和 de_mp3.x01:实验仪的 EPROM 文件。使用该 EPROM 后可以自动运 行 DSP 解码程序。 (5). test.mp3: MP3 文件,供测试。

dsp的实验报告和ccs的基本操作

3.用户系统的软件部分可以由CCS建立的工程文件进行管理,工程一般包含以下几种文件:
(1)源程序文件:C语言或汇编语言文件(*.ASM或*.C)
(2)头文件(*.H)
(3)命令文件(*.CMD)
(4)库文件(*.LIB,*.OBJ)
五、实验步骤
1.设置开发环境,点击Save & Quit保存并运行CCS
(1)学习创建工程和管理工程的方法。
(2)了解基本的编译和调试功能。
(3)学习使用观察窗口。
(4)了解图形功能的使用。
二、实验设备
PC兼容机一台,SEED-DTK5502实验箱。
三、实验内容
1. DSP源文件的建立;
2. DSP程序工程文件的建立;
3.学习使用CCS集成开发工具的调试工具。
四、实验原理
图1 CCS配置窗口
2.打开CCS后,新建一个新的project。
图2 CCS界面
3.编译文件
图3编译工具栏
4.下载文件到CPU
5.装载数据进来
图4下载数据界面1
图5下载数据界面2
6.查看寄存器的值
图6查看寄存器值窗口
7.查看输入输出波形
图7输入数据波形
图8输出数据波形
六、实验结果
图9整体界面
从图9的右上角寄存器查看窗口可以查看寄存器的值,在右边图形界面可以查看输入输出值。显而易见,该输出波形的值是输入数值的2倍。
七、实验体会
通过这一次试验,我基本熟识了ccs这一个软件,熟识了开发了DSP的基本步骤。由于条件有限,本实验只是在ccs这个软件上的的模拟仿真。在做实验的时候,出现的错误:添加头文件,语法错误都是小不了,但是只要自己耐心地修改程序,多点请教老师,错误就很快地被解决。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档