使用CCS进行DSP编程(一)——CCS编程入门.pdf

上传人:qwe****56 文档编号:70014275 上传时间:2023-01-14 格式:PDF 页数:10 大小:394.69KB
返回 下载 相关 举报
使用CCS进行DSP编程(一)——CCS编程入门.pdf_第1页
第1页 / 共10页
使用CCS进行DSP编程(一)——CCS编程入门.pdf_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《使用CCS进行DSP编程(一)——CCS编程入门.pdf》由会员分享,可在线阅读,更多相关《使用CCS进行DSP编程(一)——CCS编程入门.pdf(10页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、使用使用 CCS 进行进行 DSP 编程(一)编程(一)CCS 编程入门 CCS 编程入门 pacificxu TI 公司提供了高效的 C 编译器和集成开发环境 Code Composer Studio,学习C6X 的编程应该从学习 CCS 的使用开始。首先安装 CCS,CCS 的安装有详细的说明,并配有简短的 Quick Time 的多媒体介绍,对于没有购买 CCS 的用户,可以从 TI 处得到 30 天的试用版(没有硬件仿真功能)。使用 CCS 前需要对 CCS 进行设置,以 Simulator 为例,运行 Setup CCS C6000 1.20,安装 Device Driver,对于有

2、硬件支持的仿真器,可以选择配套的 CCS 驱动,设置完成的画面如下图所示:用户的界面大致相同。接下来就可以运行 CCS 了,CCS 提供了比较好的例子,对于初学者,仔细学习这些例子,会起到事半功倍的效果CCS 提供了比较好的例子,对于初学者,仔细学习这些例子,会起到事半功倍的效果。在 CCS 的 Help 菜单的 Tutorial 子菜单下,给出了四个教程,分别是:Code Composer Studio Tutorial、Advanced DSP/BIOS Tutorial、Compiler Tutorial 和 RTDX Tutorial,用户可以从简单的 CCS 功能开始,如创建一个工程

3、文件 Project,到创建一个完善的用户程序一步一步的进行。下面是 Code Composer Studio Tutorial 的例子:分别从生成一个简单的“Hello World”程序,到使用 DSP/BIOS 功能,到程序的调试,实时分析,I/O 操作等分 6 课来讲解,可以领略 TI 的 CCS 的强大功能。下面以“Hello World”程序为例讲一下 CCS 的使用。首先打开一个 Project 文件 这些文件的路径如下图所示:打开 hello.mak,会看到如下图所示的界面。将 File View 栏中的“+”号都打开,会看到整个项目工程中的所有资源。其中*.c 文件和*.h 文

4、件与普通的 C 语言编程中是一致的(TI 编译器支持ANSI C 标准)。需要指出的是三个文件:HELLO.CMD、RTS6201.LIB、VECTORS.ASM。HELLO.CMD 文件给出了程序空间和数据空间的设置、及编译后各程序段在程序或数据空间的具体位置。RTS6201.LIB 文件为 DSP 运行时库,VECTORS.ASM 为中断向量表,都是区别于纯软件编程的独到之处,熟悉以后会有更深的体会。下图为 HELLO.CMD 文件的代码,MEMORY 分为程序空间 IPRAM 和数据空间IDRAM,并分别给出了起始地址 origin 和长度 len,各段在 MEMORY 空间的分配也作了

5、定义。对于实际的目标板硬件系统,由实际的存储器空间及 DSP 芯片上的存储空间决定。对于软件仿真,可以不考虑有没有 MEMORY 资源。直接对该工程进行编译,会得到如下结果,试一下吧!也可以试一下快捷工具条上的按钮,随便点击鼠标右键,也会有意外的收获。怎么样?没有错误吧!自己在编写工程项目文件时,经常会遇到下面的问题,没有 C 语言程序的入口 函 数,细 心 比 较 一 下 会 发 现 工 程 文 件 中 缺 少 了 一 个 运 行 时 支 持 库RTS6201.LIB,不同的 DSP 芯片需要不同的运行时库来支持。下面向项目工程中加上运行时库 RTS6201.LIB 来纠正刚才的编译错误,同

6、样的方法可以用来向工程中添加*.c、*.cmd、*.asm 文件同样的方法可以用来向工程中添加*.c、*.cmd、*.asm 文件。*.h 文件在编译时会自己找到(当然需要在环境变量中设置好啦,一般不需要改动)。运行时库在 TI 的缺省路径下,注意将文件类型改为*.lib,大家可能注意到,在 HELLO.C 文件中有这样的定义:#ifdef FILEIO int i;char scanStrBUFSIZE;char fileStrBUFSIZE;size_t readSize;FILE *fptr;#endif#ifdef FILEIO /*clear char arrays*/for(i=0

7、;i BUFSIZE;i+)scanStri=0 /*deliberate syntax error*/fileStri=0;/*read a string from stdin*/scanf(%s,scanStr);/*open a file on the host and write char array*/fptr=fopen(file.txt,w);fprintf(fptr,%s,scanStr);fclose(fptr);/*open a file on the host and read char array*/fptr=fopen(file.txt,r);fseek(fptr,0

8、L,SEEK_SET);readSize=fread(fileStr,sizeof(char),BUFSIZE,fptr);printf(Read a%d byte char array:%s n,readSize,fileStr);fclose(fptr);#endif 其中还有一些变量的定义和对文件的操作,运行编译好的程序后好象这些语句都没有执行,因为在 CCS 的编译环境中这个参数还没有定义。按下图进行设置:设置完成后可以进行重新编译,会发现新的错误(如果没有出现这个错误,说明设置的不对)。双击这个错误,在 HELLO.C 文件中,光标会出现在出错的地方。在第 52 行的这一句,可以看到

9、语句的后面没有加“分号”,scanStri=0 加上“分号”后重新编译,ok?!加载 hello.out 运行,会出现下面的输入界面,输入一串文字并确定,在“Stdout”窗口会有下面的显示,小结:在这里简单介绍了 CCS 的使用,包括 CCS 的设置、帮助文件的使用,(TI的帮助文件系统、详细地介绍了 CCS 的使用,强烈建议用户认真学习。TI的帮助文件系统、详细地介绍了 CCS 的使用,强烈建议用户认真学习。)并以“Hello World”程序为例对 CCS 的使用中容易出现问题的一些地方作了一般的介绍,包括运行时库的添加、预编译定义设置等,用户在使用过程中会不断发现问题,通过使用 TI 的帮助文件及配套的资料会不断提高,不可急于求成,如果用户对 Visual C+比较熟悉,学起来会快很多;相反,那肯定要多花一些时间来学习了,学习 CCS 跟学习 Visual C+一样(简单/复杂?),但需要对硬件有一定的了解。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com