5CCS集成開發(fā)環(huán)境ppt課件_第1頁(yè)
5CCS集成開發(fā)環(huán)境ppt課件_第2頁(yè)
5CCS集成開發(fā)環(huán)境ppt課件_第3頁(yè)
5CCS集成開發(fā)環(huán)境ppt課件_第4頁(yè)
5CCS集成開發(fā)環(huán)境ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩43頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第5章:CCS集成開發(fā)環(huán)境1第5章 CCS集成開發(fā)環(huán)境CCS的簡(jiǎn)介 CCS是一種針對(duì)TMS320系列DSP的集成開發(fā)環(huán)境,采用Windows風(fēng)格界面,集編輯、編譯、鏈接、軟件仿真、硬件調(diào)試以及實(shí)時(shí)跟蹤等功能于一體,極大地方便了DSP芯片的開發(fā)與設(shè)計(jì),是目前運(yùn)用最為廣泛的DSP開發(fā)軟件之一。 CCS有兩種任務(wù)方式,即 軟件仿真器方式:可以脫離DSP芯片,在PC機(jī)上模擬DSP的指令集和任務(wù)機(jī)制,主要用于前期算法實(shí)現(xiàn)和調(diào)試。 硬件在線編程方式:可以實(shí)時(shí)運(yùn)轉(zhuǎn)在DSP芯片上,與硬件開發(fā)板相結(jié)合在線編程和調(diào)試運(yùn)用程序。 2第5章 DSP集成開發(fā)環(huán)境CCS CCS開發(fā)系統(tǒng)的表示圖。CCS的組成 主機(jī)Code

2、 Composer StudioCode Composer編輯器源文件.c.h.asm.cdb配置數(shù)據(jù)庫(kù)DSP/BIOS API代碼產(chǎn)生工具編譯器匯編器鏈接器OLE運(yùn)用運(yùn)用RTDXRTDX插件DSP/BIOS插件第3方的插件可執(zhí)行代碼Code Composer調(diào)試工具主機(jī)仿真支持目的系統(tǒng)DSP目的系統(tǒng)硬件DSP/BIOSDSP運(yùn)用程序JTAGRTDX配置工具cfgdcfg.s54cfg.h54 Code composer工程3 CCS的開發(fā)系統(tǒng)主要由以下組件構(gòu)成: TMS320C54x集成代碼產(chǎn)生工具; CCS集成開發(fā)環(huán)境IDE; DSP/BIOS實(shí)時(shí)內(nèi)核插件及其運(yùn)用程序接口API; 實(shí)時(shí)數(shù)據(jù)

3、交換的RTDX插件以及相應(yīng)的程序接口API; 由TI公司以外的第三方提供的各種運(yùn)用模塊插件。 4(1)代碼生成工具: C編譯器:用來將C/C+言語(yǔ)源程序自動(dòng)編譯為C54x的匯編言語(yǔ)源程序。 匯編器:用來將匯編言語(yǔ)源文件匯編成機(jī)器言語(yǔ)COFF目的文件。 鏈接器:將匯編生成的、可重新定位的COFF目的模塊組合成一個(gè)可執(zhí)行的COFF目的模塊。 文檔管理器:允許用戶將一組文件源文件或目的文件集中為一個(gè)文檔文件庫(kù)。 5代碼生成工具 助記符指令代數(shù)式指令翻譯器:用來將包含助記符指令的匯編言語(yǔ)源文件轉(zhuǎn)換成包含代數(shù)式指令的匯編言語(yǔ)源文件。 建庫(kù)適用程序:可以用來建立用戶本人運(yùn)用的、并用C/C+言語(yǔ)編寫的支持運(yùn)

4、轉(zhuǎn)的庫(kù)函數(shù)。 鏈接時(shí),用rts.src中的源文件代碼和rts.lib中的目的文件代碼提供規(guī)范的支持運(yùn)轉(zhuǎn)的庫(kù)函數(shù)。 十六進(jìn)制轉(zhuǎn)換程序:可以很方便地將COFF目的文件轉(zhuǎn)換成TI、Intel、Motorola等公司的目的文件格式。轉(zhuǎn)換后生成的文件可以下載到EPROM編程器中。 6(1)代碼生成工具: 絕對(duì)地址列表器:將鏈接后的目的文件作為輸入,生成.abs輸出文件。 交叉援用制表程序:利用目的文件生成一個(gè)交叉援用清單,列出鏈接的源文件中的符號(hào)以及它們的定義和援用情況。 72. C54x的開發(fā)工具(2)代碼調(diào)試工具: C/匯編言語(yǔ)源碼調(diào)試器:與軟件仿真器、評(píng)價(jià)模塊、軟件開發(fā)系統(tǒng)、軟件仿真器等配合運(yùn)用。

