==================================================

DSP CCS工程文件构成


==================================================


1. 源文件(*.c *.asm)


2. 头文件(*.h *.inc)


3. cmd文件


   分为2种。


   一种是用来分配RAM空间的,用来将程序下载到RAM内调试,因为开发过程中大部分


   时间在调试程序,因此多用这类cmd;


   另一种是分配Flash空间的,当程序调试完毕后,需要将其烧写到Flash中固化。


   


4. 库文件(*.lib *.dll)


   库文件包含了寄存器的地址和对应标示符的定义,还包括了标准C/C++运行支持库函数。


   *.lib为静态库文件,在编译时调用,调用时直接加载到内存;


   *.dll为动态库文件,在运行时调用。

==================================================


创建DSP TMS320C6713工程


==================================================

==================== 准备工作 ====================


1. 从http://www.ti.com/lsds/ti/dsp/c6000_dsp/c67x/toolsw.page下载C6XCSL及其文档 


   C6XCSL为DSP C6000系列的芯片支持库(TMS320C6000 Chip Support Library)


   


   安装C6XCSL,点击.exe文件(其实就是解压),选择路径,本文为设为


   C6XCSL_ROOT=E:\MyDesigner\dsp\C6XCSL


   


2. 下载并安装破解CCS 5.3,安装路径不要有中文字符

==================== 新建工程 ====================


1. File -> New Project -> CCS Project 


   


   工程路径不要有中文字符。

2. 添加库文件


   工程右键 -> Add Files...


   转到C6XCSL_ROOT\lib_3x下。这里有2个6713系列文件:csl6713.lib和csl6713e.lib。


   


   两者区别是csl6713.lib用于小端(little endian)格式DSP,


   而csl6713e.lib用于大端(little endian)格式DSP。


   我们新建工程时选择了小端,因此这里选择csl6713.lib。


   然后弹出提示,选择“copy to files”将库文件拷贝一份到当前工程。


   


3. 添加头文件


   基本头文件是与库文件对应的。


   将C6XCSL_ROOT\include\文件夹拷贝到当前工程目录。


   工程右键 -> Properties, Build -> C6000 Compiler -> Include Options,


   添加../include头文件搜索目录。


   


   


4. 添加.cmd文件,这个可以参考C6XCSL_ROOT\example\下的例子,下面是Timer的例子,

   /* Memory Map 0 - the default */
MEMORY
{
PMEM:o = 00000000hl = 00010000h
BMEM:o = 00010000hl = 00030000h
} SECTIONS
{
.text > PMEM
.csldata> PMEM
.stack> PMEM
.far> PMEM
.switch> BMEM
.tables > BMEM
.data > BMEM
.bss> BMEM
.sysmem> BMEM
.cinit> PMEM
.const> BMEM
.cio > BMEM
}

5. 新建mian.c,这个不用多说了吧

   #include <csl.h>
void main(void) {
while (1) { }
}

==================== 附属问题 ====================


1. 新建工程结束,右键 -> Build Project,出现如下error,


   fatal error #35: #error NO CHIP DEFINED (use -dCHIP_XXXX where XXXX is chip number, i.e. 6201)


   原因:使用C6XCSL库需要定义芯片信号,错误提示没定义芯片型号


   解决:一种方法,在main.c中的#inclde <csl.h>前添加#define CHIP_6713;


         另一种方法,工程右键 -> Properties,Build -> C6000 Compiler -> Predefined Symbols,


         在“Pre-define NAME”中添加CHIP_6713

2. 右键 -> Build Project,出现如下warning,


   warning #10210-D: creating ".stack" section with default size of 0x400; use the


      -stack option to change the default size


   warning #10210-D: creating ".sysmem" section with default size of 0x400; use


      the -heap option to change the default size


   原因:没有设置堆大小(stack size)和栈大小(heap size)


   解决:工程右键 -> Properties,Build -> C6000 Linker -> Basic Options,


         设置stack size和heap size都为0x3FF。

