天天看點

DSP TMS320C6000基礎學習(3)——CCS v5軟體開發環境搭建

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

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

DSP TMS320C6000基礎學習(3)——CCS v5軟體開發環境搭建

工程路徑不要有中文字元。

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頭檔案搜尋目錄。

DSP TMS320C6000基礎學習(3)——CCS v5軟體開發環境搭建

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

DSP TMS320C6000基礎學習(3)——CCS v5軟體開發環境搭建

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軟體開發環境搭建