5、 軟件仿真器:是一種模擬DSP芯片各種功能并在非實(shí)時(shí)條件下進(jìn)展軟件調(diào)試的調(diào)試工具,它不需目的硬件支持,只需在計(jì)算機(jī)上運(yùn)轉(zhuǎn)。 初學(xué)者工具DSK:是TI公司提供應(yīng)初學(xué)者進(jìn)展DSP編程練習(xí)的一套廉價(jià)的實(shí)時(shí)軟件調(diào)試工具。 8(2)代碼調(diào)試工具: 軟件開發(fā)系統(tǒng)SWDS:是一塊PC插卡,可提供低本錢的評(píng)價(jià)和實(shí)時(shí)軟件開發(fā),還可用來進(jìn)展軟件調(diào)試,程序可在DSP芯片上實(shí)時(shí)運(yùn)轉(zhuǎn)。 可擴(kuò)展的開發(fā)系統(tǒng)仿真器(XDS510):可用來進(jìn)展系統(tǒng)級(jí)的集成調(diào)試,是進(jìn)展DSP芯片軟硬件開發(fā)的最正確工具。 評(píng)價(jià)模塊EVM板:是一種低本錢的開發(fā)板,可進(jìn)展DSP芯片評(píng)價(jià)、性能評(píng)價(jià)和有限的系統(tǒng)調(diào)試。 9 CCS安裝與啟動(dòng)CCS 程序圖標(biāo)

6、10111213145.2 CCS集成開發(fā)環(huán)境 一個(gè)最小的C運(yùn)用程序工程至少包含以下三個(gè)文件: 主程序main.c 鏈接命令文件d。 C運(yùn)轉(zhuǎn)庫(kù)rtsxxxx.lib。 假設(shè)程序要寫進(jìn)EPROM并在上電之后直接運(yùn)轉(zhuǎn),還必需包括Vectors.asm文件。155.2 CCS集成開發(fā)環(huán)境 運(yùn)用CCS開發(fā)運(yùn)用程序的普通步驟: 翻開或創(chuàng)建一個(gè)工程文件。 運(yùn)用CCS集成開發(fā)環(huán)境編輯各類文件,如頭文件 .h文件、命令文件d文件和源程序等。 將文件添加到工程工程中。 對(duì)工程進(jìn)展編譯。 運(yùn)轉(zhuǎn)程序,評(píng)價(jià)算法性能。16 CCS 文件類型*.mak :CCS定義的工程工程文件; *.c* :C源程序文件; *.asm

7、 :匯編言語(yǔ)源程序; *.h* :C言語(yǔ)頭文件包括API的頭文件; *.lib :靜態(tài)庫(kù)文件; *d :鏈接命令文件; *.obj :目的文件; *.out : DSP可執(zhí)行文件; *.wks : 任務(wù)空間文件; *.cdb :配置數(shù)據(jù)庫(kù)文件;17 CCS 窗口與工具條18 CCS 窗口與工具條19CCS的根本運(yùn)用CCS 工程工程管理記錄如下信息:源程序文件、頭文件;目的庫(kù);編譯、匯編、鏈接選項(xiàng);中斷向量文件vectors;命令文件command。它們?cè)诠こ涛募邪凑漳夸洏涞臉?gòu)造進(jìn)展組織,工程編譯鏈接后生成可執(zhí)行文件。20創(chuàng)建新工程創(chuàng)建新文件添加文件進(jìn)工程翻開工程封鎖工程21 CCS工程編譯工

