• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      關(guān)于CCS在DSP平臺(tái)上的應(yīng)用和研究*

      2012-01-29 20:32:48黃文蓓沈毓磬
      中國(guó)教育技術(shù)裝備 2012年24期
      關(guān)鍵詞:源代碼斷點(diǎn)代碼

      黃文蓓 沈毓磬

      上海工程技術(shù)大學(xué)城市軌道交通學(xué)院 上海 201620

      DSP特指數(shù)字信號(hào)處理器芯片。數(shù)字信號(hào)處理(Digital Signal Processing,簡(jiǎn)稱DSP)是一門涉及許多學(xué)科而又廣泛應(yīng)用于許多領(lǐng)域的新興學(xué)科。20世紀(jì)60年代以來(lái),隨著計(jì)算機(jī)和信息技術(shù)的飛速發(fā)展,數(shù)字信號(hào)處理技術(shù)應(yīng)運(yùn)而生并得到迅速發(fā)展[1]。本文采用Code Composer Studio軟件,利用硬件DSP電路,實(shí)現(xiàn)CCS在DSP中輸出所需的波形。

      1 CCS軟件在DSP中的發(fā)展?fàn)顩r

      1.1 CCS集成開發(fā)環(huán)境簡(jiǎn)介

      CCS(Code Composer Studio)是一個(gè)完整的DSP集成開發(fā)環(huán)境,是目前最優(yōu)秀、最流行的DSP開發(fā)軟件之一?,F(xiàn)在TI所有的DSP都可以使用該軟件工具進(jìn)行開發(fā),只是只有′C5000和′C6000的CCS中才提供DSP/BIOS功能,而在′C2000和′C3X的中是沒有DSP/BIOS功能的。所以有時(shí)也將用于′C2000和′C3X開發(fā)的集成開發(fā)環(huán)境稱為CC(Code Composer),以示區(qū)別。CCS支持軟仿真器、各種型號(hào)硬仿真器、各種DSK和EVM板,需要向相應(yīng)的生產(chǎn)廠家索取驅(qū)動(dòng)程序,然后在CCS中安裝即可[2]。

      1.2 CCS的功能

      目前CCS的功能日益強(qiáng)大,可擁有以下幾個(gè)方面。

      1)集成可視化代碼編輯界面,可直接編寫C、匯編、.H文件、.cmd文件等。

      2)集成代碼生成工具,包括匯編器、優(yōu)化C編譯器、連接器等。

      3)基本調(diào)試工具,如裝入執(zhí)行代碼(.OUT文件),查看寄存器窗口、存儲(chǔ)器窗口、反匯編窗口、變量窗口等,支持C源代碼級(jí)調(diào)試。

      4)支持多DSP調(diào)試。

      5)斷點(diǎn)工具,包括硬件斷點(diǎn)、數(shù)據(jù)空間讀/寫斷點(diǎn)、條件斷點(diǎn)(使用GEL編寫表達(dá)式)等。

      6)探針工具(probe points),可用于算法仿真,數(shù)據(jù)監(jiān)視等。

      7)剖析工具(profile points),可用于評(píng)估代碼執(zhí)行的時(shí)鐘數(shù)。

      8)數(shù)據(jù)的圖形顯示工具,可繪制時(shí)域/頻域波形、眼圖、星座圖、圖像等。

      9)支持RTDX(Real Time Data exchange)技術(shù),利用該技術(shù)可在不中斷目標(biāo)系統(tǒng)運(yùn)行的情況下,實(shí)現(xiàn)DSP與其他應(yīng)用程序(OLE)實(shí)現(xiàn)數(shù)據(jù)交換。

      10)提供DSP/BIOS工具,利用該工具可增強(qiáng)對(duì)代碼的實(shí)時(shí)分析能力,如分析代碼執(zhí)行的效率,

      11)調(diào)度程序執(zhí)行的優(yōu)先級(jí),方便管理或使用系統(tǒng)資源(代碼/數(shù)據(jù)占用空間,中斷服務(wù)程序的調(diào)用,定時(shí)器使用等),從而減小開發(fā)人員對(duì)硬件資源熟悉程度的依賴性[3]。

      1.3 CCS各個(gè)版本比較

      目前TI公司發(fā)布的CCS軟件版本中常用的有CCS2.2、CCS3.1以及CCS3.3。CCS2.2是一個(gè)分立版本的開發(fā)環(huán)境,所以體積較小,使用起來(lái)也比較穩(wěn)定,但是使用C語(yǔ)言編程時(shí)代碼優(yōu)化的效率比較低。而CCS3.1和CCS3.3是集成版本,所以體積比較大,雖然在C語(yǔ)言編程時(shí),代碼優(yōu)化方面和CCS2.2相比,做了很多改進(jìn),但是系統(tǒng)穩(wěn)定性稍顯欠缺。CCS3.3是比較新的版本,所以目前使用的人最多。TI不斷推出新版本的CCS[4]。

      2 CCS在DSP中的應(yīng)用

      2.1 編譯代碼時(shí)的常用操作

      為了能夠更好地理解CCS所工作的內(nèi)容,需要簡(jiǎn)單理解一下預(yù)處理、編譯和鏈接這3個(gè)概念。預(yù)處理時(shí)對(duì)源代碼進(jìn)行編譯前的處理,源代碼就是之前在CCS3.3環(huán)境中所編寫的C語(yǔ)言代碼或者匯編語(yǔ)言代碼,語(yǔ)句前為“#”的語(yǔ)句就是在預(yù)處理期間進(jìn)行作用的。編譯是將原文件處理成目標(biāo)文件的過程,而目標(biāo)文件并不是下載到DSP中能夠運(yùn)行的可執(zhí)行代碼,它通常包含有許多位置代碼,例如包含有某些函數(shù)在可執(zhí)行文件中的位置。鏈接則是將許多目標(biāo)文件合并處理成可執(zhí)行文件??梢姡瑢?duì)源文件僅編譯的話是不能產(chǎn)生可執(zhí)行文件的,只有通過編譯和鏈接,才能最終生成可執(zhí)行文件。

      編譯代碼的通常操作[5]:1)創(chuàng)建新的工程;2)打開已存在的工程;3)新建一個(gè)文件;4)向工程添加文件;5)移除工程中的文件;6)給工程添加庫(kù)文件;7)查找變量;8)替換變量;9)查看源碼

      2.2 調(diào)試時(shí)常用的操作

      通常,程序在通過編譯之后,還不能說明程序已經(jīng)開發(fā)成功。編譯通過只能說明編寫的程序已經(jīng)沒有語(yǔ)法錯(cuò)誤,而程序是不是已經(jīng)實(shí)現(xiàn)了所需要的功能,則還不清楚。這就需要對(duì)程序慢慢進(jìn)行調(diào)試來(lái)進(jìn)行功能驗(yàn)證。在CCS3.3下,調(diào)試程序通常需要掌握以下幾點(diǎn)操作。

      1)添加、移除斷點(diǎn)。調(diào)式時(shí)經(jīng)常要看看某一行代碼是否被執(zhí)行,或者執(zhí)行前后某些變量的狀態(tài)變化情況,此時(shí)就需要在這一行代碼前設(shè)置一個(gè)斷點(diǎn)。

      2)單步調(diào)試。在調(diào)試程序時(shí)經(jīng)常會(huì)遇到一些需要逐行運(yùn)行、逐行分析的情況,只有這樣才能定位到問題的所在,這時(shí)候就需要使用單步調(diào)試的功能。

      3)使用watch window觀察變量。一個(gè)程序通常會(huì)有許多變量,而常常又希望在調(diào)試的時(shí)候能夠觀察到某個(gè)或者某些變量的值,以便于判斷程序運(yùn)行是否正常,是否符合既定的要求,這時(shí)就需要使用watch window的功能來(lái)查看變量的值。

      4)保存并導(dǎo)出變量的值。

      5)觀察指定存儲(chǔ)空間內(nèi)的數(shù)據(jù)。

      6)統(tǒng)計(jì)代碼的運(yùn)行時(shí)間。

      7)在CCS中顯示圖形(這一步是相對(duì)其他步驟比較復(fù)雜的操作)。

      通過CCS在DSP上完成代碼調(diào)試,最后輸出想要的波形。

      3 結(jié)語(yǔ)

      在初步學(xué)習(xí)完CCS的一個(gè)大概系統(tǒng)后,總結(jié)幾點(diǎn)在進(jìn)行CCS在DSP開發(fā)應(yīng)用中的學(xué)習(xí)需要的注意事項(xiàng)。第一是要學(xué)會(huì)總結(jié)在操作實(shí)驗(yàn)過程中的得與失,吸取以前的教訓(xùn)和經(jīng)驗(yàn),才能在以后的操作中打下扎實(shí)的基礎(chǔ)。第二要掌握相當(dāng)多的相關(guān)知識(shí),比如編程和對(duì)時(shí)序的認(rèn)識(shí),這樣才能在實(shí)際操作中熟練快速地進(jìn)行實(shí)驗(yàn)。通過學(xué)習(xí)CCS的操作,可以在DSP上熟練運(yùn)用,完成代碼調(diào)試后便能夠在顯示屏上顯示需要的波形。

      [1]顧衛(wèi)剛.手把手教你學(xué)DSP:基于TMS320X281x[M].北京:北京航空航天大學(xué)出版社,2011.

      [2]DSP實(shí)驗(yàn)室.軟件開發(fā)工具CCS的使用[M].北京:北京交通大學(xué)電子學(xué)院,2005.

      [3]李亞,羅仁澤,羅朗,等.“DSP芯片原理及應(yīng)用”教學(xué)方法探索[J].電氣電子教學(xué)學(xué)報(bào),2008(6):91-92.

      [4]裘云.DSP技術(shù)及其前景[J].微計(jì)算機(jī)信息,2000(5):3-4.

      [5]杜開初.單板機(jī)的斷點(diǎn)設(shè)置過程[J].龍巖師專學(xué)報(bào),1989(2):63-66.

      猜你喜歡
      源代碼斷點(diǎn)代碼
      人工智能下復(fù)雜軟件源代碼缺陷精準(zhǔn)校正
      基于TXL的源代碼插樁技術(shù)研究
      一類無(wú)限可能問題的解法
      創(chuàng)世代碼
      創(chuàng)世代碼
      創(chuàng)世代碼
      創(chuàng)世代碼
      軟件源代碼非公知性司法鑒定方法探析
      主導(dǎo)電回路發(fā)生斷點(diǎn)故障判斷方法探討
      揭秘龍湖產(chǎn)品“源代碼”
      和政县| 隆安县| 太和县| 临西县| 浠水县| 远安县| 华蓥市| 兴和县| 绥江县| 科尔| 得荣县| 娱乐| 名山县| 合川市| 秦安县| 宁陕县| 和田县| 勃利县| 岳阳市| 星子县| 西和县| 景洪市| 根河市| 武清区| 河池市| 临猗县| 视频| 措美县| 榆树市| 汽车| 新野县| 平和县| 册亨县| 隆安县| 凭祥市| 乌鲁木齐县| 禄丰县| 拉孜县| 东山县| 新竹县| 隆昌县|