1. 程式人生 > >DSPF28335學習之(2)CCS5.5新建工程、編譯除錯及燒寫至FLASH

DSPF28335學習之(2)CCS5.5新建工程、編譯除錯及燒寫至FLASH

目錄

(1)準備

A.編譯

B.除錯

準備:1.CCS5.5;2.F28335核心板;3.XDS100V3模擬器

1.程式燒寫至RAM

        在程式除錯階段,程式燒寫至RAM,配合模擬器對程式進行除錯。在Properties→General中

  • ① 在Manage Configurations中設定Debug為Active;
  • ② 在Linker command file中選擇28335_RAM_lnk.cmd。

                               

(1)準備

        在Workspace新建資料夾Project,在資料夾下拷入檔案“DSP2833x_common

DSP2833x_headers”(可從TI官方檔案獲得)

                                       

(2)新建工程

        Project → New CCS Project,新建工程名Exam_F28335_ADC_SeqModeTest,

                                                               

        從DSP2833x_headers\cmd中拷貝DSP2833x_Headers_nonBIOS.cmd到Exam_F28335_ADC_SeqModeTest資料夾下,並新建一個Source

資料夾,儲存原始檔

                                               

(3)設定標頭檔案索引路徑

        右鍵點選工程名,選擇Properties,在C2000 Complier下的Include Options,新增

                        "${PROJECT_ROOT}\..\DSP2833x_headers\include"

                        "${PROJECT_ROOT}\..\DSP2833x_common\include"

                               

點選OK後,工程檔案的Include欄中有新增的索引路徑,如下圖說明新增成功(失敗,則為灰色)

                                       

(4)配置模擬器

        右鍵點選工程名,選擇NEW → Target Configuration File,設定File Name

                                                       

點選Finish出現如下介面,選擇模擬器型號XDS100V3,器件型號選擇TMS320F28335,點選右側Save,儲存配置。

                                       

可以點選Test Connection測試模擬器是否連線成功,見除錯部分。

(5)新增原始檔

        複製需要的.c及.asm檔案到source資料夾,複製到資料夾中後會自動出現在工程列表中。

一般有DSP2833x_common\source中的

               DSP2833x_ADC_cal.asm              DSP2833x_CodeStartBranch.asm

                DSP2833x_DefaultIsr.c           DSP2833x_Gpio.c

                DSP2833x_SysCtrl.c               DSP2833x_usDelay.asm

以及DSP2833x_headers\source中的DSP2833x_GlobalVariableDefs.c

        如果用到定時器,需要新增DSP2833x_CpuTimers.c

        如果用到ADC,則需要新增DSP2833x_Adc.c

        如果用到中斷,需要新增DSP2833x_PieCtrl.c DSP2833x_PieVect.c

        如果用到SCI,需要新增DSP2833x_Sci.c

其他的類推。

(6)新增庫

        如果程式中有三角函式或者開根號等運算,推薦只用fastPTSIQmath庫來計算,在C2000 Linker下的Flie Search Path中新增。(官網下載)

在主函式中,需要新增標頭檔案:

        #include “math.h”

        #include “C28x_FPU_FastPTS.h”

具體可參考連結

在Include library flie or command file中新增

                ”rts2800_fpu32.lib”

在Add <dir> to library search path中新增索引路徑

              "${PROJECT_ROOT}\..\DSP2833x_common\lib"

然後將最下面的Disable automatic RTS selection選中,如下圖

                                               

點選Build,在Link Order中,點選Add新增庫檔案。

             

(7)其他說明

  • ① cmd檔案的選擇則根據執行模式選擇:

        線上模擬模式: 28335_RAM_link.cmd

        Flash燒寫模式:F28335.cmd

  • ② 在main.c檔案中需要引用標頭檔案

        #include “DSP28x_Project.h”       //包含所有的外設標頭檔案及巨集定義

(8)編譯及除錯

A.編譯

        點選 或選擇Build Project,編譯工程檔案,編譯成功後工程列表中出現Binaries(包含.out檔案)和Debug資料夾。(驗證程式)

                                                               

B.除錯

  • ① 通斷電順序:

        通電:將模擬器連線電腦,然後接通電源,最後開啟模擬軟體。

        斷電:模擬軟體內部斷開連線,關閉軟體,斷開電源,最後拔掉模擬器。

模擬器不為開發板/核心板供電

  • ② 將模擬器連線電腦。CCS軟體自身整合模擬器驅動,因此插上模擬器後會自動安裝驅動。檢視:右鍵“我的電腦”→“管理”→“裝置管理器”

                                                               

  • ③ 連線電源,板上有燈亮起。連線成功後,點選.ccxml檔案中的Test Connection,出現下圖介面,介面中各項最後均為succeed則連線成功。

                                                               

  • ④ 點選 ,進入下圖Debug介面,表示連線成功,進入除錯介面

                                               

變數觀察:選中該變數,然後右鍵“Add Watch Expression”

2.程式燒寫至Flash

        在程式除錯完成後,需要將程式燒寫至Flash,這樣可去掉模擬器,直接上電即可執行程式。

首先按照1中提到的步驟建立工程並完成程式的除錯,除錯完成後,對工程進行如下修改,將程式燒寫至Flash:

(1)設定Properties→General

  • ① 在Manage Configurations中設定Release為Active;
  • ② 在Linker command file中選擇F28335.cmd

                                    

在Predefined Symbols中新增預定義FLASH,如下圖

                                       

根據板子的實際情況,如有需要,則要改變晶振設定等,一般採用預設值,如下圖所示

                                       

設定完成後,點選OK,最終工程中原有的28335_RAM_lnk.cmd檔案變成”Exclude from Build”模式 ,新添加了檔案F28335.cmd。

(2)新增原始檔及修改主函式

        在原工程的“Source”資料夾中新增原始檔DSP2833x_MemCopy.c(路徑DSP2833x_common\source)。

在主函式初始化部分InitPieVectTable();後新增:

#ifdef FLASH

       MemCopy(&RamfuncsLoadStart,&RamfuncsLoadEnd,&RamfuncsRunStart);

       InitFlash();            //初始化Flash

#endif

(3)設定標頭檔案索引路徑

        按照1中方式新增標頭檔案索引路徑和庫函式及其索引路徑

(4)編譯及下載

  •         ① 點選 或選擇Build Project,編譯工程檔案,編譯成功後工程列表中新增Release資料夾。
  •         ②點選 下載程式,將出現如下介面,將程式下載至FLASH中,中間不能出現間斷。

                                       

下載成功後,點選下圖中紅色按鈕,退出Debug介面

                       

斷開供電電源→斷開模擬器,需要拔下JTAG插頭,而不是僅斷開模擬器的USB端,否則程式會出錯→重新對板子供電

則程式燒寫至FLASH,上電後即可使用。