8、程工程構(gòu)建(Build)編譯:僅完成對(duì)當(dāng)前源文件的編譯,不進(jìn)展鏈接右鍵點(diǎn)擊源文件關(guān)聯(lián)菜單(彈出菜單) Open Project Compile File;右鍵點(diǎn)擊源文件關(guān)聯(lián)菜單(彈出菜單) Compile File單擊工具條;添加性構(gòu)建只編譯修正正的源文件;Project Build 或單擊工具條或關(guān)聯(lián)菜單Build;全部重新構(gòu)建對(duì)一切工程文件進(jìn)展重新編譯和鏈接;Project Rebuild All 或單擊工具條;工程的編譯、鏈接與運(yùn)轉(zhuǎn)22 加載與運(yùn)轉(zhuǎn)程序工程的編譯、鏈接與運(yùn)轉(zhuǎn)加載程序運(yùn)轉(zhuǎn)程序設(shè)置更改程序選項(xiàng)23CCS工程工程的調(diào)試 調(diào)試是更正工程代碼的過程。CCS開發(fā)環(huán)境提供了異常豐富的調(diào)

9、試手段。當(dāng)完成工程構(gòu)建,生成目的文件后,就可以進(jìn)展程序的調(diào)試。普通的調(diào)試步驟為: 裝入構(gòu)建好的目的文件; 設(shè)置程序斷點(diǎn)、探測(cè)點(diǎn)和評(píng)價(jià)點(diǎn); 執(zhí)行程序; 程序停留在斷點(diǎn)處,查看存放器和內(nèi)存單元的數(shù)據(jù),并對(duì)中間數(shù)據(jù)進(jìn)展在線(或輸出)分析。 如有必要,修正源程序,反復(fù)調(diào)試過程,直至滿足預(yù)期目的。24 工程工程配置有兩種調(diào)試版本可供選擇:25 調(diào)試器窗口 調(diào)試器窗口可以運(yùn)用戶察看源代碼,在內(nèi)存和存放器中監(jiān)視變量,并可以在程序執(zhí)行的過程中察看和修正變量的值。工程視圖窗口源代碼窗口圖形窗口存儲(chǔ)器窗口反匯編窗口存放器窗口查看堆棧窗口26調(diào)試器窗口 在源代碼窗口中,不僅可以編寫程序,在調(diào)試程序時(shí),還可以從源代碼

10、窗口中得知要調(diào)試片斷的下一步執(zhí)行步驟,還可以察看變量的值。源代碼窗口 27 反匯編窗口主要用來顯示反匯編后的指令和調(diào)試所需的符號(hào)信息,包括反匯編指令、指令所存放的地址和相應(yīng)的操作碼機(jī)器碼。 當(dāng)程序裝入目的處置器或仿真器后,CCS會(huì)自動(dòng)翻開反匯編窗口。 反匯編窗口28 存儲(chǔ)器窗口可以直接顯示存儲(chǔ)器的內(nèi)容,以察看某個(gè)特定地址內(nèi)存單元數(shù)據(jù)。在調(diào)試程序的過程中,可直接察看存儲(chǔ)器的內(nèi)容來判別程序的正確性。 存儲(chǔ)器窗口的運(yùn)用 存儲(chǔ)器窗口稱號(hào)設(shè)置欲顯示的存儲(chǔ)器首地址選擇顯示的存儲(chǔ)器空間X的值29 為了便于DSP系統(tǒng)的開發(fā)調(diào)試,CCS開發(fā)環(huán)境為用戶提供了存放器窗口,用來察看目的處置器的CPU存放器和外設(shè)存放器

11、。另外,CPU存放器的內(nèi)容還可以經(jīng)過存放器編輯對(duì)話框進(jìn)展編輯修正。 存放器窗口的運(yùn)用 30程序調(diào)試的根本操作 在調(diào)試開發(fā)程序的過程中,有時(shí)經(jīng)常需求對(duì)處置器進(jìn)展復(fù)位操作。復(fù)位操作可經(jīng)過CCS開發(fā)環(huán)境實(shí)現(xiàn),它為用戶提供了一些命令可用來復(fù)位目的處置器。 31復(fù)位目的處置器 該命令是將目的處置器(DSP芯片)恢復(fù)到上電初始形狀,初始化一切存放器的內(nèi)容,并停頓當(dāng)前所執(zhí)行的用戶程序(1) 復(fù)位命令:DebugReset CPU (2)重新開場(chǎng)命令:Debug-Restart 該命令是將CCS的程序指針PC恢復(fù)到用戶程序的入口地址,但不能開場(chǎng)執(zhí)行程序。 該命令是將一個(gè)暫時(shí)斷點(diǎn)設(shè)置在用戶程序關(guān)鍵字“main處

