Code Composer Studio入門
一.實驗目的
1.掌握Code Composer Studio 2.21的安裝和配置步驟過程。
2.了解DSP開發(fā)系統(tǒng)和計算機與目標系統(tǒng)的連接方法。
3.了解Code Composer Studio 2.21軟件的操作環(huán)境和基本功能,了解TMS320C28xx軟件
開發(fā)過程。
(1)學習創(chuàng)建工程和管理工程的方法。
(2)了解基本的編譯和調試功能。
(3)學習使用觀察窗口。
(4)了解圖形功能的使用。
二.實驗原理
*開發(fā)TMS320C2xxx應用系統(tǒng)一般需要以下幾個調試工具來完成:
-軟件集成開發(fā)環(huán)境(Code Composer Studio 2.21):完成系統(tǒng)的軟件開發(fā),進行軟件和硬件
仿真調試。它也是硬件調試的輔助手段。
-開發(fā)系統(tǒng)(ICETEK 5100 USB或ICETEK 5100 PP):實現(xiàn)硬件仿真調試時與硬件系統(tǒng)的通
信,控制和讀取硬件系統(tǒng)的狀態(tài)和數(shù)據(jù)。
-評估模塊(ICETEK F2812-A等):提供軟件運行和調試的平臺和用戶系統(tǒng)開發(fā)的參照。
*Code Composer Studio 2.21主要完成系統(tǒng)的軟件開發(fā)和調試。它提供一整套的程序編制、維護、
編譯、調試環(huán)境,能將匯編語言和C語言程序編譯連接生成COFF (公共目標文件)格式的可執(zhí)
行文件,并能將程序下載到目標DSP上運行調試。
*用戶系統(tǒng)的軟件部分可以由CCS建立的工程文件進行管理,一般包含以下幾種文件:
-源程序文件:C語言或匯編語言文件(*.ASM 或*.C)
-頭文件(*.H)
-命令文件(*.CMD)
-庫文件(*.LIB,*.OBJ)
三.實驗設備
1.PC兼容機一臺;操作系統(tǒng)為Windows2000 (或WindowsNT、Windows98、WindowsXP,
以下假定操作系統(tǒng)為Windows2000)。Windows操作系統(tǒng)的內核如果是NT的應安裝相應
的補丁程序(如:Windows2000為Service Pack3,WindowsXP為Service Pack1)。
2.ICETEK-F2812-EDU實驗箱一臺。
3.USB連接電纜一條(如使用PP型仿真器換用并口電纜一條)。
四.實驗內容與步驟
1.實驗準備
由于本實驗采用軟仿真模式,無需打開實驗箱電源。
2.設置Code Composer Studio 2.21在軟仿真(Simulator)方式下運行
請參看本書第一部分、四、1。
3.啟動Code Composer Studio 2.21
請參看本書第一部分、五、2。
選擇菜單Debug→Reset CPU。
成功地啟動了CCS后會出現(xiàn)如下窗口:
圖1-1 CCS軟件界面介紹
4.創(chuàng)建工程
(1)創(chuàng)建新的工程文件
選擇菜單“Project”的“New…”項。
如下圖,按編號順序操作建立volume.pjt工程文件:
展開主窗口左側工程管理窗口中“Projects”下新建立的“volume.pjt”,其各項均為空。
(2)在工程文件中添加程序文件:
選擇菜單“Project”的“Add Files to Project…”項;在“Add Files to Project”對話框
中選擇文件目錄為C:\ICETEK-F2812-A-EDUlab\DSP281x_examples\Lab0101-UseCCS,改變
文件類型為“C Source Files(*.c;*.ccc)”,選擇顯示出來的文件“volum.c”;重復上述各步驟,
添加C:\ICETEK-F2812-A-EDUlab\DSP281x_examples\Lab0101-UseCCS\volume.cmd文件到
volum工程中;添加C:\ti\c2000\cgtools\lib \rts2800_ml.lib。
(3)編譯連接工程:
選擇菜單“Project”的“Rebuild All”項,或單擊工具條中的按鈕;注意編譯過
程中CCS主窗口下部“Build”提示窗中顯示編譯信息,最后將給出錯誤和警告的統(tǒng)計數(shù)。
5.編輯修改工程中的文件
(1)查看工程文件
展開CCS主窗口左側工程管理窗中的工程各分支,可以看到“volume.pjt”工程中包含
“volume.h”、“rts2800.lib”、“volume.c”和“volume.cmd”文件,其中第一個為程序在編譯
時根據(jù)程序中的“include”語句自動加入的。
(2)查看源文件
*雙擊工程管理窗中的“volume.c”文件,可以查看程序內容。可以看到,用標準C語
言編制的程序,大致分成幾個功能塊:
-頭文件。描述標準庫程序的調用規(guī)則和用戶自定義數(shù)據(jù)、函數(shù)頭、數(shù)據(jù)類型等。具體
包含哪一個頭文件,需要根據(jù)程序中使用了哪些函數(shù)或數(shù)據(jù)而定。比如:如果程序中使
用了printf函數(shù),它是個標準C提供的輸入/輸出庫函數(shù),選中“printf”關鍵字,按Shift+F1
會啟動關于此關鍵字的幫助,在幫助信息中可發(fā)現(xiàn)其頭函數(shù)為stdio.h,那么在此部分程
序中需要增加一條語句:#include “stdio.h”。
-工作變量定義。定義全局變量。
-子程序調用規(guī)則。這部分描述用戶編制的子程序的調用規(guī)則。也可以寫到用戶自己編
制的.h文件中去。
-主程序。即main()函數(shù)。它可分為兩部分:變量定義和初始化部分、主循環(huán)部分。主
循環(huán)部分完成程序的主要功能。
-用戶自定義函數(shù)。
這個程序是一個音頻信號采集、處理輸出的程序。程序的主循環(huán)中調用自定義的函數(shù)
read_signals來獲得音頻數(shù)據(jù)并存入輸入緩存inp_buffer數(shù)組;再調用自定義函數(shù)write_buffer
來處理音頻數(shù)據(jù)并存入輸出緩存;output_signals將輸出緩沖區(qū)的數(shù)據(jù)送輸出設備;最后調
用標準C的顯示信息的函數(shù)printf顯示進度提示信息。整個系統(tǒng)可以完成將輸入的音頻數(shù)據(jù)
擴大volume倍后再輸出的功能。
read_signal子程序中首先應有從外接AD 設備獲得音頻數(shù)據(jù)的程序設計,但此例中由于
未采用實際AD 設備,就未寫相應控制程序。此例打算用讀文件的方式獲得數(shù)據(jù),模擬代替
實際的AD 輸入信號數(shù)據(jù)。
write_buffer 子程序中首先將輸入緩沖區(qū)的數(shù)據(jù)進行放大處理,即乘以系數(shù)volume,然
后放入輸出緩沖區(qū)。
output_signals函數(shù)完成將處理后的設備輸出的功能,由于此例未具體操作硬件輸出設
備,所以函數(shù)中未寫具體操作語句。
*雙擊工程管理窗中的“volume.h”文件,打開此文件顯示,可以看到其中有主程序中
要用到的一些宏定義如“BUF_SIZE”等。
*volume.cmd 文件定義程序所放置的位置,此例中描述了ICETEK-F2812-A評估板的存
儲器資源,指定了程序和數(shù)據(jù)在內存中的位置。
(3)編輯修改源文件及編譯程序
打開“volume.c”,找到“main()”主函數(shù),將語句“input=inp_buffer;”最后的分號去掉,
這樣程序中就出現(xiàn)了一個語法錯誤;重新編譯連接工程,可以發(fā)現(xiàn)編譯信息窗口出現(xiàn)發(fā)現(xiàn)錯
誤的提示;雙擊紅色錯誤提示,CCS自動轉到程序中出錯的地方;將語句修改正確(將語句
末尾的分號加上);重新編譯;注意:重新編譯時修改過的文件被CCS自動保存。
(4)修改工程文件的設置
圖1-4 修改工程文件
通過以上設置操作,重新編譯后,程序中的用戶堆棧的尺寸被設置成1024個字。
6.基本調試功能
(1)下載程序:執(zhí)行FileàLoad Program ,在隨后打開的對話框中選擇剛建立的文件:
C:\ICETEK-F2812-A-EDUlab\DSP281x_examples\Lab0101-UseCCS\Debug\volume.out
(2)設置軟件調試斷點:在項目瀏覽窗口中,雙擊volume.c激活這個文件,移動光標到main()
行上,單擊鼠標右鍵選擇Toggle Breakpoint 或按F9 設置斷點(另外,雙擊此行左邊的灰
色控制條也可以設置或刪除斷點標記)。
(3)利用斷點調試程序:選擇DebugàRun或按F5 運行程序,程序會自動停在main()函數(shù)上。
①按F10 執(zhí)行到write_buffer()函數(shù)。
②再按F8,程序將轉到write_buffer 函數(shù)中運行。
③此時,為了返回主函數(shù),按shift-F7 完成write_buffer 函數(shù)的執(zhí)行。
④再次執(zhí)行到write_buffer 一行,按F10 執(zhí)行程序,對比與F8 執(zhí)行的不同。
7.使用觀察窗口
(1)執(zhí)行ViewàWatch Window打開觀察窗口。
(2)在volume.c中,用鼠標雙擊一個變量(比如num),再單擊鼠標右鍵,選擇“Quick Watch”,
CCS將打開Quick Watch窗口并顯示選中的變量。
(3)在volume.c中,選中變量num,單擊鼠標右鍵,選擇“Add to Watch Window”,CCS將
把變量添加到觀察窗口并顯示選中的變量值。
(4)在觀察窗口中雙擊變量,則彈出修改變量窗口。此時,可以在這個窗口中改變變量的值。
(5)把str 變量加到觀察窗口中,點擊變量左邊的”+”,觀察窗口可以展開結構變量,并且顯示結
構變量的每個元素的值。
(6)把str 變量加到觀察窗口中;執(zhí)行程序進入write_buffer 函數(shù),此時num變量超出了作用
范圍,可以利用Call Stack窗口察看在其他函數(shù)中的變量:
①選擇菜單ViewàCall Stack打開堆棧窗口。
②雙擊堆棧窗口的main()選項,此時可以察看num變量的值。
8.文件輸入/輸出
Code Composer Studio的Probe(探針)斷點允許用戶在指定位置提取/注入數(shù)據(jù)。Probe
斷點可以設置在程序的任何位置,.當程序運行到Probe斷點時,與Probe斷點相關的事件將
會被觸發(fā),當事件結束后,程序會繼續(xù)執(zhí)行。在這一節(jié)里,Probe斷點觸發(fā)的事件是:從PC
機存儲的數(shù)據(jù)文件中的一段數(shù)據(jù)加載到DSP的緩沖區(qū)中。
圖1-5 設置file io文件
(1)在真實的系統(tǒng)中,read_signals函數(shù)用于讀取A/D模塊的數(shù)據(jù)并放到DSP緩沖區(qū)中。在
這里,代替A/D 模塊完成這個工作的是Probe斷點。當執(zhí)行到函數(shù)read_signals時,Probe
斷點完成這個工作。
①在程序行read_signals(input);上單擊鼠標右鍵選擇“Toggle breakpoint”,設置軟件斷點。
②再在同一行上單擊鼠標右鍵,選擇“Toggle Probe Point”,設置Probe斷點。
(2)執(zhí)行圖1-5 的操作
此時,已經配置好了Probe斷點和與之關聯(lián)的事件.進一步的結果在下面實驗中顯示。
9.圖形功能簡介
下面我們使用CCS的圖形功能檢驗上一節(jié)的結果。首先進行下面設置操作:
圖1-6 設置圖形顯示功能
-在彈出的圖形窗口中單擊鼠標右鍵,選擇“Clear Display”。
-按F12 運行程序.觀察input 窗口的內容。
10.選擇菜單File→workspace→save workspacs As…,輸入文件名SY.wks 。
11.退出CCS 。
五.預習要求
1.熟悉DSP系統(tǒng)的軟硬件安裝連接方法。
2.要求熟悉Code Composer Studio 2.21的安裝和配置步驟過程及其操作環(huán)境和基本功能。
六.注意事項
在執(zhí)行C語言的程序時,為了快速的運行到主函數(shù)調試自己的代碼,可以使用
DebugàGo main命令,本實驗中的使用的是較為繁瑣的一種方法。
七..思考題
通過對工程文件“volume”的編譯、執(zhí)行后得到結果的圖形顯示?
八.實驗報告要求
1.硬軟件的安裝及創(chuàng)建查看文件的掌握與體會?
2.基本調試功能的掌握與心得。
評論
查看更多