第3講 CCS集成開發(fā)環(huán)境及其使用_第1頁
第3講 CCS集成開發(fā)環(huán)境及其使用_第2頁
第3講 CCS集成開發(fā)環(huán)境及其使用_第3頁
第3講 CCS集成開發(fā)環(huán)境及其使用_第4頁
第3講 CCS集成開發(fā)環(huán)境及其使用_第5頁
已閱讀5頁,還剩88頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

6.1CCS集成開發(fā)環(huán)境簡介6.2CCS的安裝和設置6.3CCS的應用界面6.4CCS集成開發(fā)環(huán)境的使用6.5本章小結第6章CCS集成開發(fā)環(huán)境及其使用第6章CCS集成開發(fā)環(huán)境及其使用1精選ppt內(nèi)容簡介CodeComposerStudio〔簡稱CCS〕是TI公司推出的用于開發(fā)DSP的集成開發(fā)環(huán)境,它采用Windows風格界面,集編輯、編譯、鏈接、軟件模擬、硬件仿真調(diào)試以及實時跟蹤等功能于一體,支持匯編語言與C語言及二者的混合編程,極大地方便了DSP的開發(fā)與設計。CCS集成開發(fā)環(huán)境是目前使用最為廣泛的DSP開發(fā)軟件之一,所有TI公司的DSP都可以在該環(huán)境里進行開發(fā)。CCS自推出以來開展出了多個版本,本章以CCSV3.3為例介紹CCS的安裝和設置、CCS的應用界面并以CCS工程開發(fā)實例來詳細介紹CCS集成開發(fā)環(huán)境的使用。第6章CCS集成開發(fā)環(huán)境及其使用2精選ppt6.1CCS集成開發(fā)環(huán)境簡介CCS是TI公司為TMS320系列DSP軟件開發(fā)推出的集成開發(fā)環(huán)境。CCS工作在Windows操作系統(tǒng)下,類似于VisualC++的集成開發(fā)環(huán)境,采用圖形接口界面,提供了環(huán)境配置、工程管理工具、源文件編輯、程序調(diào)試、跟蹤和分析等工具,可以幫助用戶在一個軟件環(huán)境下完成編輯、編譯、鏈接、調(diào)試和數(shù)據(jù)分析等工作。第6章CCS集成開發(fā)環(huán)境及其使用3精選ppt6.1.1CCS的組成CCS的構成及接口如圖6-1所示。6.1CCS集成開發(fā)環(huán)境簡介第6章CCS集成開發(fā)環(huán)境及其使用圖6-1CCS構成及接口4精選ppt6.1.1CCS的組成CCS由以下5局部組件構成:(1)代碼生成工具。(2)CCS集成開發(fā)環(huán)境。(3)DSP/BIOS實時操作系統(tǒng)及其應用程序接口API。(4)實時數(shù)據(jù)交換的RTDX插件和相應的程序接口API。(5)由TI公司以外的第三方提供的應用模塊插件。6.1CCS集成開發(fā)環(huán)境簡介第6章CCS集成開發(fā)環(huán)境及其使用5精選ppt6.1.2CCS的主要功能CCS有兩種工作模式,第一種是軟件模擬器模式〔Simulator〕,即脫離DSP處理器,在PC機上模擬DSP的指令集和工作機制,主要用于前期算法實現(xiàn)和調(diào)試;第二種是硬件在線編程模式〔Emulator〕,即實時運行在DSP處理器上,與硬件開發(fā)板相結合在線編程和調(diào)試應用程序。(1)具有集成可視化代碼編輯界面,可通過其界面直接編寫匯編語言和C語言程序、.h頭文件和d命令文件等。(2)含有集成代碼生成工具,包括匯編器、優(yōu)化C編譯器、鏈接器等,將代碼的編輯、編譯、鏈接和調(diào)試等諸多功能集成到一個軟件環(huán)境中;具有各種調(diào)試工具,包括加載執(zhí)行文件〔.out文件〕、運行、單步操作、設置斷點、查看存放器、存儲器、反匯編、變量窗口,評估程序的執(zhí)行時間等功能,支持C源代碼級調(diào)試,并支持多DSP的調(diào)試。6.1CCS集成開發(fā)環(huán)境簡介第6章CCS集成開發(fā)環(huán)境及其使用6精選ppt6.1.2CCS的主要功能(3)斷點和探針工具,斷點工具能在調(diào)試程序的過程中,完成硬件斷點、軟件斷點和條件斷點的設置;探針工具可將PC機數(shù)據(jù)文件中的數(shù)據(jù)傳送到DSP,或者將DSP中的數(shù)據(jù)傳送到PC機數(shù)據(jù)文件中,以便實現(xiàn)各種算法仿真和數(shù)據(jù)監(jiān)視。(4)圖形顯示工具,可以將DSP程序生成的數(shù)據(jù)繪制成時域/頻域圖、眼圖、星座圖和圖像等,以便于觀察和分析。(5)提供通用擴展語言GEL〔GeneralExtensionLanguage〕工具,利用GEL擴展語言,用戶可以編寫自己的控制面板/菜單,設置GEL菜單項選擇項,方便直觀地修改變量,配置參數(shù)等。(6)提供DSP/BIOS實時操作系統(tǒng),增強了對代碼的實時分析能力,如分析代碼執(zhí)行的效率、調(diào)度程序執(zhí)行的優(yōu)先級、方便管理或使用系統(tǒng)資源,從而減少開發(fā)人員對硬件資源熟悉程序的依賴性。6.1CCS集成開發(fā)環(huán)境簡介第6章CCS集成開發(fā)環(huán)境及其使用7精選ppt6.1.2CCS的主要功能(7)支持實時數(shù)據(jù)交換RTDX〔Real-TimeDataExchange〕技術,可以在不中斷目標系統(tǒng)運行的情況下,實現(xiàn)DSP與其他應用程序的數(shù)據(jù)交換,為用戶提供實時和連續(xù)的可視環(huán)境,看到系統(tǒng)工作的真實過程。(8)開放式的插入架構技術,只需安裝相應的驅(qū)動程序,就能夠集成第三方的專業(yè)插件。(9)高性能編輯器支持匯編文件的動態(tài)語法加亮顯示,使用戶很容易閱讀代碼,發(fā)現(xiàn)語法錯誤。(10)工程工程管理工具可對用戶程序?qū)嵭泄こ坦芾?。在生成目標程序和程序庫的過程中,建立不同程序的跟蹤信息,通過跟蹤信息對不同的程序進行分類管理。6.1CCS集成開發(fā)環(huán)境簡介第6章CCS集成開發(fā)環(huán)境及其使用8精選ppt到目前為止,TI公司已經(jīng)為其DSP處理器先后推出了V1.0、V1.2;V2.0、V2.1、V2.2;V3.0、V3.1、V3.3;V4.0、V4.1、V4.2;V5.x,V5.5;V6.x等版本的CCS。各個版本的CCS軟件功能大體一致。V3.0以前的CCS版本,只支持TI公司的一個DSP系列,每個系列都有對應的CCS版本,如TMS320C5000CCSV2.0、TMS320C6000CCSV2.0等,開發(fā)不同系列的DSP要安裝對應的CCS軟件。V3.0及其后續(xù)版本CCS支持所有DSP處理器系列;V5.x支持TI公司的所有器件,包括MSP430系列單片機。安裝一個軟件即可開發(fā)所有系列DSP處理器,用戶可以根據(jù)需要安裝、配置CCS以面向特定的目標DSP。目前使用較為廣泛的是CCSV3.3版本,本章以CCSV3.3為例對CCS的使用進行介紹。6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用9精選ppt6.2.1CCS的安裝