12、,并從此處開場(chǎng)執(zhí)行用戶程序,此命令提供了一種快速運(yùn)轉(zhuǎn)用戶程序的方法。(3)進(jìn)入主程序命令:DebugGo Main 32 斷點(diǎn)是任何調(diào)試任務(wù)的一項(xiàng)根本內(nèi)容。 斷點(diǎn) DebugBreakpoints) 設(shè)置斷點(diǎn)時(shí)該當(dāng)防止以下兩種情形: 作用: 暫停程序的運(yùn)轉(zhuǎn),以便察看程序的形狀,檢查或修正變量,查看調(diào)用的堆棧、存儲(chǔ)器和存放器的內(nèi)容等。 將斷點(diǎn)設(shè)置在屬于分支或調(diào)用的語(yǔ)句上。 將斷點(diǎn)設(shè)置在塊反復(fù)操作的倒數(shù)第一或第二條語(yǔ)句上。 33 探測(cè)點(diǎn)是一種設(shè)置在源文件某條語(yǔ)句上的特殊斷點(diǎn),主要用來與一個(gè)外部文件的讀/寫相關(guān)聯(lián)。 探測(cè)點(diǎn) 當(dāng)用戶程序運(yùn)轉(zhuǎn)到探測(cè)點(diǎn)時(shí),自動(dòng)地從與該探測(cè)點(diǎn)銜接的外部文件中讀入數(shù)據(jù)或?qū)⒂?jì)算

13、的結(jié)果輸出給外部文件。完成數(shù)據(jù)的傳輸后,自動(dòng)恢復(fù)程序的運(yùn)轉(zhuǎn)。 34探測(cè)點(diǎn) 探測(cè)點(diǎn)在算法開發(fā)過程中是一個(gè)有用的工具,可用來與PC主機(jī)進(jìn)展數(shù)據(jù)通訊。利用探測(cè)點(diǎn)可以進(jìn)展以下任務(wù)。 從PC主機(jī)的文件中,傳輸輸入數(shù)據(jù)至目的系統(tǒng)的緩沖區(qū),作為算法開發(fā)的模擬數(shù)據(jù); 從目的系統(tǒng)的緩沖區(qū)中,傳輸輸出數(shù)據(jù)至PC主機(jī)的文件中,以便進(jìn)展數(shù)據(jù)分析; 更新窗口,例如圖形、數(shù)據(jù)等。 35實(shí)時(shí)運(yùn)轉(zhuǎn) 執(zhí)行程序 暫停執(zhí)行 動(dòng)畫執(zhí)行 自在運(yùn)轉(zhuǎn) CCS提供了四種實(shí)時(shí)運(yùn)轉(zhuǎn)程序的操作。 36 這種操作是從當(dāng)前程序指針(PC)所在位置開場(chǎng)執(zhí)行,直到遇到斷點(diǎn)后才停頓程序運(yùn)轉(zhuǎn)。這種運(yùn)轉(zhuǎn)方式可以使程序更接近于實(shí)踐的任務(wù)運(yùn)轉(zhuǎn)情況。 延續(xù)執(zhí)行執(zhí)行操

14、作,可實(shí)現(xiàn)程序的運(yùn)轉(zhuǎn)。(1)執(zhí)行程序:Debug-Run 用來暫停正在執(zhí)行的程序。 (2)暫停執(zhí)行:Debug-Halt 37 4實(shí)時(shí)運(yùn)轉(zhuǎn) 首先設(shè)置動(dòng)畫執(zhí)行速度:動(dòng)畫執(zhí)行速度定義了兩個(gè)斷點(diǎn)之間程序執(zhí)行所需的最短時(shí)間。在選項(xiàng)菜單“Option 中“Animate Speed(動(dòng)畫速度)框中設(shè)置(3)動(dòng)畫執(zhí)行DebugAnimate) 在執(zhí)行前先設(shè)置好各斷點(diǎn),并設(shè)置好動(dòng)畫運(yùn)轉(zhuǎn)速度。執(zhí)行操作命令后,就會(huì)從當(dāng)前程序位置執(zhí)行到下一個(gè)斷點(diǎn)處。在斷點(diǎn)處更新一切與“探測(cè)點(diǎn)未關(guān)聯(lián)的窗口后,程序繼續(xù)運(yùn)轉(zhuǎn)。 這是一個(gè)在斷點(diǎn)支持下快速調(diào)試程序的操作。38 4實(shí)時(shí)運(yùn)轉(zhuǎn) 此命令制止一切斷點(diǎn)。在Simulator中,該命令

