當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]在Matlab/Simulink環(huán)境下,用圖形化的方式設(shè)計(jì)DSP程序,可簡(jiǎn)化程序的設(shè)計(jì)。利用Embedded Targetfor T1 C2000 DSP工具包,設(shè)計(jì)DSP的ADC轉(zhuǎn)換程序;利用Simulink的數(shù)字信號(hào)處理工具包,設(shè)計(jì)FIR濾波囂進(jìn)行濾波處理;給出

在Matlab/Simulink環(huán)境下,用圖形化的方式設(shè)計(jì)DSP程序,可簡(jiǎn)化程序的設(shè)計(jì)。利用Embedded Targetfor T1 C2000 DSP工具包,設(shè)計(jì)DSP的ADC轉(zhuǎn)換程序;利用Simulink的數(shù)字信號(hào)處理工具包,設(shè)計(jì)FIR濾波囂進(jìn)行濾波處理;給出在修改生成的C語(yǔ)言程序時(shí)如何使DSP能正確運(yùn)行。設(shè)計(jì)的程序在TM$320LF2407A處理器上運(yùn)行正確。

 
        TMS320LF2407是TI公司主推的一種高性能、低價(jià)格DSP處理器,其處理速度達(dá)到30 MIPS,片內(nèi)處理集成RAM、Flash及定時(shí)器外,還集成了A/D轉(zhuǎn)換器、PWM控制器及CAN總線(xiàn)控制器等模塊,特別適合于電機(jī)、電源變換等實(shí)時(shí)要求高的控制系統(tǒng)。但是通常設(shè)計(jì)DSP程序的方法是,在DSP的集成開(kāi)發(fā)環(huán)境CCS中用C語(yǔ)言設(shè)計(jì),需要花費(fèi)大量的時(shí)間用來(lái)編寫(xiě)和輸入程序代碼。在Matlab中用圖形化的方式設(shè)計(jì)DSP的程序,能夠縮短產(chǎn)品的開(kāi)發(fā)時(shí)間。
 
       1 Embedded Target for T1 C2000 DSP介紹
   
 
       目前,新版本的Matlab軟件(Matlab7.O)已經(jīng)集成了TI公司C2000、C5000、C6000系列DSP的開(kāi)發(fā)工具包,可在Matlab/Simulink環(huán)境中用圖形化的方式進(jìn)行DSP的設(shè)計(jì)及仿真驗(yàn)證。并能將設(shè)計(jì)的圖形文件(.mdl)直接轉(zhuǎn)換成C語(yǔ)言程序。
 
       其中C2000系列的開(kāi)發(fā)工具是EmbeddedTarget for TI C2000 DSP。該工具包是TI公司與Math—Works公司共同開(kāi)發(fā)的產(chǎn)品,在Matlab/Simulink中嵌入了eXpressDSP工具箱,支持C24x及C28x系列的DSP處理器。在C24x系列DSP工具箱中,包含DSP處理器中的模/數(shù)轉(zhuǎn)換(ADC)、CAN發(fā)送及接收、PWM控制等模塊。用戶(hù)可以在Matlab中調(diào)用這些圖形化的功能模塊及Simulik中的其他模塊建立數(shù)字信號(hào)處理的模型,并可以對(duì)模型進(jìn)行仿真驗(yàn)證,然后生成TMS320C2000的C語(yǔ)言代碼及CCS的工程項(xiàng)目文件,在CCS中經(jīng)修改、編譯后就可以下載到DSP目標(biāo)板中運(yùn)行。

       2 ADC轉(zhuǎn)換及FIR濾波處理程序的設(shè)計(jì)
   
 
       以下是用Embedded target for TI C2000工具包設(shè)計(jì)ADC轉(zhuǎn)換及FIR濾波的步驟。
 
       步驟1,在新建的Simulink文件(.mdl)中,放入C2000 Target Preferences中的LF2407 eZdsp功能塊,用于參數(shù)的初始化設(shè)置。對(duì)話(huà)框設(shè)置如圖1所示。其中DSP定時(shí)器的時(shí)鐘比例因子(Timer Clock Prescaler),可以選擇I~128,則相應(yīng)的定時(shí)器采樣時(shí)間為:
        式中Timer Period是DSP的最大時(shí)鐘計(jì)數(shù)周期,LF2407是16位定點(diǎn)處理器,所以Timer Period數(shù)是216-1。圖1中設(shè)定的Timer Clock Prescaler數(shù)值是2,當(dāng)LF2407的工作頻率(CPU Clock Speed)為40MHz時(shí),由上式計(jì)算出的定數(shù)器的采樣時(shí)間是0.003 2 S。由于數(shù)據(jù)處理需要占用一定的運(yùn)行時(shí)間,所以要通過(guò)試驗(yàn)選擇適當(dāng)?shù)亩〞r(shí)器采樣時(shí)間。
        實(shí)現(xiàn)A/D轉(zhuǎn)換的功能塊是C24x ADC,其參數(shù)設(shè)置如圖2所示。A/D轉(zhuǎn)換通道可以選擇模塊A、B中的任一個(gè)通道,也可以選擇多個(gè)通道,A/D轉(zhuǎn)換的采樣時(shí)間設(shè)置為64/80 000
       步驟2,設(shè)計(jì)FIR濾波器。在Simulink的信號(hào)處理工具箱(Signal Processing Bloekset)中,將濾波器設(shè)計(jì)專(zhuān)用工具(FDAToo1)放入文件中,雙擊圖符,彈出圖3所示的濾波器設(shè)計(jì)對(duì)話(huà)框。
 
        在圖3中,選擇濾波器類(lèi)型為FIR低通濾波器,采樣頻率為6kHz,低通頻率為1kHz,截至頻率為2 kHz。先點(diǎn)擊對(duì)話(huà)框中的Design Filter,然后再點(diǎn)擊圖3中實(shí)現(xiàn)模型(Realize Model)圖標(biāo)進(jìn)入模型實(shí)現(xiàn)對(duì)話(huà)框,選擇Over-write generated“filter”block,則在設(shè)計(jì)框圖中生成一個(gè)名稱(chēng)為“Filter”的FIR濾波器的功能框圖,再將原先放入的FDATool圖標(biāo)刪除,將Filter連接到圖中,完成的設(shè)計(jì)如圖4所示。
        圖4中添加的增益模塊(Gain)是為了實(shí)現(xiàn)數(shù)據(jù)類(lèi)型的轉(zhuǎn)換。由于ADC轉(zhuǎn)換輸出的是16位整型數(shù)據(jù),而濾波器的輸入需要雙精度浮點(diǎn)數(shù)據(jù),因此Gain的數(shù)據(jù)類(lèi)型參數(shù)(Signal datatypes)設(shè)為float(“double”)。Gainl是將浮點(diǎn)數(shù)轉(zhuǎn)換為整型數(shù),因此數(shù)據(jù)類(lèi)型參數(shù)設(shè)為uint(16)。圖4中添加寄存器(C24x To Memory)模塊是為了使設(shè)計(jì)完整。在生成的C程序中,增益模塊Gainl的輸出是rth-Gainl,可被其他應(yīng)用程序調(diào)用。
 
        步驟3,將圖形文件生成C程序。在圖4中,運(yùn)行Simulation菜單下的Configuration Parameters項(xiàng),彈出配置對(duì)話(huà)框,選擇其中的Real-Time WorkShop項(xiàng),點(diǎn)擊Build按鈕,則將圖4的框圖轉(zhuǎn)化為T(mén)I C2000DSP的C語(yǔ)言代碼,并自動(dòng)調(diào)用CCS2軟件編譯運(yùn)行該程序。生成的C語(yǔ)言程序包括:中斷向量文件vectors.a(chǎn)sm、中斷服務(wù)程序MW_c24xx_csl.C、ADC轉(zhuǎn)換控制testADC.c、主程序TestADC_main.c等。
 
       3 修改及完善程序
   
 
        由Matlab直接生成的程序能夠?qū)崿F(xiàn)ADC轉(zhuǎn)換及數(shù)字濾波功能,但是由于程序中使用了許多缺省設(shè)置,在運(yùn)行過(guò)程中還存在一些問(wèn)題。用上述方法生成的程序中,中斷處理程序中只對(duì)定時(shí)器中斷進(jìn)行處理。當(dāng)由于干擾信號(hào)引起其他中斷時(shí),會(huì)造成DSP停機(jī),因此要在中斷向量定義無(wú)效中斷(_nothing),并在中斷響應(yīng)程序中添加中斷服務(wù)程序。修改后的程序中,斜體部分是修改的代碼。修改程序如下:
 
        中斷向量文件vectors.a(chǎn)sm:
 
        在ADC轉(zhuǎn)換處理程序中,每次ADC轉(zhuǎn)換結(jié)束后沒(méi)有復(fù)位DSP的排序器指針。雖然程序中設(shè)定的是只進(jìn)行一個(gè)通道的A/D轉(zhuǎn)換,但結(jié)果卻是16個(gè)通道的循環(huán)轉(zhuǎn)換,造成數(shù)字濾波器的輸人數(shù)據(jù)不正確,因此程序要作修改,在testadc_c中添加:
   
 
        TestADC_B.C24xADC=MMREGS[RESULT0]>>6;/*A/D轉(zhuǎn)換結(jié)果右移6位*/
    MMREGS[ArN2TRL2]=MMREGS[ADCTRL2]l0X4242;/*復(fù)位排序器指針并清除A/D中斷標(biāo)志*/
 
        如果需要通過(guò)t/o端口輸出結(jié)果,則可以在testadc_c中定義一個(gè)I/o(portl00),然后將FIR濾波后的數(shù)據(jù)rtb-Gainl輸出,程序如下:
       4 試驗(yàn)結(jié)果及結(jié)論
   
 
        由上述方法設(shè)計(jì)的程序在TMS3201LF2407A處理器上能正常運(yùn)行。試驗(yàn)結(jié)果證明,采用FIR濾波后,ADC轉(zhuǎn)換的抗干擾能力有了明顯的提高。用Matlab快速建立TI DSP模型及直接生成C語(yǔ)言程序的方法,簡(jiǎn)化了DSP軟件的開(kāi)發(fā)。在Embedded target for TI C2000工具箱中還包含其他工具,如PWM控制、CAN總線(xiàn)控制及通用I/O控制等。利用這些工具與Simulink中的其他工具相結(jié)合,能夠完成復(fù)雜功能的DSP程序設(shè)計(jì),并且只需進(jìn)行少量的修改,就可以實(shí)現(xiàn)功能正確的C語(yǔ)言程序的設(shè)計(jì),節(jié)省程序的編寫(xiě)及輸入時(shí)間。
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