安裝完成后,安裝程序?qū)⒆詣釉谟嬎銠C桌面上創(chuàng)立如圖下所示的“CCStudiov3.3〞和“SetupCCStudiov3.3〞兩個快捷方式圖標。CCS應用程序CCS的配置程序6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用第一次使用CCS前,必須運行“SetupCCStudiov3.3〞程序?qū)CS進行配置,選擇需要使用的DSP開發(fā)平臺。假設需要使用新的DSP開發(fā)平臺時,可以重新運行“SetupCCStudiov3.3〞對CCS進行相應的配置。10精選ppt6.2.1CCS的安裝

如果購置了第三方仿真器及開發(fā)板,需要依次安裝開發(fā)板,仿真器驅(qū)動,并完成CCS的配置。6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用第一次使用CCS前,必須運行“SetupCCStudiov3.3〞程序?qū)CS進行配置,選擇需要使用的DSP開發(fā)平臺。假設需要使用新的DSP開發(fā)平臺時,可以重新運行“SetupCCStudiov3.3〞對CCS進行相應的配置。11精選ppt6.2.2CCS的配置

配置時雙擊桌面上的“SetupCCStudiov3.3〞快捷方式圖標,啟動CCS配置程序。根據(jù)實際應用確定DSP開發(fā)平臺后,在AvailableFactoryBoards的列表中選擇需要的配置及仿真板。其中Family下拉列表框中選擇相應的目標DSP系列,Platform下拉列表框選擇仿真開發(fā)平臺,Endianness選擇存儲模式。選定后雙擊或拖動到左側SystemConfiguration系統(tǒng)配置區(qū)域即可。圖6-4中顯示目前已經(jīng)為CCS配置了兩個DSP開發(fā)平臺。6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用12精選ppt6.2.2CCS的配置

Endianness模式:在各種計算機體系結構中,對于字節(jié)、字等的存儲機制有所不同,通信雙方交流的信息單元〔比特、字節(jié)、字、雙字等等〕順序傳送方式即Endianness。Big-endian:按照最高位字節(jié)(包含最高位,即MSB,的字節(jié))至最低位字節(jié)(包含最低位,即LSB,的字節(jié))的順序,存放在連續(xù)的地址中。例如:雙字節(jié)數(shù)0x1234以big-endian的方式存在起始地址0x00000000中數(shù)據(jù)<--地址|0x12|<--0x00000000|0x34|<--0x000000016.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用13精選ppt6.2.2CCS的配置

Little-endian:按照最低位字節(jié)(包含LSB的字節(jié))至最高位字節(jié)(包含MSB的字節(jié))的順序,存放在連續(xù)的地址中。例如:雙字節(jié)數(shù)0x1234以little-endian的方式存在起始地址0x00000000中數(shù)據(jù)<--地址|0x34|<--0x00000000|0x12|<--0x00000001Middle-endian:多字節(jié)存儲順序方式。例如:4個字節(jié)1234的存放有3-4-1-2或者2-1-4-3方式。6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用14精選ppt6.2.2CCS的配置

6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用圖6-4“SetupCCStudiov3.3”CCS配置對話框15精選ppt6.2.3CCS的啟動

CCS配置程序配置好DSP開發(fā)平臺后,保存配置并退出,軟件將詢問是否進入CCS開發(fā)環(huán)境,選擇“是〞即可運行CCS。CCS程序運行時,如果DSP開發(fā)平臺沒有和計算機正確連接或上電,將彈出以下圖所示的對話框進行提示。單擊Retry按鈕,可以重新檢測已配置的DSP開發(fā)平臺;單擊Abort按鈕,可以終止運行CCS;單擊Ignore按鈕,將忽略不能連接的開發(fā)平臺進入CCS。6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用16精選ppt6.2.3CCS的啟動

當CCS配置程序配置兩個以上開發(fā)平臺時,CCS啟動后顯示以下圖所示CCS并行調(diào)試管理器界面。CCS并行調(diào)試管理器界面在CCS并行調(diào)試管理器中,在菜單欄中選擇File→LoadProgram命令,可以向選中的開發(fā)平臺加載DSP程序并運行,從而可對該DSP程序進行調(diào)試。6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用17精選ppt6.2.3CCS的啟動

在CCS并行調(diào)試管理器界面的Open菜單中選擇需要運行的開發(fā)平臺,如選擇C5402XDS510Emulator,那么可進入面向該開發(fā)平臺的CCS。如果沒有連接開發(fā)平臺,將在CCS界面標題欄和窗口左下腳顯示沒有連接,如圖6-7所示。這時可以通過在菜單欄中選擇Debug→Connect〔或直接按下快捷鍵<Alt+C>)命令來實現(xiàn)連接,連接成功后的CCS界面如圖6-8所示,此時CCS界面左下角會提示當前仿真器狀態(tài)為“HALTED〞。此后就可以開始程序的開發(fā)了。6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用18精選ppt6.2.3CCS的啟動

6.2CCS的安裝和設置第6章CCS集成開發(fā)環(huán)境及其使用

圖6-7啟動CCSV3.3后的初始界面

圖6-8連接開發(fā)平臺成功后的CCSV3.3界面19精選ppt6.3.1CCS應用界面6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用

圖6-9CCS集成開發(fā)環(huán)境應用界面示例菜單欄工具欄工具欄工程視圖窗口源程序編輯窗口反匯編窗口存儲器窗口圖形顯示窗口輸出窗口CPU寄存器窗口狀態(tài)欄工作區(qū)窗口20精選ppt6.3.1CCS應用界面6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用(1)菜單欄:CCS的主菜單共有12項,CCS所有操作都可以在這些菜單中找到對應項。此外,CCS的所有窗口都含有一個關聯(lián)菜單,或稱快捷菜單,只要在各窗口中單擊鼠標右鍵就可以翻開關聯(lián)菜單。(2)工具欄:CCS的常用工具欄由一些常用命令組成,用戶可以直接單擊工具欄上的圖標按鈕調(diào)用相應的CCS命令。(3)工程視圖窗口:CCS的工程視圖窗口用來組織用戶的假設干程序并由此構成一個工程,用戶可以從工程列表中選擇需要編輯和調(diào)試的程序,可以在工程中添加文件。(4)源程序編輯窗口:在該窗口中,用戶既可以編輯源程序,又可以設置斷點和探針調(diào)試程序。21精選ppt6.3.1CCS應用界面6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用(5)反匯編窗口:用來幫助用戶查看機器指令,查找錯誤。(6)圖形顯示窗口:可以根據(jù)用戶需要,以圖形的方式顯示數(shù)據(jù)。(7)存儲器窗口:用來查看、編輯內(nèi)存單元。(8)CPU存放器窗口:用來查看、編輯CPU存放器。(9)輸出窗口:CCS信息輸出窗口,該窗口采用分窗口顯示方式,在窗口下邊包括窗口切換按鈕,用于顯示編譯、鏈接、DSP程序輸出等信息。(10)狀態(tài)欄:顯示CCS當前工作狀態(tài)信息,可以通過View菜單的StatusBar命令開關。22精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用CCS應用界面最上方的一行為CCS的菜單欄,它包含12個菜單項,每個菜單項的下拉菜單中又包含多個子菜單項,這些子菜單項分別用來執(zhí)行相應的CCS功能命令。1.File菜單File菜單提供了與文件操作相關的命令,CCS在使用過程中所要用到的文件類型有以下幾種:

