实验一 - 熟悉CCS5000开发工具(DSP开发环境基本操作) 下载本文

实验一熟悉CCS5000开发工具(DSP开发环境基本操作)

一 实验目的

(1)了解SEED-DTK5416开发板的构造及基本使用 (2)了解CCS 2.0软件的配置方法 (3)了解CCS软件的基本操作 (4)掌握CCS软件的基本调试方法

二 实验内容

1.CCS 2.0的配置 2.DSP源文件的建立

3.DSP程序工程文件的建立

4.学习使用CCS集成开发工具的调试工具

三 实验原理

1、SEED-DTK5416原理框图

图1-1

图1-1为SEED-DTK5416的功能框图(主要包括DSP、电源、仿真器、存储器、音频CODEC和扩展接口), 板上DSP支持其他54xx系列的芯片,如5409/5410/5416等,电源部分提供了板上所需的各种电源;板上64K-16bit的静态存储器(SRAM)在DSP以160MHz速度运行时只需1个等待周期;128K-8bit Flash ROM映射为数据空间,用于启动时程序的自动装载(Boot Loading);TLV320AIC23B是TI推出的一款高性能的立体声音频Codec芯片,内置耳机输出放大器,支持MIC和LINE IN两种输入方式(二选一),且对输入和输出都有可编程增益调节。扩展接口MCBSP可以对SEED-DTK5416的功能进行扩展。

SEED-DTK5416的工作状态: 1.工作模式:微计算机模式

2.BOOT模式:采用FLASH引导

3.串口通讯:采用的A通道异步串行接口,RS232全双工方式 4.音频输出:立体声输出左、右声道耳机驱动输出; 2、SEED-DTK5416性能指标

①高性能DSP:TMS320VC5416,主频160MHZ. ②SDRAM:64K*16位(扩展至512K*16位)。 ③Flash:256K*16位(扩展至1 M*16位)。

④提供看门狗电路、电源监视、上电复位、手动复位 ⑤2路编程可选的RS232/RS422/RS485 ⑥AC97标准的Audio音频接口 ⑦三路扩展串行接口

⑧电源:单一电源供电(+5V),使用外接DC适配器提供电源。 3、调试运行环境

①带有USB接口IBM PC兼容机或笔记本电脑,需要有足够的资源运行Code Composer Studio。如要充分发挥USB2.0的性能,你的主机必须具备USB2.0接口。(需用户自备) ②SEED-DTK5416开发板。

③SEED-XDS510PLUS仿真器 以及仿真器驱动程序,随盘附带。 ④USB电缆。(随TDS5410-TDK提供) ⑤Code Composer Studio 2.2或以上版本。 4、CCS软件配置

在使用CCS软件进行DSP软件编写和调试前必需对CCS软件进行正确配置。这十分重要。因为CCS软件也是一种交叉开发环境, CCS编译后的最终程序必须下载到开发目标或Simulator中运行调试。所以使用它前必须配置正确才能产生符合目标板的COFF程序。

详细配置方法请参见“CCS2.2(C5000)安装以及配置方法for SEED-DTK5416.doc ”。 5、CCS文件简介

1) **.c : C程序源文件 2) **.asm : 汇编程序源文件

3) **.h : C程序的头文件,包含DSP/BIOS API模块的头文件 4) **.lib : 库文件

5) **.cmd : 连接命令文件,主要用于DSP代码的定位,由3部分组成 6) **.obj :由源文件编译或汇编而得的目标文件 7) **.out :(经完整编译、汇编以及连接的)可执行文件 8) **.wks : 存储环境设置信息的工作区文件 9) **.pjt : 工程文件

其中CMD文件用于DSP代码的定位,由3部分组成: 1. 输入/输出定义

2. MEMORY命令:描述系统实际的硬件资源 3. SECTION命令:描述“段”如何定位

四.实验准备

1.将DSP仿真器与计算机连接好

2.将DSP仿真器的JTAG插头与SEED- DTK 5416单元的J1相连

3.将5V外接电源与SEED- DTK 5416的J11相连,查看D1和D3是否均亮,若有不亮的,请断开电源,检查电源。

五.实验步骤

(一)创立工程文件

1.双击图标进入CCS环境,点击Project-New,创建一个新工程,其中工程名及

