




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
DSP原理與應(yīng)用課程設(shè)計報告書課題名稱基于TMS320VC5509DSP的語音信號的FIR濾波器姓學(xué)名號專業(yè)指導(dǎo)教師及其它教育機構(gòu)的學(xué)位或?qū)W歷而使用過的材料。對本研究提供過幫助和做出過貢獻(xiàn)的個人或集體,均已在文中作了明確的說明并表示了謝意。作者簽名:指導(dǎo)教師簽名:日日期:期:本人完全了解大學(xué)關(guān)于收集、保存、使用畢業(yè)設(shè)計(論文)的規(guī)定,即:按照學(xué)校要求提交畢業(yè)設(shè)計(論文)的印刷本和電子版本;學(xué)校有權(quán)保存畢業(yè)設(shè)計(論文)的印刷本和電子版,并提供目錄檢索與閱覽服務(wù);學(xué)校可以采用影印、縮印、數(shù)字化或其它復(fù)制或全部內(nèi)容。作者簽名:日期:學(xué)位論文原創(chuàng)性聲明本人鄭重聲明:所呈交的論文是本人在導(dǎo)師的指導(dǎo)下獨立進(jìn)行研全意識到本聲明的法律后果由本人承擔(dān)。作者簽名:日期:年月日學(xué)位論文版權(quán)使用授權(quán)書本學(xué)位論文作者完全了解學(xué)校有關(guān)保留、使用學(xué)位論文的規(guī)定,同意學(xué)校保留并向國家有關(guān)部門或機構(gòu)送交論文的復(fù)印件和電子版,允許論文被查閱和借閱。本人授權(quán)大學(xué)可以將本學(xué)位印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。涉密論文按學(xué)校規(guī)定處理。作者簽名:導(dǎo)師簽名:日期:年日期:年月月日日指導(dǎo)教師評閱書□優(yōu)2、論文的觀念是否有新意?設(shè)計是否有創(chuàng)意?□優(yōu)□良□中□及格□良□中□及格□不及格□不及格□不及格(蓋章)(簽名)單位:年月日評閱教師評閱書□優(yōu)2、論文的觀念是否有新意?設(shè)計是否有創(chuàng)意?□優(yōu)□良□中□及格□不及格(蓋章)年月日教研室(或答辯小組)及教學(xué)系意見教研室(或答辯小組)評價:一、答辯過程1、畢業(yè)論文(設(shè)計)的基本要點和見解的敘述情況□優(yōu)2、論文的觀念是否有新意?設(shè)計是否有創(chuàng)意?□優(yōu)□良□中□及格3、論文(設(shè)計說明書)所體現(xiàn)的整體水平□中□不及格(簽名)年月日教學(xué)系意見:(簽名)年月日基于TMS320VC5509DSP的語音信號的FIR濾波器設(shè)計一、實踐的目的和要求1.熟悉ICETEK-VC5509-A板上語音codec芯片TLV320AIC23的設(shè)計和程序控制原理。2.熟悉FIR濾波器工作原理及編程。3.掌握使用TI的算法庫dsplib提高程序運行效率的方法。4.學(xué)習(xí)使用CCS圖形觀察窗口觀察和分析語音波形及其頻譜。二、實踐原理:在數(shù)字信號處理中,濾波占有極其重要的地位。數(shù)字濾波是語音處理、圖像處理、模式識別、頻譜分析等應(yīng)用中的基本處理算法。用DSP芯片實現(xiàn)數(shù)字濾波除了具有穩(wěn)定性好、精確度高、不受環(huán)境影響等優(yōu)點外,還具有靈活性好等特點。VC5509引腳圖過渡帶寬度=阻帶邊緣頻寬-通帶邊緣頻率采樣頻率:f1=通帶邊緣頻率+(過渡帶寬度)/2理想低通濾波器脈沖響應(yīng):h1[n]=sin(nΩ1)/n/π根據(jù)要求,選擇布萊克曼窗,窗函數(shù)長度為:N=5.98fs/過渡帶寬度選擇N=30w[n]=0.42+0.5cos(2πn/30)+0.8cos(4πn/24)濾波器脈沖響應(yīng)為:h[n]=h1[n]w[n]|n|<=12h[n]=0|n|>12根據(jù)上面計算,各式算出h[n],然后將脈沖響應(yīng)值移位為因果序列。完成的濾波器的差分方程為:y[n]=-0.001x[n-2]-0.002x[n-3]-0.002x[n-4]+0.01x[n-5]-0.009x[n-6]-0.018x[n-7]-0.049x[n-8]-0.02x[n-9]+0.11x[n-10]+0.28x[n-11]+0.64x[n-12]+0.28x[n-13]-0.11x[n-14]-0.02x[n-15]+0.049x[n-16]-0.018x[n-17]-0.009x[n-18]+0.01[n-19]-0.002x[n-20]-0.002x[n-21]+0.001x[n-22]初始化:EMIFCPU頻率、AIC23調(diào)用AIC23_Mixer子程序處理音頻數(shù)據(jù)輸入/輸出等待McBSP通道0傳送結(jié)束保存于左聲道緩沖區(qū)調(diào)用fir2計算FIR濾波輸出原聲音送左聲道,濾波結(jié)果送右聲道,輸出到McBSP0三、實踐步驟1.首先自己參照指導(dǎo)書完《語音信號的FIR濾波實驗》,認(rèn)真閱讀實驗中的源FIR讀取,濾波后信號的輸出,語音編解碼器的設(shè)置(AIC23),重點理解FIR濾波器的實現(xiàn)(循環(huán)尋找的實現(xiàn))2.語音采集的采集與分析(1)錄制語音,并命名為“(2MATLAB如下:fs=22050;[x,fs,Nbits]=wavread('C:\DocumentsandSettings\Owner\桌面\e');t=0:1/22050:(length(x)-1)/22050;sound(x,fs);figure(1)%對加載的語音信號進(jìn)行回放plot(x)%做原始語音信號的時域圖形title('原始語音信號');xlabel('timen');ylabel('fuzhin');figure(2)freqz(x)%繪制原始語音信號的頻率響應(yīng)圖title('頻率響應(yīng)圖')n=length(x);y1=fft(x,n);y2=fftshift(y1);f=0:fs/n:fs*(n-1)/n;figure(3)%求出語音信號的長度%傅里葉變換%對頻譜圖進(jìn)行平移%得出頻點subplot(2,1,1);plot(abs(y2))%做原始語音信號的FFT頻譜圖title('原始語音信號FFT頻譜')subplot(2,1,2);plot(f,abs(y2));%繪制原始語音信號的頻譜圖title('原始語音信號頻譜')加噪聲k=1:1:n;c1=100000*sin(2*pi*5000*k);%定義k值,噪聲與原始語音長度一致%噪聲信號的函數(shù)z=x'+c1;%噪音與原始信號疊加wavwrite(z,8000,16,'C:\DocumentsandSettings\Owner\桌面\e2');得到含噪語音s=length(c1);y3=fft(z,s);y4=fftshift(y3);f=0:fs/s:fs*(s-1)/s;figure(4)%對疊加信號進(jìn)行頻譜變換%對頻譜圖平移%得出頻點plot(z)%做原始語音信號的時域圖形title('加噪語音信號');xlabel('timen');ylabel('fuzhin');figure(5)plot(f,abs(y4));axis([080000100]);%繪出加噪語音頻譜圖title('含噪語音信號的頻譜');figure(6)subplot(2,1,1);plot(f,abs(y2))%做原始語音信號的FFT頻譜圖title('原始語音信號FFT頻譜')subplot(2,1,2);plot(f,abs(y4))%做加噪語音信號的FFT頻譜圖title('加噪語音信號頻譜')原始語音信號FFT頻譜含噪語音信號頻譜頻率響應(yīng)圖3.設(shè)計一定參數(shù)的濾波器使用fir2函數(shù)設(shè)計一個31階低通濾波器,信號的采樣頻率為8000Hz2900Hz3300Hz。在函數(shù)中,其截止頻率均用歸一化頻率表示。歸一化頻率的計算方法:f=實際頻率/(采樣頻率/2),則將截止頻率歸一化后的截止頻率值為0.7250.825用fir2函數(shù)實現(xiàn)的格式:f=[00.7250.8251;m=[1100;b=fir2(,,b=-0.0005,0.0004,0.0003,-0.0018,0.0039,-0.0045,0.0009,0.0086,-0.0210,0.0279,-0.0173,-0.0191,0.0793,-0.1486,0.2043,0.7744,0.2043,-0.1486,0.0793,-0.0191,-0.0173,0.0279,-0.0210,0.0086,0.0009,-0.0045,0.0039,-0.0018,0.0003,0.0004,-0.0005Audio濾波程序如下:#include"myapp.h"#include"ICETEK-VC5509-EDU.h"#include"scancode.h"#include<math.h>#defineFIRNUMBER31#defineSIGNAL1F2900#defineSIGNAL2F3300#defineSAMPLEF8000#definePI3.1415926floatInputWave();floatFIR();floatfHn[FIRNUMBER]={-0.0005,0.0004,0.0003,-0.0018,0.0039,-0.0045,0.0009,0.0086,-0.0210,0.0279,-0.0173,-0.0191,0.0793,-0.1486,0.2043,0.7744,0.2043,-0.1486,0.0793,-0.0191,-0.0173,0.0279,-0.0210,0.0086,0.0009,-0.0045,0.0039,-0.0018,0.0003,0.0004,-0.0005};floatfXn[FIRNUMBER]={0.0};floatfInput,fOutput;floatfSignal1,fSignal2;floatfStepSignal1,fStepSignal2;floatf2PI;inti;floatfIn[256],fOut[256];intnIn,nOut;main(){nIn=0;nOut=0;f2PI=2*PI;fSignal1=0.0;fSignal2=PI*0.1;fStepSignal1=2*PI/30;fStepSignal2=2*PI*1.4;while(1){fInput=InputWave();fIn[nIn]=fInput;nIn++;nIn%=256;fOutput=FIR();fOut[nOut]=fOutput;nOut++;/*breakpoint*/if(nOut>=256){nOut=0;}}}floatInputWave(){for(i=FIRNUMBER-1;i>0;i--)fXn[i]=fXn[i-1];fXn[0]=sin((double)fSignal1)+cos((double)fSignal2)/6.0;fSignal1+=fStepSignal1;if(fSignal1>=f2PI)fSignal1-=f2PI;fSignal2+=fStepSignal2;if(fSignal2>=f2PI)fSignal2-=f2PI;return(fXn[0]);}floatFIR(){floatfSum;fSum=0;for(i=0;i<FIRNUMBER;i++){fSum+=(fXn[i]*fHn[i]);}return(fSum);}語音信號的FIR濾波程序#include"5509.h"#include"util.h"#include"audio.h"http://AIC23ControlRegisteraddresses#defineAIC23_LT_LINE_CTL#defineAIC23_RT_LINE_CTL#defineAIC23_LT_HP_CTL#defineAIC23_RT_HP_CTL#defineAIC23_ANALOG_AUDIO_CTL0x00//00x02//10x04//20x06//30x08//4#defineAIC23_DIGITAL_AUDIO_CTL0x0A//5#defineAIC23_POWER_DOWN_CTL0x0C//6#defineAIC23_DIGITAL_IF_FORMAT0x0E//7#defineAIC23_SAMPLE_RATE_CTL#define0x10//80x12//9#defineAIC23_RESET_REGreset0x1E//F-Writing0tothisregtriggers//AIC23ControlRegistersettings#definelt_ch_vol_ctrl#definert_ch_vol_ctrl#definelt_ch_headph_ctrl#definert_ch_headph_ctrl#definealog_au_path_ctrl#definedigi_au_path_ctrl#definepow_mgt_ctrl_ctrl#definedigi_au_intf_ctrl#defineau_FS_TIM_ctrlsetting*/0x0017/*0*/0x0017/*1*/0x0079/*2*/0x0079/*3*/0x0000/*4*/0x0000/*5*/0x0002/*6*/0x000D/*7*/0x0000/*8MCLK=12MHz,SampleRate#definedigi_intf1_ctrl#definedigi_intf2_ctrl#defineDIGIF_FMT_MS0x0001/*9*/0x00FF/*10*/0x40#defineDIGIF_FMT_LRSWAP#defineDIGIF_FMT_LRP0x200x10#defineDIGIF_FMT_IWL0x0c0x030x000x040x080xc0#defineDIGIF_FMT_FOR#defineDIGIF_FMT_IWL_16#defineDIGIF_FMT_IWL_20#defineDIGIF_FMT_IWL_24#defineDIGIF_FMT_IWL_32#defineDIGIF_FMT_FOR_MSBRIGHT#defineDIGIF_FMT_FOR_MSLEFT#defineDIGIF_FMT_FOR_I2S#defineDIGIF_FMT_FOR_DSP#definePOWER_DEV0x000x010x020x030x800x40#definePOWER_CLK#definePOWER_OSC#definePOWER_OUT#definePOWER_DAC#definePOWER_ADC#definePOWER_MIC0x200x100x080x040x020x010x800x400x3c0x020x010x200x180x0c0xc00x200x100x080x040x020x010x080x060x010x000x020x040x060x01#definePOWER_LINE#defineSRC_CLKOUT#defineSRC_CLKIN#defineSRC_SR#defineSRC_BOSR#defineSRC_MO#defineSRC_SR_44#defineSRC_SR_32#defineSRC_SR_8#defineANAPCTL_STA#defineANAPCTL_STE#defineANAPCTL_DAC#defineANAPCTL_BYP#defineANAPCTL_INSEL#defineANAPCTL_MICM#defineANAPCTL_MICB#defineDIGPCTL_DACM#defineDIGPCTL_DEEMP#defineDIGPCTL_ADCHP#defineDIGPCTL_DEEMP_DIS#defineDIGPCTL_DEEMP_32#defineDIGPCTL_DEEMP_44#defineDIGPCRL_DEEMP_48#defineDIGIFACT_ACT#defineLT_HP_CTL_LZC#defineRT_HP_CTL_RZC0x800x80voidAIC23_Write(unsignedshortregaddr,unsignedshortdata){unsignedcharbuf[2];buf[0]=regaddr;buf[1]=data;I2C_Write(I2C_AIC23,2,buf);}voidMcBSP0_InitSlave(){PC55XX_MCSPpMCBSP0=(PC55XX_MCSP)C55XX_MSP0_ADDR;//PuttheMCBSPinresetWrite(pMCBSP0->spcr1,0);Write(pMCBSP0->spcr2,0);//Configframeparameters(32bit,singlephase,nodelay)Write(pMCBSP0->xcr1,XWDLEN1_32);Write(pMCBSP0->xcr2,XPHASE_SINGLE|XDATDLY_0);Write(pMCBSP0->rcr1,RWDLEN1_32);Write(pMCBSP0->rcr2,RPHASE_SINGLE|RDATDLY_0);//Disableintframegenerationandenableslavew/extframesignalsonFSX//Framesyncisactivehigh,dataclockedonrisingedgeofclkxWrite(pMCBSP0->pcr,PCR_CLKXP);//BringtransmitterandreceiveroutofresetSetMask(pMCBSP0->spcr2,SPCR2_XRST);SetMask(pMCBSP0->spcr1,SPCR1_RRST);}voidAIC23_Init(){I2C_Init();//ResettheAIC23andturnonallpower0);AIC23_Write(AIC23_POWER_DOWN_CTL,0);AIC23_Write(AIC23_ANALOG_AUDIO_CTL,ANAPCTL_INSEL);//使用麥克風(fēng)音源AIC23_Write(AIC23_DIGITAL_AUDIO_CTL,0);//TurnonvolumeforlineinputsANAPCTL_DAC|AIC23_Write(AIC23_LT_LINE_CTL,0x000);AIC23_Write(AIC23_RT_LINE_CTL,0x000);//ConfiguretheAIC23formastermode,44.1KHzstereo,16bitsamples//Use12MHzUSBclockAIC23_Write(AIC23_DIGITAL_IF_FORMAT,DIGIF_FMT_IWL_16|DIGIF_FMT_FOR_DSP);DIGIF_FMT_MS|AIC23_Write(AIC23_SAMPLE_RATE_CTL,SRC_SR_44|SRC_BOSR|SRC_MO);//TurnonheadphonevolumeanddigitalinterfaceAIC23_Write(AIC23_LT_HP_CTL,0x07f);//0x79forspeakersAIC23_Write(AIC23_RT_HP_CTL,0x07f);DIGIFACT_ACT);//SetMcBSP0tobetransmitslaveMcBSP0_InitSlave();}voidAIC23_Disable(){PC55XX_MCSPpMCBSP0=(PC55XX_MCSP)C55XX_MSP0_ADDR;I2C_Disable();//PuttheMCBSPinresetWrite(pMCBSP0->spcr1,0);Write(pMCBSP0->spcr2,0);}#defineAUTIODATALEFT0x0d000#defineAUTIODATARIGHT0x17000int*pAudioLeft,*pAudioRight;intwww=0;voidAIC23_Mixer(){PC55XX_MCSPpMCBSP0=(PC55XX_MCSP)C55XX_MSP0_ADDR;intleft,right;int*pl,*pr,nAudioCount;inti;pAudioLeft=pl=(int*)AUTIODATALEFT;pAudioRight=pr=(int*)AUTIODATARIGHT;nAudioCount=0;for(i=0;i<NX;i++)x[i]=0;for(i=0;i<NH+2;i++)db[i]=0;while(1){while(!ReadMask(pMCBSP0->spcr2,SPCR2_XRDY));//等待數(shù)據(jù)傳輸完成(*pl)=left=Read(pMCBSP0->ddr1);//讀入左聲道數(shù)據(jù)//讀入右聲道數(shù)據(jù)//防止濾波時數(shù)據(jù)溢出fir2(x,h,r,db,NX,NH);//調(diào)用濾波程序計算當(dāng)前輸出(*pr)=r[NX-1];//數(shù)組r的最后一個單元為當(dāng)前輸出right=Read(pMCBSP0->ddr2);x[NX-1]=left/16;Write(pMCBSP0->dxr1,left);//將原始數(shù)據(jù)送左聲道輸出//Write(pMCBSP0->dxr1,r[NX-1]);//將原始數(shù)據(jù)送左聲道輸出Write(pMCBSP0->dxr2,r[NX-1]);nAudioCount++;pl++;pr++;if(nAudioCount>=1024){//將經(jīng)過濾波后數(shù)據(jù)送右聲道輸出//循環(huán)使用緩沖區(qū)nAudioCount=0;//breakpointpl=pAudioLeft;pr=pAudioRight;}for(i=0;i<NX-1;i++)//重新調(diào)整輸入序列供fir2使用){x[i]=x[i+1];}}}語音信號FIR濾波:四、心得體會FIR濾波器的原理和實驗的內(nèi)完成本次實驗。進(jìn)一步認(rèn)識了CCStudio軟件的使用,了解了各種窗函數(shù)對濾波器特性的影響。DSP這門學(xué)DSP巧。對以后的實際工作的應(yīng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度門面房出租與租賃期限調(diào)整合同
- 二零二五年度診所負(fù)責(zé)人安全責(zé)任免除合同
- 服務(wù)器采購合同共
- 無人機研發(fā)制造投資合同
- 水利設(shè)施施工合同
- 高考語文復(fù)習(xí)-文言文專題訓(xùn)練-《遼史》
- 高考語文復(fù)習(xí):文言文霍去病專練
- 農(nóng)業(yè)產(chǎn)業(yè)孵化項目合作協(xié)議書
- 業(yè)務(wù)流程外包服務(wù)協(xié)議內(nèi)容詳訂
- 數(shù)字媒體設(shè)計技能考核點
- 六年級上冊心理健康課件6《健康上網(wǎng)快樂多》(27張PPT)
- 改進(jìn)維持性血液透析患者貧血狀況PDCA
- 城市軌道交通工程施工組織設(shè)計與概預(yù)算PPT全套完整教學(xué)課件
- 某高速公路江蘇段施工組織設(shè)計
- 全國青少年機器人技術(shù)等級(機器人二級)考試復(fù)習(xí)題庫(含真題)
- 學(xué)習(xí)弘揚雷鋒精神課件
- 行政區(qū)域代碼表Excel
- 精神病醫(yī)院管理制度
- 化工廠中控DCS系統(tǒng)崗位職責(zé)
- 唯物史觀指導(dǎo)初中歷史教學(xué)
- 2023年同等學(xué)力研究生考試教育學(xué)試卷附詳細(xì)答案
評論
0/150
提交評論