(1)*.pjt:CCS定義的工程文件,管理DSP程序相關的所有文件和編譯鏈接選項。(2)*.c或*.cpp:C/C++語言編寫的源程序文件。(3)*.h:C/C++語言程序的頭文件,包括DSP/BIOSAPI模塊的頭文件。(4)*.asm:匯編語言編寫的源程序文件。23精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用(5)*.lib:庫文件,標準C運行支持函數(shù),編譯器公用函數(shù)、浮點運算運行函數(shù)、C輸入/輸出函數(shù)。(6)*d:鏈接命令文件,對DSP的存儲空間進行配置。(7)*.cdb:CCS的配置數(shù)據(jù)庫文件,是使用DSP/BIOSAPI模塊所必須的。(8)*.obj:由源文件經(jīng)編譯匯編后生成的目標文件,是COFF文件。(9)*.out:完成編譯、匯編、鏈接后所形成的可執(zhí)行的COFF文件,可加載到目標DSP〔實際目標板或仿真目標板Simulator〕的程序空間,在CCS監(jiān)控下進行調(diào)試和執(zhí)行。(10)*.wks:工作區(qū)文件,可用來保存CCS用戶界面的當前信息??梢酝ㄟ^File菜單的Workspace保存獲得或者調(diào)入。(11)*.map:匯編器生成的變量與符號存儲器地址分配文件。24精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用1.File菜單File菜單的具體下拉菜單內(nèi)容如圖6-10所示,除Open、Save、Print等常見命令外,其主要的菜單項命令如下:(1)New→SourceFile:新建一個源文件,包括擴展名為*.c、*.asm、*.h、*d、*.gel、*.map、*.inc等文件。(2)New→DSP/BIOSConfiguration:新建一個DSP/BIOS配置文件。

圖6-10File菜單

25精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用1.File菜單(3)LoadProgram:將DSP可執(zhí)行的COFF文件〔*.out〕中的數(shù)據(jù)和符號加載到目標DSP〔實際目標板或仿真目標板Simulator〕中。(4)ReloadProgram:重新加載可執(zhí)行的COFF文件。(5)LoadSymbols:當調(diào)試器不能或無需加載目標代碼〔如目標代碼存放于ROM中〕時,僅將符號信息加載到目標板。(6)LoadGEL:加載通用擴展語言文件到CCS中,在調(diào)用GEL函數(shù)之前,應將包含該函數(shù)的GEL文件參加CCS中,從而將GEL函數(shù)先調(diào)入內(nèi)存。當加載的文件修改后,應先卸掉該文件,再重新加載該文件,從而使修改生效。(7)Data→Load:將主機文件中的數(shù)據(jù)加載到目標DSP,可以指定存放的地址和數(shù)據(jù)長度。(CCS支持兩種文件格式:COFF文件、數(shù)據(jù)文件)(8)Data→Save:將目標DSP存儲器中的數(shù)據(jù)保存到主機上的文件中,該命令和Data→Load是一個相反的過程。26精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用1.File菜單(3)LoadProgram:將DSP可執(zhí)行的COFF文件〔*.out〕中的數(shù)據(jù)和符號加載到目標DSP〔實際目標板或仿真目標板Simulator〕中。(4)ReloadProgram:重新加載可執(zhí)行的COFF文件。(5)LoadSymbols:當調(diào)試器不能或無需加載目標代碼〔如目標代碼存放于ROM中〕時,僅將符號信息加載到目標板。(6)LoadGEL:加載通用擴展語言文件到CCS中,在調(diào)用GEL函數(shù)之前,應將包含該函數(shù)的GEL文件參加CCS中,從而將GEL函數(shù)先調(diào)入內(nèi)存。當加載的文件修改后,應先卸掉該文件,再重新加載該文件,從而使修改生效。(7)Data→Load:將主機文件中的數(shù)據(jù)加載到目標DSP,可以指定存放的地址和數(shù)據(jù)長度。(8)Data→Save:將目標DSP存儲器中的數(shù)據(jù)保存到主機上的文件中,該命令和Data→Load是一個相反的過程。27精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用2.Edit菜單Edit菜單提供的是與編輯相關的命令,其具體下拉菜單內(nèi)容如圖6-11所示,除了Undo、Redo、Cut、Copy、Delete、、Paste和Find等常用的文件編輯命令外,還有如下編輯命令:(1)FindinFiles:在多個文本文件中查找特定的字符串或表達式。(2)GoTo:快速定位并跳轉(zhuǎn)到源文件中的某一指定的行或書簽處。(3)Memory→Edit:編輯存儲器的某一存儲單元。圖6-11Edit菜單

28精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用2.Edit菜單(4)Memory→Copy:將某一存儲塊的數(shù)據(jù)〔利用起始地址和長度〕復制到另一存儲塊中。(5)Memory→Fill:將某一存儲塊全部填入一個固定的值。(6)Memory→PatchAsm:在不重新編譯程序的情況下,直接修改目標DSP中可執(zhí)行程序指定地址的匯編代碼。(7)Register:編輯指定存放器〔CPU存放器和外設存放器〕的值。由于Simulator不支持外設存放器,因此不能在Simulator下監(jiān)視和管理外設存放器的內(nèi)容。29精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用3.View菜單在View菜單中,可以選擇是否顯示各種工具欄和各種窗口,View菜單的的具體下拉菜單內(nèi)容如圖6-12所示。(1)View菜單中從StandardToobar命令至Plug-inToolbars命令,假設選擇某個命令,那么此項前端標記“〞,表示在CSS界面顯示該工具欄,否那么不顯示該工具欄。(2)Memory:顯示指定的存儲器中的內(nèi)容。(3)Disassemble:當加載DSP可執(zhí)行程序后,CCS將自動翻開一個反匯編窗口,顯示相應的反匯編指令和符號信息,可通過選擇該命令來顯示或關閉反匯編窗口。

圖6-12View菜單

