基于CCS和DSK5402板的音頻采集和回放程序設(shè)計
圖5示出了CCS配置的主程序源文件(.c或.asm)的設(shè)計流程
圖5 主程序設(shè)計流程
當(dāng)然,要使用CCS在DSK板上運行某個程序,光有源文件的主程序(.c或.asm)是不夠的,還需要配置中斷向量表(.asm)和命令鏈接文件(.cmd),在一些特殊的場合還需要配置其他的文件。主程序當(dāng)然是整個程序的核心,它的作用涉及數(shù)據(jù)的讀/寫和具體的處理過程以及中斷的設(shè)置、寄存器的配置等;中斷向量表主要作用是告知程序中斷跳轉(zhuǎn)的位置,顯而易見,如果在主程序中已經(jīng)設(shè)置,則不再需要配置中斷向量表;命令鏈接文件(.cmd)的主要作用是分配存儲空間,比如存儲器的第0頁分配作程序空間,第1頁分配作數(shù)據(jù)空間,以及各個段將要放在哪兒(如.text段放在數(shù)據(jù)空間),這個文件對每個工程來說都是必須的。
4.3 程序設(shè)計
從上面的程序流程中,我們可以看到,要完成預(yù)定的功能,首先要初始化DSP的串行口和AIC,然后的工作就是開辟緩存區(qū)以便將輸入的數(shù)據(jù)存儲起來等待進一步處理如濾波、DA轉(zhuǎn)換等。限于篇幅,下面只列出了本文要實現(xiàn)音頻回放功能的幾個關(guān)鍵程序段。
一.主程序:
在程序中要定義諸多的變量以及所需要包含的頭文件和庫文件在此略。
5.CCS運行結(jié)果
待程序設(shè)計好之后,將其添加到一個新建的工程里編輯、調(diào)試,直到編譯、構(gòu)建通過并生成.out文件,然后裝載.out文件。這樣就可以運行了。為了驗證程序是否已正常運行,可以在麥克風(fēng)/揚聲器接口分別接上話筒和小音箱,在對著話筒說話時,將可以從小音箱中聽到。同時,也可以在CCS中打開觀察窗口、寄存器窗口以及圖形顯示窗口。下圖為音頻輸入時某一時刻的圖形顯示和寄存器的值。
圖6. CCS運行窗口
事實上,在程序調(diào)試過程中經(jīng)常會遇到這樣或那樣的問題,一般的方法是采用單步執(zhí)行的方式來調(diào)試。而且,由于DSP本身的特點,從一開始就需要認(rèn)識到開發(fā)過程的復(fù)雜性。
評論