15、無效。(4)自在運(yùn)動(dòng)DebugRun Free) 39單步執(zhí)行操作 單步執(zhí)行(快捷鍵F10) 該操作是每發(fā)出一條操作命令,執(zhí)行一條或一段程序。 在菜單“Debug中,選擇“Step Over(單步執(zhí)行)命令或單擊調(diào)試工具條上的“ 按鈕,可完成單步執(zhí)行操作。 對(duì)于普通程序,該命令僅執(zhí)行一條程序指令(一條匯編指令或C語(yǔ)句)。 假設(shè)所執(zhí)行的是一條程序調(diào)用語(yǔ)句,那么該命令是將所調(diào)用的程序作為一條指令來完成,不進(jìn)入其內(nèi)部調(diào)試。 CCS提供了4種單步執(zhí)行操作,在調(diào)試工具條中設(shè)有對(duì)應(yīng)的運(yùn)轉(zhuǎn)按鈕。 40 3.單步執(zhí)行 單步進(jìn)入(快捷鍵F8) 假設(shè)源程序采用匯編指令,那么該命令完成一條匯編指令的執(zhí)行; 假設(shè)采用

16、的是C程序,那么這一命令將執(zhí)行一條C指令,可進(jìn)入語(yǔ)句內(nèi)部(如子程序或軟件中斷等)調(diào)試。 選擇菜單“Debug中的“Step Into(單步進(jìn)入)命令或單擊調(diào)試工具條上的“ 按鈕,可完成單步進(jìn)入操作。41單步執(zhí)行操作 單步跳出(快捷鍵Shift+F7) 此命令可完成從子程序中跳出,即從當(dāng)前子程序的位置開場(chǎng),自動(dòng)執(zhí)行后續(xù)的程序,直到前往到調(diào)用該子程序的指令為止。 執(zhí)行菜單“Debug中的“Step Out(單步跳出)命令或單擊調(diào)試工具條上的“ 按鈕,即可完成單步跳出操作。 42單步執(zhí)行操作 執(zhí)行到當(dāng)前光標(biāo)處(快捷鍵Ctrl+F10) 在程序的調(diào)試過程中,此項(xiàng)操作可以提供方便的調(diào)試方法,只需在反匯編

17、窗口中設(shè)置一個(gè)光標(biāo)(單擊設(shè)定指令的所在行),就可以使程序從當(dāng)前位置開場(chǎng),不斷執(zhí)行到光標(biāo)所在處為止。 可以經(jīng)過選擇菜單“Debug中的“Run to Cursor(執(zhí)行到光標(biāo))命令或單擊調(diào)試工具條中的“ 按鈕來完成操作。 43 CCS開發(fā)環(huán)境提供了察看窗口(Watch Window),用于實(shí)時(shí)地察看和修正變量。 察看窗口的運(yùn)用 單擊此圖標(biāo),即可輸入察看變量 結(jié)合斷點(diǎn)及單步執(zhí)行等操作,即可察看變量值的變化44 在C言語(yǔ)編程中,直接添加變量:x,y等即可。在匯編言語(yǔ)中,有兩種方法: (int *)x 直接輸入*地址單元值,如:(*0 x0060)在察看窗口中添加察看變量方法: 45 CCS開發(fā)環(huán)境提供了多種強(qiáng)大功能的圖形顯示工具,可以將內(nèi)存中的數(shù)據(jù)以各種圖形的方式顯示給用戶,協(xié)助用戶直觀了解數(shù)據(jù)的意義。 圖形工具在數(shù)字信號(hào)處置中非常有用,可以從總體上分析處置前和處置后的數(shù)據(jù),以察看程序運(yùn)轉(zhuǎn)的效果。 圖形工具的運(yùn)用 46 CCS提供了四大類共九種圖形顯示方式。 圖形工具的運(yùn)用 圖 形 顯 示 類 型 描 述 內(nèi) 容 時(shí)頻圖 單曲線圖(Single Time) 對(duì)數(shù)據(jù)不加處理,直接繪制顯示緩沖區(qū)數(shù)據(jù)的幅度-時(shí)間曲線 雙曲線圖(Dual Time) 在一幅圖形中顯示兩條信號(hào)的幅度-時(shí)間曲線 FFT幅度(FFT Magnitude) 對(duì)顯示緩沖區(qū)數(shù)據(jù)進(jìn)行FFT變換,顯示幅度-頻率曲線 復(fù)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論