30精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用3.View菜單(4)Registers→CPURegisters:顯示CPU存放器中的值,當CPU存放器中的值發(fā)生變化時,顯示窗口中對應項變成紅色。(5)Registers→PeripheralRegs:顯示外設存放器的值,當存放器中的值發(fā)生變化時,顯示窗口中對應項變成紅色。(6)Graph→Time/Frequency:翻開圖形顯示窗口在時域或頻域顯示信號波形。顯示緩沖的大小由DisplayDataSize定義。(7)Graph→Constellation:翻開圖形顯示窗口使用星座圖顯示信號波形。輸入信號被分解為X,Y兩個分量,采用笛卡兒坐標顯示波形。顯示的緩沖大小由ConstellationPoints定義。(8)Graph→EyeDiagram:翻開圖形顯示窗口使用眼圖來量化信號失真度。在指定的顯示范圍內(nèi),輸入信號被連續(xù)疊加并顯示為類似眼睛的形狀。31精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用3.View菜單(9)Graph→Image:翻開圖形顯示窗口使用Image圖顯示圖像數(shù)據(jù),測試圖像處理算法。圖像數(shù)據(jù)基于RGB或YUV數(shù)據(jù)流顯示。(10)WatchWindow:翻開觀察窗口通過該窗口檢查和編輯變量或C表達式,可以以不同格式顯示變量值,還可顯示數(shù)組、結構體變量或指針等包含多個元素的變量。(11)QuickWatch:翻開一個快速觀察窗口。(12)CallStack:檢查所調(diào)試程序的函數(shù)調(diào)用情況。此功能調(diào)試C程序時有效。(13)ExpressionList:所有的GEL函數(shù)和表達式都采用表達式求值程序來估值(14)MixedSourse/ASM:選擇該命令,CCS同時顯示C語言代碼及與之對應的匯編代碼。32精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用4.Project菜單Project菜單的具體下拉菜單內(nèi)容如圖6-13所示,主要命令如下:(1)New:建立新的工程。(2)Open:翻開已有的工程文件。(3)AddFilestoProject:CCS根據(jù)文件的擴展名將文件添加到工程的相應子目錄中。工程中支持C源文件〔*.c*〕、匯編源文件〔*.a*、*.s*〕、庫文件〔*.o*、*.lib*〕、頭文件〔*.h〕和鏈接命令文件〔*d〕。其中C和匯編源文件可以被編譯和鏈接,庫文件和鏈接命令文件只能被鏈接,CCS會自動將頭文件添加到工程中。圖6-13Project菜單33精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用4.Project菜單(4)CompileFile:對C語言或匯編語言源文件進行編譯。(5)Build:重新編譯和鏈接C語言或匯編語言源文件。對應那些沒有修改的源文件,CCS將不重新編譯。(6)RebuildAll:對工程中所有文件重新編譯,并鏈接生成DSP可執(zhí)行的COFF格式的文件。(7)BuildOptions:用來設定編譯器,匯編器和鏈接器的參數(shù)。(8)ScanAllFileDependencies:掃描當前活開工程中的關聯(lián)文件,并顯示在窗口中當前工程樹形列表中,例如C語言的頭文件是不能通過AddFilestoProject命令參加工程的,但可通過此命令顯示已參加工程。當編譯鏈接當前活開工程時,所有關聯(lián)文件會自動顯示在當前工程中。34精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用5.Debug菜單Debug菜單包含的是常用的調(diào)試命令,其具體下拉菜單內(nèi)容如圖6-14所示,主要調(diào)試命令如下.Breakpoints:設置/取消斷點命令。程序執(zhí)行到斷點時將停止運行。當程序停止運行時,可檢查程序的狀態(tài),查看和更改變量值,查看堆棧等。值得一提的是,CCS的V3.3版本與其之前的版本相比,在Debug菜單項里缺少了設置探針〔ProbePoints〕命令,這是因為在CCSV3.3版本中的斷點就包含了探針功能。探針設置后,允許更新觀察窗口并在算法的指定處〔設置探針處〕將PC文件數(shù)據(jù)讀至存儲器或?qū)⒋鎯ζ鲾?shù)據(jù)寫入PC文件中,此時應設置FileI/O屬性。圖6-14Debug菜單35精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用5.Debug菜單(2)StepInto:單步執(zhí)行。如果運行到調(diào)用函數(shù)處將跳入函數(shù)單步運行。(3)StepOver:執(zhí)行一條C指令或匯編指令。與StepInto不同的是,為保護處理器流水線,該指令后的假設干條延遲分支或調(diào)用將同時被執(zhí)行。如果運行到函數(shù)調(diào)用處將執(zhí)行完該函數(shù)而不跳入函數(shù)執(zhí)行,除非在函數(shù)內(nèi)部設置了斷點。(4)StepOut:如果程序運行在一個子程序中,執(zhí)行StepOut將使程序執(zhí)行完該子程序后回到調(diào)用該函數(shù)的地方。在C源程序模式下,根據(jù)標準運行C堆棧來推斷返回地址,否那么根據(jù)堆棧頂?shù)闹祦砬蟮谜{(diào)用函數(shù)的返回地址。(5)Run:從當前程序計數(shù)器〔PC〕執(zhí)行程序,碰到斷點時程序暫停執(zhí)行。(6)Halt:中止程序運行。(7)Animate:動畫運行程序。當碰到斷點時程序暫時停止運行,在更新未與任何探針相關聯(lián)的窗口后程序繼續(xù)執(zhí)行。該命令的作用是在每個斷點處顯示處理器的狀態(tài),可以在Option菜單的Customize下選擇AnimateSpeed來控制其速度。36精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用5.Debug菜單(8)RunFree:忽略所有斷點,從當前程序計數(shù)器〔PC〕處開始執(zhí)行程序。該命令在Simulator下無效。使用硬件仿真器進行仿真時,該命令將斷開與目標DSP的連接,因此可移走JTAG和MPSD電纜。在RunFree時還可對目標DSP硬件復位。(9)RuntoCursor:程序執(zhí)行到光標處,光標所在行必須為有效的代碼行。(10)Restart:將程序計數(shù)器〔PC〕的值恢復到程序的入口,但該命令不開始程序的執(zhí)行。(11)GoMain:在程序的main符號處設置一個臨時斷點。該命令在調(diào)試C程序時起作用。(12)MultipleOperation:設置單步執(zhí)行的次數(shù)。(13)ResetCPU:終止程序的執(zhí)行,復位DSP程序,初始化所有的存放器。37精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用6.GEL菜單CCS軟件在配置開發(fā)平臺時,常常會同時設置一個對應的GEL文件,在啟動CCS集成開發(fā)環(huán)境時該GEL文件自動加載。中選擇C5402為目標DSP時,GEL菜單中包括CPU_Reset和C5402_Init命令,如圖6-15所示。圖6-15GEL菜單(1)C5402_Configuration→CPU_Reset:復位目標DSP;禁止存儲器映射及初始化存放器。(2)C5402_Configuration→C5402_Init:復位目標DSP;使能存儲器映射;復位外設和初始化存放器。38精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用7.Option菜單Option菜單用于設置CCS集成開發(fā)環(huán)境的選項,包括字體、反匯編選項、存儲空間映射模式以及自定義CCS命令窗口等功能。Option菜單具體下拉菜單內(nèi)容如圖6-16所示,主要命令如下:圖6-16Option菜單(1)Font:設置CCS編輯、顯示環(huán)境的字體、字形、大小。(2)DisassemblyStyle:設置反匯編窗口顯示模式,包括反匯編成助記符或代數(shù)符號,直接尋址與間接尋址,用十進制、二進制或十六進制顯示。(3)MemoryMap:定義調(diào)試時哪些存儲空間可以訪問,哪些存儲空間不可以訪問,對于不同的DSP程序會由于對應CMD文件不同而發(fā)生變化。(4)Customize:翻開自定義對話框,通過該對話框可以對CCS默認的環(huán)境設置進行修改,要修改某類環(huán)境設置,按Tab鍵或鼠標單擊切換到該頁即可。39精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用8.Profile菜單剖析〔Profiling〕是CCS的一個重要功能,它可以在調(diào)試程序時,統(tǒng)計某一塊程序執(zhí)行所需要的CPU時鐘周期數(shù)、程序分支數(shù)、子程序被調(diào)用數(shù)和中斷發(fā)生次數(shù)等統(tǒng)計信息。(1)Clock→Enable:為了獲得指令的周期及其他事件的統(tǒng)計數(shù)據(jù),必須使能剖析時鐘〔ProfileClock〕。當剖析時鐘被禁止時,將只能計算到達每個剖析點的次數(shù),而不能計算統(tǒng)計數(shù)據(jù)。(2)Clock→View:在CCS主界面的右下腳翻開“Clock〞窗口,以顯示CLK變量的值。雙擊“Clock〞窗口內(nèi)的內(nèi)容可直接復位CLK變量〔使Clock=0〕。(3)Clock→Setup:時鐘設置。圖6-17Profiler菜單40精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用9.Tools菜單Tools菜單提供了常用的工具集,其具體下拉菜單內(nèi)容如圖6-19所示,常用工具如下:DataConverterSupport:用于快速地配置與DSP處理器相連接的數(shù)據(jù)轉(zhuǎn)換器件。C54xxMcBSP:用于觀察、編輯McBSP存放器內(nèi)容。C54xxDMA:用于觀察、編輯DMA存放器內(nèi)容。圖6-19Tools菜單41精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用9.Tools菜單C54xxSimulatorAnalysis:用于設置和監(jiān)視事件的發(fā)生,并為加載調(diào)試器使用的特定偽存放器集提供了一個透明的觀察手段,調(diào)試器使用這些偽存放器存取片內(nèi)分析模塊。CommandWindow:在該工具窗口中,可以用Debug命令進行程序調(diào)試。(6)PortConnect:用于對一個內(nèi)部存儲地址或端口地址讀寫文件數(shù)據(jù)。(7)PinConnect:用于仿真來自外部的中斷信號,僅用于Simulator。(8)RTDX:用于在不打斷程序運行的情況下實時分析DSP程序的運行。42精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用10.DSP/BIOS菜單DSP/BIOS菜單提供利用TI準實時操作系統(tǒng)DSP/BIOS開發(fā)DSP程序時進行調(diào)試分析的工具,使開發(fā)者能對程序進行實時跟蹤和分析,其具體下拉菜單內(nèi)容如圖6-20所示。RTAControlPanel:翻開實時分析工具控制面板,可以設置實時分析的相關參數(shù),使能各種跟蹤器。ExecutionGraph:調(diào)用執(zhí)行圖分析工具,翻開執(zhí)行圖窗口,該窗口顯示程序中各線程的運行情況。

圖6-20DSP/BIOS菜單43精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用10.DSP/BIOS菜單(3)StatisticsView:翻開統(tǒng)計視圖窗口,該窗口顯示統(tǒng)計模塊的實時數(shù)據(jù)。(4)MessageLog:翻開信息日志窗口,該窗口顯示日志模塊傳送的信息。(5)Kernel/ObjectView:翻開內(nèi)核/模塊窗口,該窗口顯示當前程序中各種BIOS模塊的實時配置、狀態(tài)等信息。(6)HostChannelControl:翻開主機信道控制窗口,該窗口顯示當前程序中定義的主機信道模塊的相關信息。(7)CPULoadGraph:翻開CPU負載圖窗口,該窗口顯示目標板CPU的正在處理的負載信息。44精選ppt6.3.2CCS菜單6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用11.Help菜單Help菜單即幫助菜單,用戶可以通過該菜單調(diào)用幫助文檔,便于解決一些在CCS中的常見問題。Help菜單的具體下拉菜單內(nèi)容如圖6-21所示。Contents:將翻開CCS隨軟件附帶的幫助,介紹了CCS集成開發(fā)環(huán)境的所有操作。(2)UseManuals:翻開一個網(wǎng)頁,頁面上包括TI公司與CCS相關的所有用戶手冊,在CCS安裝時需要選擇安裝用戶手冊。(3)Tutorial:翻開一個CHM文件,介紹CCS的特點和怎樣使用CCS集成開發(fā)環(huán)境,在該文件中包括CCS應用介紹的視頻動畫。(4)WebResources:可以選擇CCS幫助信息的Internet網(wǎng)址,通過Internet查看幫助信息。圖6-21Help菜單45精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用1.StandardToolbar〔標準工具欄〕新建一個文檔。翻開一個已存在的文檔。保存一個文檔,如尚未命名,那么翻開SaveAs對話框。剪切。復制。粘貼。取消上一次編輯操作?;謴蜕弦淮尉庉嫴僮?。查找下一個指定要搜索的字符串。查找上一個指定要搜索的字符串。使用光標下的字作為搜索文本。查找。搜索多個文件中指定的文本。查找/替換。打印。獲取特定對象的幫助。查找指定文本46精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用2.EditToolbar〔編輯工具欄〕將光標放在括號前面,再單擊此命令,將標記此括號內(nèi)所有文本。查找下一個括號對,并標記其中的文本。將光標放在括號前面,單擊此命令,光標跳至與之配對的括號處。將光標跳至下一個括號處〔左括號〕。將所選文本向左移一個Tab寬度。將所選文本向右移一個Tab寬度。在光標處定義或取消一個書簽。查找當前書簽處的下一個書簽。查找當前書簽處的上一個書簽。翻開書簽管理對話框,可以進行定位、編輯書簽等操作。設置是否啟用外部編輯器,當沒有設置外部編輯器時,該工具圖標灰顯,不能使用。47精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用3.ProjectToolbar〔工程工具欄〕編譯當前的源文件,但不進行鏈接。對所有修改正的文件重新編譯,再鏈接生成可執(zhí)行文件。全部重新編譯鏈接生成可執(zhí)行文件。停止編譯鏈接當前工程操作。在鼠標當前位置設置斷點。去除所有的斷點。選擇當前活動工程的配置形式選擇當前的活動工程48精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用4.DebugToolbar〔調(diào)試工具欄〕單步執(zhí)行。與Debug菜單中的StepInto命令一致。單步執(zhí)行,當遇到函數(shù)調(diào)用時跳過函數(shù)調(diào)用過程,程序暫停在函數(shù)調(diào)用的下一條源程序。與Debug菜單中的StepOver命令一致。跳出函數(shù)調(diào)用命令,執(zhí)行該命令,程序完成當前函數(shù)調(diào)用返回后暫停。與Debug菜單中的StepOut命令一致。如以下圖所示,調(diào)試工具欄由5個工具欄組成,從左到右分別為Context-SensitiveSteppingToolbar、ASM/SourceSteppingToolbar、TargetControlToolbar、DebugWindowToolbar、MultipleOperationsToolbar。每個工具欄提供假設干常用的調(diào)試命令。(1)Context-SensitiveSteppingToolbar各項說明如下:49精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用4.DebugToolbar〔調(diào)試工具欄〕在C或者匯編源代碼中單步執(zhí)行指令,然后暫停。在C或者匯編源代碼中單步執(zhí)行指令然后暫停,當遇到調(diào)用子程序指令或者函數(shù)調(diào)用時,那么在調(diào)用結束后暫停在下一條源代碼處。與Debug菜單中的StepOut命令一致。單步執(zhí)行命令,每次執(zhí)行一條匯編指令后暫停。在匯編模式下執(zhí)行單步運行指令,如果遇到調(diào)用子程序指令,那么調(diào)用子程序后暫停在下一條指令處。在源文件模式下,由于一條源代碼可能代表多條匯編指令,所以該命令可能不會立刻移動鼠標到下一條源代碼指令處。(2)ASM/SourceSteppingToolbar各項說明如下:50精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用4.DebugToolbar〔調(diào)試工具欄〕設置光標在源程序中的位置,單擊該工具按鈕后程序運行到光標所在位置暫停。設置程序指針〔PC〕到當前光標處。運行程序。從當前PC位置開始執(zhí)行程序,直到遇到斷點后停止。中止程序運行。動畫運行。這是一個在斷點支持下調(diào)試程序的命令。在執(zhí)行前先設置好各斷點,每按一次該按鈕,就會從當前程序位置執(zhí)行到下一個斷點處。連續(xù)按按鈕就可以實現(xiàn)動畫運行。(3)TargetControlToolbar各項說明如下:

51精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用4.DebugToolbar〔調(diào)試工具欄〕翻開CPU存放器窗口,觀察和修改CPU存放器和外設存放器值。翻開存儲器窗口,查看指定地址存儲器的值。與View菜單中Memory命令一致。翻開堆棧信息窗口,查看堆棧值。與View菜單中CallStack命令一致〔在C程序中使用〕。翻開程序相應的反匯編程序窗口。翻開斷點管理窗口。(4)DebugWindowToolbar各項說明如下:

52精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用5.GELToolbar〔GEL工具欄〕GEL工具欄提供了執(zhí)行GEL函數(shù)的一種快捷方法,如以下圖所示。在工具欄的左側文本輸入框中鍵入GEL函數(shù)名,再單擊右側的執(zhí)行按鈕即可執(zhí)行相應的函數(shù)。例如:在GEL工具欄中輸入CCS內(nèi)嵌GEL命令:GEL_Run()。單擊GEL工具欄中的運行按鈕。CCS將執(zhí)行GEL_Run()函數(shù),運行當前加載的可執(zhí)行程序。53精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用6.Plug-inToolbar〔Plug-in工具欄〕

(1)WatchWindowToolbar各項說明如下:如以下圖所示,Plug-in工具欄由2個工具欄組成,從左到右分別為WatchWindowToolbar、DSP/BIOSToolbar。翻開Watch窗口觀察或修改變量。翻開QuickWatch窗口觀察或修改變量,還可方便地將變量參加Watch窗口中。54精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用6.Plug-inToolbar〔Plug-in工具欄〕(2)DSP/BIOSToolbar各項說明如下:翻開信息日志,與DSP/BIOS菜單中的MessageLog命令一致。翻開統(tǒng)計觀察窗,與DSP/BIOS菜單中的StatisticsView命令一致。翻開主機通道控制,與DSP/BIOS菜單中的HostChannelControl命令一致。翻開RTA控制臺,與DSP/BIOS菜單中的RTAControlPanel命令一致。翻開執(zhí)行圖表,與DSP/BIOS菜單中的ExecutionGraph命令一致。翻開CPU負載圖表,與DSP/BIOS菜單中的CPULoadGraph命令一致。翻開內(nèi)核/目標觀察窗,與DSP/BIOS菜單中的Kernel/ObjectView命令一致。55精選ppt6.3.3CCS工具欄6.3CCS的應用界面第6章CCS集成開發(fā)環(huán)境及其使用4.DebugToolbar〔調(diào)試工具欄〕StepType:即左邊的文本顯示欄,選擇多步操作的類型。Iterations:即中間的文本顯示欄,選擇多步操作的步數(shù),即單次執(zhí)行的行數(shù)。Execute:執(zhí)行多步操作。(5)MultipleOperationsToolbar各項說明如下:

56精選ppt利用CCS集成開發(fā)環(huán)境開發(fā)應用程序的流程如以下圖所示。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用具體開發(fā)步驟如下:(1)軟件設計:主要包括程序模塊的劃分、算法和流程確實定以及執(zhí)行結果的預測等工作。(2)程序編輯和編譯鏈接:主要進行工程文件的創(chuàng)立,編寫頭文件、配置文件和源程序,使用匯編和C編譯器進行編譯,排除語法、變量定義等錯誤。(3)程序調(diào)試:利用CCS軟件的調(diào)試工具,采用單步執(zhí)行、設置斷點等手段對應用程序進行調(diào)試。(4)結果分析:利用CCS軟件提供的分析工具,對應用程序運行的結果進行分析,如圖形顯示數(shù)據(jù)或統(tǒng)計運行時間等。假設算法不能滿足要求,那么需重新進行軟件設計。57精選ppt6.4.1創(chuàng)立一個新工程CCS集成開發(fā)環(huán)境要求對應于每一個DSP開發(fā)應用工程,都要創(chuàng)立一個后綴為*.pjt的工程文件,以便于對開發(fā)應用工程的設計文檔進行管理。具體操作步驟如下。(1)雙擊桌面“CCStudiov3.3〞快捷方式圖標,運行CCS。(2)在CCS主界面的菜單欄中選擇Project→New,將彈出如下圖ProjectCreation對話框并按照右圖輸入。(3)單擊“Finish〞按鈕新建工程完畢,CCS就會產(chǎn)生一個工程文件volume.pjt,并存儲在“Location〞指定目錄下,它保存了工程的設置信息及工程中的文件引用情況。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用58精選ppt6.4.2創(chuàng)立源文件創(chuàng)立源文件具體操作步驟如下。(1)在CCS菜單欄中選擇File→New→SourceFile,或單擊標準工具欄上的創(chuàng)立文件按鈕,新建一個編輯窗口。(2)在新建的編輯窗口中輸入源代碼〔源程序〕,同時在編輯窗口標題的文件名后面出現(xiàn)星號“*〞,表示該源文件已被修改,存盤后星號將自動消失。(3)編寫完畢后,選擇File菜單中的Save或SaveAs命令,出現(xiàn)“保存為〞對話框。在該對話框中選擇保存文件的目錄,輸入文件名和擴展名。單擊“保存〞按鈕,完成文件的保存。要創(chuàng)立多個源文件,可重復以上步驟。重復以上3步操作,完成volume.c、vectors.asm、load.asm、volumed、volume.h和sine.dat六個文件的創(chuàng)立,并將所創(chuàng)立的源文件保存到工程目錄C:\CCStudio_v3.3\myprojects\volume下。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用59精選ppt6.4.3

在工程中添加源文件各源文件創(chuàng)立好之后,需要將這些文件及工程所用的的庫文件添加到工程中。具體操作步驟如下。(1)在CCS菜單欄中選擇Project→AddFilestoProject〔或在工程視圖窗口中右擊工程文件,在彈出的快捷菜單中選擇AddFilestoProject〕,翻開文件加載對話框。在文件加載對話框中,選擇工程目錄下的volume.c文件,單擊“翻開〞按鈕將volume.c添加到工程中。(2)用同樣方法將vectors.asm、volumed、load.asm添加到工程文件中。并將C:\CCStudio_v3.3\C5400\cgtools\lib下的rts.lib參加到工程文件中。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用60精選ppt6.4.3

在工程中添加源文件(3)在工程視圖窗口中雙擊所有“+〞號,可看到整個工程的結構,如下圖。(4)在以上的操作中,沒有將頭文件參加到工程中,CCS將在Build時自動查找所需的頭文件。當Build完成時,可在工程視圖窗口中觀察到生成程序所需的頭文件。如果需要從工程中去除一個文件,可將該文件選中,按<Delete>鍵,也可單擊右鍵,在彈出的菜單中選擇RemovefromProject,就可以將該文件從工程文件中移走。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用圖6-30工程視圖61精選ppt6.4.4

查看源代碼雙擊工程視圖窗口中的volume.c,將在右邊的源程序編輯窗口中看到文件源代碼?!泊a略〕從代碼可以看出,主程序顯示一條提示信息后,進入一個無限循環(huán),在此循環(huán)中,不斷調(diào)用dataIO()和processing()兩個函數(shù)。processing()將輸入buffer中的數(shù)與增益gain相乘,并將結果送給輸出buffer,它還調(diào)用匯編循環(huán)例程load.asm,根據(jù)傳給例程的參數(shù)processingLoad的值計算指令周期的時間。dataIO()是一個空函數(shù),它不執(zhí)行任何實質(zhì)操作。它沒有使用C代碼執(zhí)行I/O操作,而是通過CCS中的探針工具,從PC機文件中讀取數(shù)據(jù)到inp_buffer緩存區(qū)中,作為processing()的輸入?yún)?shù)。如果FILEIO未定義,此程序?qū)⒅荒茉谄聊簧巷@示“volumeexamplestarted〞信息。如果FILEIO已定義,程序還將在每次循環(huán)的開始顯示“beginprocessing〞信息。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用62精選ppt6.4.5