路径可任意指定,但是请注意不要用中文和纯数字命名

2.弹出如下对话框,先在Location中输入工程路径,然后在Projecrt中填入工程名,其余默认

(二)创立源文件

1.打开CCS选择File-New-Source File命令

2.编写源代码并保存。汇编文件保存为**.asm,C文件保存为**.c,连接命令文件保存为**.cmd

(三)添加工程所需文件

右键点击工程选择add files to project,添加工程所需文件。同样的方法可以添加**.c、**.asm、**.cmd、**.lib文件.

(四)工程编译与调试

1.点击Project-Build all,对工程进行编译,如正确则生成out文件,若是修改程序,可使用Project-Build命令,进行编译连接,它只对修改部分做编译连接工作,可节省编译与连接的时间,编译通过,生成.out文件

2.点击File-load program,在弹出的对话框中载入Debug文件夹下的.out可执行文件 3.装载完毕

4.点击Debug-go main回到C程序的入口

5.运行(点击Debug-run :程序运行直到遇到断点位置;点击Debug-Animate:用户反复运行程序,直到遇到断点为止;点击Debug-Halt停止运行;点击Debug-run free:禁止所有断点运行程序) 六.实验范例

例1 浮点数乘法和除法

本例要求实现浮点数的乘法和除法。用C语言编写。实现浮点数相乘和相除,例如 12.7×(-9.2),12.7÷(9.2),Sqrt(12.7) 步骤1:创建工程文件(Project-New);

步骤2:在工程目录下创建C源文件(File-New-Source File),保存为“*.c”文件,C语言程序代码如下:

#include “math.h”—调用数学库函数,后面求根函数sqrt()需要调用数学函数库 #pragma DATA_SECTION(data1,”data_buff1”) float data1;

#pragma DATA_SECTION(data2,”data_buff2”) float data2;

#pragma DATA_SECTION(data3,”data_buff3”) float data3;

#pragma DATA_SECTION(data4,”data_buff4”) float data4;

#pragma DATA_SECTION(data5,”data_buff5”) float data5; void main(void) {

data1=12.7; data2=-9.2;

data3=data1*data2; data4=data1/data2; data5=sqrt(12.7); }

步骤3:在工程目录下创建配置文件(File-New-Source File),保存为“*.cmd”文件,配置文件代码如下: MEMORY{ PAGE 0 : PARAM: org=1000h ,len=0efd0h PAGE 1 : DARAM: org=02000h ,len=0ffffh } SECTIONS{ .text :> PARAM PAGE 0 .cinit :> PARAM PAGE 0 .data :> DARAM PAGE 1 .bss :> DARAM PAGE 1 .const :> DARAM PAGE 1 }

步骤4:右键点击工程选择add files to project添加工程所需文件,包括*.c、*.cmd以及rts.lib文件(其中rts.lib库文件目录:\\ti\\c5400\\cgtools\\lib); 步骤5:编译(Project-Build all),下载(File-load program),运行(Debug-Animate) 步骤6:使用菜单(View-Watch Windows)观看运行结果

在观察窗口里添加变量名data1,data2,data3,data4,data5,观察结果如下:

关于伪指令#pragram的说明

Pragram伪指令告诉编译器的预处理如何处理函数。TMS320C54X C编译器支持下列Program: CODE_SECTION DATA_SRECTION

FUNC_CANNOT_INLINE FUNC_EXT_CALLED FUNC_IS_PURE FUNC_IS_SYSTEM FUNC_NEVER_RETURN FUNC_NO_GLOBAL FUNC_NO_IND_ASG

IDENT INTERRUPT NO_INTERRUPT #pragma的参数func和symbo不能在函数体内定义,必须在函数体外指定pragram,且它必须出现在任何对func和symbol参数的声明,定义,引用之前,否则,编译器将发出警告。 #DATA_SECTION pragram 在C++中的语法为#pragram DATA_SECTON(“section name ”) [;]

该pragram为名称为section name(段名)的命名段中的symbol(符号)分配空间。若希望将一个数据目标链接与.bbs段不同的区域,则采用此pragram。

例2.设计项目。

要求设计一个球的体积的计算程序,并完成程序的编辑,编译,链接和下栽调试过程。