DSP學習-CCS新工程創建與配置

1、一個完整的工程包含的文件

CCS建立一個完整的工程,至少需要以下4個文件:

1)存儲器分配cmd文件:cmd命令文件是用來分配存儲空間的。

2)C語言系統庫rts2xx.lib:rts2xx.lib是C語言系統庫,包含了編譯器提供的所有功能:①初始化C語言環境(入口地址是_c_int0),②設置堆棧,③提供標準的c語言函數庫。

3)包含main函數的c源文件:有且只有一個包含main函數的c源文件,系統庫初始化完畢後就把控制權交給main()函數了。

4)矢量跳轉表asm彙編文件:矢量跳轉表文件,通常是彙編文件(asm)形式,此文件需要準確的定位在程序的起始地址,其內容是彙編語句中的無條件跳轉語句“B”。

2、DSP啓動過程理解

入口函數地址最終跳到code_start函數(參見DSP280X_Codestartbranch.asm文件)。

--------------------------------------------------------------------------

  |.sect"codestart" |

| |

|code_start: |

    |.ifWD_DISABLE == 1 |

    |     LB wd_disable       ;Branch to watchdog disable code |

   | .else |

   |      LB_c_int00         ;Branch to start ofboot.asm in RTS library |

    |.endif   |

|;end codestart section |

        ---------------------------------------------------------------------------

上述這個段,根據引導空間不同,被cmd分配在不同的地址:

ram引導:

   BEGIN      : origin = 0x000000, length =0x000002 

flash引導:

  BEGIN      : origin = 0x3f7ff6, length = 0x000002 

_c_int00這個函數,具體代碼找不到,該函數應該放在rts這個庫中,這個函數_c_int00應該C初始化代碼的入口地址,在你用C編程的時候,DSP需要執行一段C運行支持庫代碼以完成C運行環境的初始化,_c_int00就是這段初始化代碼的入口地址。執行完初始化代碼後,庫代碼會自動跳到main函數繼續運行。

完成的內容有:c_int0函數進行以下工作以建立C運行環境:爲系統堆棧產生.stack塊,並初始化堆棧指針。

.cinit塊將初始化數據拷貝到.bss塊中相應的變量。調用main函數,開始運行C程序。

3、創建一個完整的工程(以F28335爲例)

3.1、創建工程前的準備

       打開Setup CCStudio v3.3,配置配置相應型號的板子芯片。這裏以F28335爲例。

單擊F28335 XD510 Emulator,添加該型號仿真器,然後在右側出現的F28335 XD510 Emulator仿真器右鍵單擊,選中屬性:

按照下圖進行配置:

配置好後,點擊NEXT,在出現的頁面,點擊Finsh。

到這裏,仿真器配置完畢。

點擊Save&Quit,保存並退出,啓動CCS。

在創建新工程前,先在建立存放工程的文件夾Demo,將TI例程包中DSP2833x文件夾下的DSP2833x_common文件夾、DSP2833x_headers文件夾複製到Demo文件夾下。完畢後,目錄樹如下:

3.2、打開CCS,點擊菜單欄裏的Project,點擊New,會跳出新工程設置的對話框,如下圖所示:




   在Project欄內填寫工程名字:Demo。設置工程存儲路徑,確認沒有問題後點擊Finish。CCS中出現剛剛創建的Demo.pjt

3.3、創建主函數文件main.c。

   點擊菜單欄中的File——>New——>Source File,在編輯區域內出現一個新的Untitled1文件,

     然後,點擊File——>Save,會出現保存文件的對話框。文件名填寫“main.c”,關鍵要注意保存類型,因爲我們現在要建立的是原文件,所以選擇“C/C++ Source File(*.c*)”,點擊保存。

3.4、添加源文件到工程。

     右擊Demo工程中Source文件夾,選擇添加文件到工程,添加的文件在DSP2833x_common文件夾、DSP2833x_headers文件中的Source文件夾中,以及編寫的main.c文件。添加的文件如下圖所示:

右擊Demo.pjt,添加.cmd文件,分別位於DSP2833x_common文件夾、DSP2833x_headers文件中的cmd文件夾中。

  注意:頭文件不用手動添加,在添加好*.c文件後,在配置頭文件路徑後,系統會自動添加頭文件到Include文件下。、

  否則,手動添加的頭文件會被添加到Document文件下。

3.5、工程相關配置。

     添加好文件後,右擊Demo.pjt,選擇編譯選項:


在彈出的選項卡中,選擇Compile選項頁進行如下配置:



頭文件的路徑,這裏是D:\DSP_Demo\DSP2833x_common\include、D:\DSP_Demo\DSP2833x_headers\include。

選擇Linker選項頁,配置如下:


最後,不要忘記鏈接Jtag.

整個工程創建和配置已經完成,可以進行編譯。

由於剛開始接觸DSP,在開始時遇到很多問題,對最基本的創建工程都不是很清楚,故藉此機會記錄下來。可能當中過程存在某些問題,希望大家指正。同時也希望能夠幫助到那些像我一樣剛接觸DSP的朋友們。

     







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章