編譯與鏈接對該工程的所有文件進行編譯與鏈接,生成可執(zhí)行的目標程序〔*.out〕。編譯與鏈接在這里就是指編譯、匯編和鏈接3個步驟按順序聯(lián)合運行。在CCS下,執(zhí)行一個編譯命令“Compile〞就可以完成編譯和匯編兩個獨立步驟,每個文件被編譯匯編成COFF格式的擴展名為.obj的文件,但不進行鏈接,不生成.out文件。在CCS下,執(zhí)行一個編譯鏈接命令“Build〞就可以自動完成編譯、匯編和鏈接3個獨立步驟,生成.out可執(zhí)行文件。在菜單欄中選擇RebuildAll,CCS將重新對工程中所有文件進行編譯與鏈接,重新生成.out可執(zhí)行文件,該文件默認存放在工程目錄下的Debug目錄內(nèi),同時在CCS主界面下方的輸出窗口中將顯示進行編譯與鏈接的相關信息。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用63精選ppt6.4.5

編譯與鏈接

(a)編譯選項窗口(b)鏈接選項窗口圖6-31BuildOptions窗口6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用64精選ppt6.4.6

可執(zhí)行文件的加載與運行執(zhí)行編譯鏈接命令“Build〞后生成一個默認和工程名一致的可執(zhí)行文件后,就可以加載與運行可執(zhí)行文件了,具體操作步驟如下。(1)在CCS菜單欄中選擇File→LoadProgram,在彈出的對話框中,找到工程目錄下的Debug目錄,選擇編譯鏈接后生成的可執(zhí)行文件volume.out并翻開,將可執(zhí)行文件加載到目標DSP中。CCS將自動翻開一個反匯編窗口,顯示加載程序的反匯編指令,如下圖。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用65精選ppt6.4.6

