史明泉
[摘要]隨著計算機(jī)和信息技術(shù)的飛速發(fā)展,DSP技術(shù)應(yīng)運而生并得到迅速的發(fā)展。DSP課程在高校教學(xué)中就占有舉足輕重的地位。針對本?!禗SP技術(shù)與應(yīng)用》課程存在的現(xiàn)狀,提出了改革措施。包括學(xué)時安排,考核方式和實驗程序。其中,重點對實驗程序進(jìn)行闡述。經(jīng)過實踐,學(xué)生能夠很好的掌握這門課程,并且能舉一反三,取得了良好的教學(xué)效果。
[關(guān)鍵詞]DSP 課程改革 實驗程序
《DSP技術(shù)及應(yīng)用》是一門應(yīng)用型課程,具有內(nèi)容多、實踐性強(qiáng)等特點。如何在有限的教學(xué)時數(shù)內(nèi)高質(zhì)量地完成教學(xué)任務(wù),使學(xué)生掌握關(guān)鍵技術(shù)并具備一定的應(yīng)用能力是擺在每一位課程教師面前的重大課題。該課程在我校的開設(shè)時間并不長,如何抓住教學(xué)重點以及改進(jìn)教學(xué)方法,有效提高教學(xué)質(zhì)量并培養(yǎng)符合市場需求的合格人才,這使得對DSP課程進(jìn)行教學(xué)改革研究有重要的現(xiàn)實意義。
一、DSP課程的教學(xué)現(xiàn)狀
1.本?!禗SP技術(shù)與應(yīng)用》課程是為電子信息專業(yè)大三學(xué)生開設(shè)的,開課學(xué)時共40學(xué)時,其中實驗20學(xué)時。缺乏足夠的實踐很難達(dá)到理想的教學(xué)效果,無法充分利用有限的實踐機(jī)會加深理解專業(yè)理論。加之又是一門選修課,學(xué)生的學(xué)習(xí)興趣很低。
2.目前的考核方式為試題考試,很少體現(xiàn)學(xué)生的實際動手能力,學(xué)生所掌握的理論與實際相脫離較為嚴(yán)重,存在“高分低能”現(xiàn)象。
3.由于DSP技術(shù)是一門實用性很強(qiáng)的技術(shù),因此,實驗環(huán)節(jié)就顯得格外重要,實驗設(shè)備采用的是南京潤眾公司生產(chǎn)的HD8682型實驗箱,該實驗箱以TI公司生產(chǎn)的TMS320VC5402 DSP為核心,提供了很多功能模塊,包括A/D/A模塊、語音處理模塊、中斷模塊、IO模塊、信號產(chǎn)生模塊、溫度模塊、顯示模塊和電機(jī)模塊。廠家提供了完整的匯編程序。
匯編程序存在可移植性差,易讀性不強(qiáng)等缺點。因此,本科生學(xué)習(xí)匯編語言存在以下兩個問題:一、由于不同型號的芯片采用的匯編程序是不同的,學(xué)生費了很大勁學(xué)會的語言,若換了其他型號的芯片就要重新學(xué)習(xí),費時費力,而且對就業(yè)也沒有幫助,因為目前很多公司都采用C語言編程,匯編使用的場合較少。學(xué)生閱讀匯編程序很吃力,即使讀懂了,想要在此基礎(chǔ)上開發(fā)一些復(fù)雜的功能,簡直是天方夜談。
針對DSP課程教學(xué)的特點和現(xiàn)狀,國內(nèi)許多高校的專家學(xué)者提出了課程改革的思路,并進(jìn)行了有益的探索。在充分研究他人成果的基礎(chǔ)上,結(jié)合我校DSP課程的現(xiàn)有條件和實際情況,改善了我校該課程教學(xué)現(xiàn)狀,提高了教學(xué)效果。
二、教學(xué)改革的實施方案
1.大量壓縮理論學(xué)時,增加實驗學(xué)時,經(jīng)過前幾年的教學(xué)實踐,筆者認(rèn)為理論學(xué)時只需4學(xué)時,給學(xué)生講解DSP的發(fā)展歷史和特點足矣。其余為實驗學(xué)時,每次在做實驗之前,講解相關(guān)內(nèi)容。比如,各種片內(nèi)外設(shè)都可以分散到每節(jié)實驗課中。
2.考核方式可以采用開卷形式,主要考核學(xué)生對知識的理解和掌握情況,而不是考一些“死記硬背”的內(nèi)容。同時,可以增加實踐能力考核內(nèi)容,出一些設(shè)計性的題目。
3.實驗程序采用采用C語言和匯編語言的混合編程。用C語言開發(fā)DSP程序不僅使DSP開發(fā)的速度大大加快,而且DSP程序的可讀性和可移植性也顯著提高,程序修改也非常方便。那么,是不是可以完全摒棄匯編程序?答案是否定的。C語言編寫的代碼效率很低,而匯編程序的優(yōu)點是程序執(zhí)行速度很快,某些對速度要求較高的場合,還是要用匯編程序。例如,用C語言編寫的中斷程序雖然可讀性很好,但由于在進(jìn)入中斷程序后,有時不管程序中是否用到,中斷程序都將寄存器進(jìn)行保護(hù),從而降低了中斷程序的效率。如果中斷程序被頻繁調(diào)用,那么即使是一條指令也是至關(guān)重要的。此外,用C語言實現(xiàn)DSP芯片內(nèi)的某些功能模塊控制也不如匯編程序方便,有些甚至無法用C語言實現(xiàn)。
綜上所述,實驗課應(yīng)采用C語言和匯編語言的混合編程。下面簡單介紹混合編程的方法,主要有以下三點:一、獨立編寫C程序和匯編程序。分開編譯或匯編,形成各自的目標(biāo)代碼模塊,然后用鏈接器將C模塊和匯編模塊鏈接起來,例如,F(xiàn)FT程序一般采用匯編語言編寫,對FFT程序用匯編器進(jìn)行匯編,形成目標(biāo)代碼模塊,與C模塊鏈接就可以在C程序中調(diào)用FFT程序。二、直接在C語言程序的相應(yīng)位置嵌入?yún)R編語句。三、對C語言程序進(jìn)行編譯,生成相應(yīng)的匯編程序,然后對匯編程序進(jìn)行手工優(yōu)化和修改。其中,第三種方法必須嚴(yán)格遵循不破壞C環(huán)境的原則,這種方法需要程序員對C編譯器及C環(huán)境有充分的理解,所以,在本次教改中沒有采用此種方法。
修改后的實驗程序,由于采用了C語言和匯編語言的混合編程,可讀性較強(qiáng),結(jié)合硬件連接圖以及相應(yīng)的理論知識,學(xué)生掌握的較好。下面列舉幾個典型的例子來說明教改前后的效果。
中斷模塊的匯編例程實現(xiàn)的功能是按下某個按鍵,只能在實驗箱屏幕上顯示出相應(yīng)的中斷類型。修改后的程序能夠通過各種外部中斷靈活的控制箱子上的其他模塊。
IO模塊上面有8個LED燈,匯編例程只能使其不斷的交替閃爍,修改后的混合編程可自由控制這8個LED燈的亮滅方式。
采用混合編程后,學(xué)生在實驗課上掌握了基本的源程序后,可以舉一反三,改變一些簡單的語句,就能實現(xiàn)各種不同的功能,通過改寫程序,學(xué)生既鍛煉了編程能力,又很好的掌握了當(dāng)節(jié)課所講授的知識。比如,通過在四個數(shù)碼管上顯示不同的內(nèi)容,學(xué)生能掌握5402 DSP的多通道緩沖串行口和定時器的使用方法。
三、 結(jié)束語
隨著DSP應(yīng)用領(lǐng)域的日益廣泛,高校急需加強(qiáng)對DSP人才的培養(yǎng),而DSP課程教學(xué)現(xiàn)狀需要進(jìn)行教學(xué)改革;DSP課程的教學(xué)改革要從本校的實際情況與教學(xué)現(xiàn)狀出發(fā),重點要改革實驗課程,利用現(xiàn)有的儀器設(shè)備,提高學(xué)生的實際動手能力,只有這樣才能提高教學(xué)效果,培養(yǎng)出符合市場需要的DSP應(yīng)用人才。
[參考文獻(xiàn)]
[1]張雄偉.DSP芯片的原理與開發(fā)應(yīng)用[M].北京:電子工業(yè)出版社,2009
[2]喬瑞萍,崔濤,張芳娟.TMS320C54X DSP原理及應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2005
[3]彭啟琮,管慶等.DSP集成開發(fā)環(huán)境:CCS及DSP/BIOS的原理與應(yīng)用[M].北京:電子工業(yè)出版社,2004
(作者單位:內(nèi)蒙古科技大學(xué)信息工程學(xué)院 內(nèi)蒙古包頭)