- 1、本文档共25页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DSPC语言实验讲述
实验一 CCS使用
1.如何建立和测试一个工程。
建立和测试一个工程的步骤如下:
(1)打开CCS Setup软件,选择目标芯片型号、仿真类型、存储模式等,并将其添加到系统,保存退出后软件将自动打开CCS软件。
(2)打开CCS软件后,选择project→New选项卡。
(3)在弹出的对话框中选择工程合适的位置。注意:路径中不要有中文。然后输入工程的名字。
(4)点击finish,然后点击工程名前面的加号dsp.c文件)和链接命令文件(firstdsp.cmd文件)复制到上一步CCS 自动创建的以工程名为名字的文件夹中,将库文件(rts.lib文件)添加到该文件夹中,最后将上述各文件在中分别添加到工程下各类型的文件夹中。
(6)在CCS界面中右击工程名选择“Build Options”进行编译选项设置,在Linker标签的Libraries选项中输入所要包含的库文件,在Basic选项中输入合适的堆栈值(实验中为400)。
(7)建立工程后,选择“Project”菜单下的“Rebuild all”命令,在CCS下方的Build窗口会显示编译链接信息,若没错误将产生一个.out的输出文件。
(8)选择“File”菜单下的“Load Program”命令进行加载上一步产生的程序输出文件(.out文件)。
(9)加载程序后,点击CCS左侧的“RUN”快捷按钮进行程序的软件仿真,并全速运行所加载的程序,通过观察窗口(memory、watch windows[观察变量]、registers、graph)验证实验结果。
2.建立工程需要的文件清单及每个文件的作用。
建立工程总共需要3个文件:
(1)rts.lib:c语言标准支持库,用于程序调用。
(2)firstdsp.c:c语言主程序。
(3)firstdsp.cmd:链接命令文件,用于定位内存,将块映射到存储器中。
3.思考题
rts.lib有何作用?其加载方法有几种?
答:(1)运行支持库(run time support library): 它包括C编译器所支持的ANSI标准运行支持函数、编译器公用程序函数、浮点运算函数和C编译器支持的I/O函数CCS中提供有rts库文件,并提供了对应的源程序文件rts.src。库文件包括标准的C/C++运行支持库函数,浮点运算程序,系统启动程序_c_int00 等这些库中也包括由汇编实现的子程序,可以在汇编中调用,比如除法子程序 FD$$DIV等(2)rts.lib文件加载方法有两种:
①在CCS中右击将要加载库文件的工程名,选择“Build Options”进行编译选项设置,在Linker标签的Libraries选项中输入所要包含的库文件,即rts.lib。
②先将rts.lib复制到计算机硬盘的工程文件夹中,在CCS中右击将要加载库文件的工程下的Libraries文件夹进行添加库文件,即rts.lib。
firstdsp.c:
#include stdio.h
#include math.h
main()
{
int a,b,sum;
a=123;
b=456;
sum=a+b;
printf(sum is %d\n,sum);
while (1);
}
乘加实验:
#include math.h
struct add{float x1,x2,x3,x4,x5,y;}add1;//定义结构变量(可不同类型数据)
double a[5]; //定义数组变量(同类型数据)
double y,x;
void main()
{
add1.x1=3; //结构变量赋值
add1.x2=3;
add1.x3=2;
add1.x4=2;
add1.x5=2;
a[0]=1; //数组变量赋值
a[1]=2;
a[2]=3;
a[3]=4;
a[4]=5;
add1.y=add1.x1*a[0]+add1.x2*a[1]+add1.x3*a[2]+add1.x4*a[3]+add1.x5*a[4];
y=add1.y;
x=exp(2);
while(1);
}
链接文件firstdsp.cmd:
-w
-stack 400h
-heap 100
-l rts.lib
MEMORY
{
PAGE 0:
VECT : o=80h,l=80h
PRAM : o=100h,l=2f00h
PAGE 1:
DRAM : o=3000h,l=1000h
}
SECTIONS
{
.text : {} PRAM PAGE 0
.data : {} PRAM PAGE 0
.cinit : {} PRAM PAGE 0
.cio: PRA
文档评论(0)