可執(zhí)行文件的加載與運行6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用(2)可執(zhí)行文件加載成功后,在CCS主界面的菜單欄中選擇Debug→Run或單擊調(diào)試工具欄上的Run按鈕,讓程序全速執(zhí)行。在輸出窗口Stdout欄看到“volumeexamplestarted”信息,表明程序已經(jīng)運行。由于該程序是個無限循環(huán),可在菜單欄選擇Debug→Halt或單擊調(diào)試工具欄上的Halt按鈕,中止正在執(zhí)行的程序。此外,也可以利用CCS提供的多種單步運行操作調(diào)試每一條指令,并分析其執(zhí)行的結果,如StepInto、StepOver命令等,或利用自由運行RunFree命令、動畫執(zhí)行Animate命令等完成程序的運行。66精選ppt6.4.6

可執(zhí)行文件的加載與運行如果在調(diào)試工程中出現(xiàn)一些異常情況,需要中止或運行程序,這就需要復位。CCS提供了3種復位操作:(1)復位CPU,在菜單欄選擇Debug→ResetCPU,就可以停止運行程序,并初始化所有存放器的內(nèi)容,PC指向FF80h。(2)重新啟動,在菜單欄選擇Debug→Restart,可停止運行程序,并將PC恢復到當前載入程序的入口地址。(3)運行到主程序函數(shù)main()入口位置,選擇Debug→GoMain,在當前加載程序的函數(shù)main()處設置一個臨時斷點,然后開始執(zhí)行程序。當程序中止或遇到一個斷點時,臨時斷點被刪除。此命令為C程序員提供了一種快捷運行用戶程序的方法。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用67精選ppt6.4.7修改Build選項并更正語法錯誤由于volume.c程序文件中FILEIO沒有定義,因此在編譯時將忽略程序中的局部代碼,這樣鏈接生成的DSP程序中也不包括這局部代碼。下面通過更改程序選項來定義FILEIO,從而將這局部代碼生成到執(zhí)行程序中,并更正源代碼中存在的語法錯誤。具體操作步驟如下:(1)在CCS菜單欄中選擇Project→BuildOptions,彈出BuildOptions窗口。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用圖6-34在BuildOptions窗口定義68精選ppt6.4.7修改Build選項并更正語法錯誤(2)單擊Compiler欄,在Category列表中選擇Preprocessor,然后在右側的Pre-DefineSymbols(-d)域中輸入FILEIO,與_DEBUG用分號隔開,定義符號FILEIO。在定義FILEIO之后,C編譯器的編譯范圍將包括對應FILEIO預編譯局部的源代碼。單擊“確定〞按鈕保存選項設置。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用(3)在CCS主界面的菜單欄中選擇Project→RebuildAll或單擊工程工具欄上的按鈕,重新對工程中所有文件進行編譯鏈接。此時輸出窗口將顯示編譯錯誤信息。用戶可以在此窗口中翻閱錯誤、警告信息,并可通過雙擊紅色出錯信息提示,使光標跳轉(zhuǎn)到出錯的程序行。修改后存盤。再對工程重新編譯鏈接(Build)并生成新的volume.out文件。69精選ppt6.4.8使用斷點調(diào)試程序設置斷點是調(diào)試程序的必備工具。在調(diào)試程序的過程中,通過設置斷點,可以暫停程序的運行,以便于檢查、分析程序的運行情況,觀察和修改中間變量、存放器或存儲單元的數(shù)值。使用斷點調(diào)試程序的方法:(1)在CCS主界面的菜單欄中選擇File→ReloadProgram重新加載程序。(2)在菜單欄中選擇Debug→GoMain,此時源程序編輯窗口左側黃色箭頭顯示在main函數(shù)體開始處。將光標放在第64行“puts〔“beginprocessing〞〕;〞上,單擊工程工具欄上的按鈕將在當前光標所在行設置斷點,斷點設置完畢后該位置出現(xiàn)紅色圓點。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用70精選ppt6.4.8使用斷點調(diào)試程序6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用(3)在菜單欄中選擇Debug→Run或單擊調(diào)試工具欄上的按鈕或按<F5>鍵,運行程序。此時黃色箭頭將停在斷點處,輸出窗口Stdout欄顯示上一條信息“volumeexamplestarted”。在菜單欄中選擇Debug→StepOver,單步執(zhí)行程序,“beginprocessing”將出現(xiàn)在輸出窗口。(4)在菜單欄中選擇Debug→Animate,程序在斷點處略作停頓那么繼續(xù)運行。輸出窗口不斷出現(xiàn)“beginprocessing〞。執(zhí)行菜單命令Debug→Halt或單擊調(diào)試工具欄上的Halt按鈕或按<Shift+F5>,中止程序運行。(5)將光標放在斷點所在行,單擊工程工具欄上的按鈕,可消除此斷點。單擊工程工具欄上的按鈕,全部斷點都被清除。71精選ppt6.4.9使用Watch窗口觀察變量通過Watch窗口可以檢查和編輯變量或C表達式,可以以不同格式顯示變量值,還可顯示數(shù)組、結構體變量或指針等包含多個元素的變量。使用Watch窗口觀察變量的方法:6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用在CCS主界面的菜單欄中選擇View→WatchWindow或單擊按鈕,CCS主界面下方就會彈出一個變量觀察窗口。單擊變量觀查窗口左下方的Watchl按鈕,窗口中就會出現(xiàn)一藍色亮條。單擊此亮條左側的“Name”列,在空白處輸入變量名稱并回車,即可向窗口中添加一個觀察變量,回車或單擊該窗口空白處即可觀察該變量的值。變量觀察窗口設定之后,隨著程序的運行(單步、設置斷點運行),變量數(shù)值的變化都將自動地顯示在觀察窗口中。72精選ppt6.4.9使用Watch窗口觀察變量(3)在Watchl窗口中選擇一個變量,單擊“Radix〞列名,彈出如圖6-37所示下拉菜單,通過該菜單可以改變所選變量的數(shù)據(jù)顯示格式,如用十六進制〔hex〕顯示、十進制顯示〔dec〕等。(4)如果要刪除變量觀察窗口的某個變量,可用鼠標選中變量所在行,該行變成藍色亮條,再按<Delete>鍵即可。假設要刪除整個變量觀察窗口,只要右擊該窗口,從快捷菜單中選擇Close選項就可以了。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用圖6-37在Watch1窗口選擇數(shù)據(jù)顯示模式73精選ppt6.4.10