DSP TMS320C6000基础学习(3)——CCS v5软件开发环境搭建的更多相关文章

  1. DSP TMS320C6000基础学习(4)—— cmd文件分析

    DSP中的CMD文件是链接命令文件(Linker Command File),以.cmd为后缀. 在分析cmd文件之前,必需先了解 (1)DSP具体芯片的内存映射(Memory Map) (2)知道点 ...

  2. DSP TMS320C6000基础学习(6)—— gel文件

    什么是gel文件?gel文件能干什么? gel全称General Extended Language,即通用扩展语言文件,gel文件中由类似C语言的代码构成,gel语言是一种解释性语言,gel文件扩展 ...

  3. DSP TMS320C6000基础学习(1)——介绍

    主要内容 1. Why process signals digitally? (1)模拟电路由模拟组件构成:电阻.电容及电感等,这些组件随着电压.温度或机械结构的改变会动态影响到模拟电路的效果: (2 ...

  4. DSP TMS320C6000基础学习(7)—— Bootloader与VectorTable

    本文主要简单记录C6000在启动装载过程和中断向量表的配置. 1. Bootloader 如上图, (1)在Device Reset阶段: 设备初始化为默认状态,大部分三态输出都配置为高阻态. (2) ...

  5. [转]CUDA在Windows下的软件开发环境搭建

    引自:http://www.makaidong.com/yaoyuanzhi/archive/2010/11/13/1876215.html 本文我们以visual studio 2005 为例演示c ...

  6. 零基础学习Linux(一)环境搭建

    从本文开始我会为大家介绍一下linux环境下详细的集群环境安装.配置.部署到实例演示的整个过程.在此过程中会给大家详细介绍一下Linux的操作技巧和一些工具的使用.今天开始第一步——环境搭建. 第一步 ...

  7. Java基础学习(一) -- Java环境搭建、数据类型、分支循环等控制结构、简单一维数组详解

    一:java概述: 1982年,SUN公司诞生于美国斯坦福大学校园,并于1986年上市,在NASDAQ(纳斯达克:是全美证券商协会自动报价系统)的标识为SUNW,2007年改为JAVA. 2009年4 ...

  8. 【vue基础学习】vue.js开发环境搭建

    1.安装node.js(http://www.runoob.com/nodejs/nodejs-install-setup.html) 2.基于node.js,利用淘宝npm镜像安装相关依赖 在cmd ...

  9. 2019-9-17:基础学习,windows server 2008 r2,搭建web服务器和FTP服务器

    一.信息服务iis管理器安装 1,点击打开“服务器管理器”-->选择“角色”-->选择“添加角色”,打开“添加角色向导” 2,点击“下一步”-->勾选“web服务器(IIS)”--& ...

随机推荐

  1. MVC3.0,路由设置实现伪静态IIS中404错误

    C# code? 1 2 3 4 5  routes.MapRoute("NewQueryTest.asp",                 "NewQueryTest ...

  2. 发布项目到 Linux 上运行 Core 项目

    发布项目到 Linux 上运行 Core 项目 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win ...

  3. [LeetCode 120] - 三角形(Triangle)

    问题 给出一个三角形,找出从顶部至底部的最小路径和.每一步你只能移动到下一行的邻接数字. 例如,给出如下三角形: [ [2], [3,4], [6,5,7], [4,1,8,3] ] 从顶部至底部的最 ...

  4. Set的并集

    public static void main(String[] args) { Set<Long> old = new HashSet<>(); for (int i = 0 ...

  5. 【转】Thunderbird中配置签名

    原文网址:https://support.mozilla.org/zh-CN/kb/Thunderbird%E4%B8%AD%E9%85%8D%E7%BD%AE%E7%AD%BE%E5%90%8D “ ...

  6. 【转】你应该知道的 10 个 VirtualBox 技巧与高级特性

    原文网址:http://www.oschina.net/translate/10-virtualbox-tricks-and-advanced-features-you-should-know-abo ...

  7. HDOJ 1326 Box of Bricks(简单题)

    Problem Description Little Bob likes playing with his box of bricks. He puts the bricks one upon ano ...

  8. 2015.9.11模拟赛 codevs 4159【hzwer的迷の数列】

    题目描述 Description hzwer找了一个人畜无害的迷の数列…… 现在hzwer希望对这个数列进行一些操作,请你来回答hzwer的问题. 操作一:查询第i个数的大小 操作二:把第i个数的大小 ...

  9. SRM 601 DIV1

    A 枚举x , 然后对于确定的x , 最后总的apple数对应了唯一的orange数,因此问题转化为求apple的取值范围; apple的取值范围: max为每个bag取最多的apple , min为 ...

  10. java--对象比较器

    在实际的项目中,经常会遇到排序问题,对于基本数据类型java支持Arrays.sort()和Collection.sort()对集合进行排序,但是对用户自定义类型排序呢?java给我们提供了两种解决方 ...