為I/O文件添加探針斷點CCS允許將數(shù)據(jù)導入或?qū)С瞿繕薉SP,這種方法便于在算法開發(fā)階段驗證程序的正確性。CCS提供的數(shù)據(jù)文件輸入/輸出功能是和探針斷點一起使用的。探針斷點〔簡稱探針〕可以從PC機的文件中存取數(shù)據(jù),它是開發(fā)算法的一個有用工具。其使用方法如下:(1)將PC機文件中數(shù)據(jù)傳送到目標DSP的緩沖區(qū)中,以供算法使用。(2)將目標DSP的緩沖區(qū)中的輸出數(shù)據(jù)傳送到PC機文件中以供分析。(3)用新的數(shù)據(jù)更新一個窗口,如由數(shù)據(jù)繪出的圖形窗口。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用74精選ppt6.4.10

為I/O文件添加探針斷點探針和斷點都會中斷程序的運行,但探針與斷點在以下幾個方面不同:(1)探針只是暫時中斷程序運行,當程序執(zhí)行到探針時會更新與之相連接的窗口,然后自動繼續(xù)執(zhí)行程序。(2)斷點中斷程序之后,將更新所有翻開的窗口,但只能用人工干預的方法恢復程序運行。(3)探針可與FILEI/O配合,在目標DSP與PC文件之間傳送數(shù)據(jù),斷點那么無此功能。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用75精選ppt6.4.10

為I/O文件添加探針斷點下面介紹如何使用探針將PC機文件數(shù)據(jù)傳送到目標DSP中作為測試數(shù)據(jù)使用。同時使用斷點在到達探針時自動更新所有翻開的窗口,這些窗口包括輸入和輸出數(shù)據(jù)的圖形窗口。CCSV3.3版本斷點就包含了探針功能,探針功能隱藏了,需要手動設置才能啟動探針。具體操作步驟如下:(1)在CCS主界面的菜單欄中選擇File→ReloadProgram,重新加載程序volume.out。(2)在菜單欄中選擇Debug→GoMain,將程序停在volume.c的main函數(shù)體開始處,編輯窗口顯示volume.c的源代碼,也可直接在工程視圖窗口中雙擊volume.c,在右邊的編輯窗口中將顯示volume.c源代碼。6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用76精選ppt6.4.10

為I/O文件添加探針斷點6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用(3)將光標放在第61行“dataIO()”上,單擊工程工具欄上的按鈕、將在當前光標所在行設置一個普通的斷點。下面就要設置該斷點使之成為一個探針。(4)在調(diào)試工具欄上單擊按鈕,在主界面的下方顯示BreakpointManager窗口,可以看到剛才設置的斷點就在這個BreakpointManager里面。在BreakpointManager窗口中,單擊Action列下的文本,彈出一下拉菜單,如圖6-39所示。在此下拉菜單中選擇ReadDatafromFile,彈出一個Parameter對話框。77精選ppt6.4.10

為I/O文件添加探針斷點6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用(5)在Parameter對話框中,單擊File欄的空白局部,在彈出的對話框中選擇工程目錄下的sine.dat文件并翻開;在WrapAround欄中單擊復選框,使該項變?yōu)門rue;在StareAddress欄中輸入inp_buffer;在Length欄中填入100,如圖6-40所示。圖6-39BreakpointManager窗口圖6-40Parameter對話框設置78精選ppt6.4.10

為I/O文件添加探針斷點6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用(6)Parameter對話框設置好之后,單擊OK按鈕,此時將彈出一個控制窗口,如圖6-41所示??梢栽谶\行程序時使用這個窗口來控制數(shù)據(jù)文件的開始、停止、前進、后退等操作。(7)I/O文件控制窗口的出現(xiàn)說明探針已經(jīng)與sine.dat文件相關聯(lián)。在源程序設置斷點處原來用紅色圓點表示的斷點圖標改為探針圖標,同時探針顯示在BreakpointManager窗口中,如圖6-42所示。至此為I/O文件成功添加了一個探針斷點。圖6-41I/O文件控制窗口圖6-42添加探針后的BreakpointManager窗口79精選ppt6.4.11利用圖形功能觀察數(shù)據(jù)6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用CCS提供很多方法將程序產(chǎn)生的數(shù)據(jù)以圖形顯示,包括時域/頻域波形顯示、星座圖、眼圖及圖像顯示。下面使用頻域/時域波形顯示功能觀察一個時域波形,具體操作步驟如下。(1)在菜單欄中選擇View→Graph→Time/Frequency,彈出GraphProperty對話框。(2)在GraphProperty對話框中,更改GraphTitle〔圖形標題〕、StartAddress〔起始地址〕、AcquisitionBufferSize〔采集緩沖區(qū)大小〕、DisplayDateSize〔顯示數(shù)據(jù)大小〕、DSPDateType〔DSP數(shù)據(jù)類型〕、Autoscale〔自動升縮屬性〕及MaximumY-value〔最大Y值〕,如圖6-43(a)所示。單擊OK按鈕,將出現(xiàn)一個顯示inp_buffer波形的圖形窗口。(3)在圖形窗口中單擊鼠標右鍵,從彈出菜單中選擇ClearDisplay,去除已有顯示波形。80精選ppt6.4.11利用圖形功能觀察數(shù)據(jù)6.4CCS集成開發(fā)環(huán)境的使用第6章CCS集成開發(fā)環(huán)境及其使用(4)再次選擇View→Graph→Time/Frequency。將GraphTitle修改為OutputBuffer,StartAddress修改為out_buffer,其他設置不變,如圖6-43(b)所示。單擊OK按鈕,出現(xiàn)一個顯示Out_buffer波形的圖形窗口,同樣在此圖形窗口中單擊鼠標右鍵,從彈出菜單中選ClearDisplay,去除已有顯示波形。圖6-43

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論