版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)字信號處理課程設(shè)計報告 通信11級16班 學(xué)號:52111604 姓名:薛煥福實驗一 離散時間系統(tǒng)及離散卷積一、實驗?zāi)康?、熟悉MATLAB軟件的使用方法。 2、熟悉系統(tǒng)函數(shù)的零極點分布、單位脈沖響應(yīng)和系統(tǒng)頻率響應(yīng)等概念。 3、利用MATLAB繪制系統(tǒng)函數(shù)的零極點分布圖、系統(tǒng)頻率響應(yīng)和單位脈沖響應(yīng)。 4、熟悉離散卷積的概念,并利用MATLAB計算離散卷積。 二、實驗原理本實驗利用MATLAB的庫函數(shù),實驗沖擊響應(yīng)零極點、幅度相位譜的繪制。熟悉MATLAB的使用。并利用離散卷積的概念編寫一個計算離散卷積的程序。三、實驗內(nèi)容及要求1.離散時間系統(tǒng)的單位沖擊響應(yīng)(1)選擇一個離散時間系統(tǒng);(2)用
2、筆進(jìn)行差分方程的遞推計算;(3)編制差分方程的遞推計算程序;(4)在計算機(jī)上實現(xiàn)遞推運算;(5)將程序計算結(jié)果與筆算的計算結(jié)果進(jìn)行比較,驗證程序運行的正確性;2.離散系統(tǒng)的幅頻、相頻的分析方法(1)離散系統(tǒng)的幅頻、相頻的分析方法(2)用筆計算幾個特殊的幅頻、相頻的值,畫出示意曲線圖;(3)編制離散系統(tǒng)的幅頻、相頻的分析程序;(4)在計算機(jī)上進(jìn)行離散系統(tǒng)的幅頻、相頻特性計算,并畫出曲線;(5)通過比較,驗證程序的正確性;3. 離散卷積的計算(1)選擇兩個有限長序列,用筆計算其線性卷積;(2)編制有限長序列線性卷積程序;(3)利用計算程序?qū)Γ?)選擇的有限長序列進(jìn)行卷積運算;(4)比較結(jié)果驗證程序
3、的正確性。四、實驗過程1、離散時間系統(tǒng)的單位脈沖響應(yīng)程序:a=1,-1,0.91; % 系統(tǒng)的系數(shù)b=1,2,3;n0=0;n=-20:120;x=(n-n0)=0; % 利用filter函數(shù)進(jìn)行濾波,從而求得系統(tǒng)的單位沖擊響應(yīng)h=filter(b,a,x); figure(1)stem(n,h); % 利用stem繪制曲線圖title(沖擊響應(yīng));xlabel(n);ylabel(h(n);hfigure(2)z,p,g=tf2zp(b,a); % 求傳遞函數(shù)zplane(z,p) % 求零極點(2)實驗結(jié)果:2、離散系統(tǒng)的幅頻、相頻的分析程序:b=0.6,1.2,0.4,0.9; % 分子
4、的系數(shù)a=1.0,-1.7,1.1,-0.5 ; % 分母的系數(shù)m=0:length(b)-1;l=0:length(a)-1;K=500;k=1:K;w=pi*k/K;H=(b*exp(-j*m*w)./(a*exp(-j*l*w); % 求傳遞函數(shù)magH=abs(H); % 求傳遞函數(shù)的幅值angH=angle(H); % 求傳遞函數(shù)的相位figure(1)subplot(2,1,1);plot(w/pi,magH); % 定義坐標(biāo)軸的區(qū)間grid;axis(0,1,0,1); xlabel(w(pi);ylabel(|H|);title(幅度,相位響應(yīng));subplot(2,1,2);
5、plot(w/pi,angH);grid;xlabel(w(pi);ylabel(angle(H);(2)實驗結(jié)果:3、離散卷積的計算程序:function pr13()n=-5:50;u1=stepseq(0,-5,50);u2=stepseq(10,-5,50);x=u1-u2;h=(0.9).n).*u1; figure(1)subplot(3,1,1);stem(n,x);axis(-5,50,0,2);title(輸入序列);xlabel(n);ylabel(x(n);subplot(3,1,2);stem(n,h);axis(-5,50,0,2);title(沖擊響應(yīng)序列);xla
6、bel(n);ylabel(h(n);y,ny=conv_m(x,n,h,n); subplot(3,1,3);stem(ny,y);axis(-5,50,0,8);title(輸出響應(yīng));xlabel(n);ylabel(y(n);function x,n=stepseq(n0,n1,n2)n=n1:n2;x=(n-n0)=0;function y,ny=conv_m(x,nx,h,nh)nyb=nx(1)+nh(1);nye=nx(length(x)+nh(length(h);ny=nyb:nye;y=conv(x,h); (2)實驗結(jié)果:實驗二 離散傅立葉變換與快速傅立葉變換一、實驗?zāi)康?/p>
7、:1、加深理解離散傅立葉變換及快速傅立葉變換概念;2、學(xué)會應(yīng)用FFT對典型信號進(jìn)行頻譜分析的方法;3、研究如何利用FFT程序分析確定性時間連續(xù)信號;4、熟悉應(yīng)用FFT實現(xiàn)兩個序列的線性卷積的方法。二、實驗原理在各種信號序列中,有限長序列信號處理占有很重要地位,對有限長序列,我們可以使用離散Fouier變換(DFT)。這一變換不但可以很好的反映序列的頻譜特性,而且易于用快速算法在計算機(jī)上實現(xiàn),當(dāng)序列x(n)的長度為N時,它的DFT定義為 反變換為 有限長序列的DFT是其Z變換在單位圓上的等距采樣,或者說是序列Fourier變換的等距采樣,因此可以用于序列的譜分析。用FFT計算線性卷積: 用FFT
8、可以實現(xiàn)兩個序列的圓周卷積。在一定的條件下,可以使圓周卷積等于線性卷積。一般情況,設(shè)兩個序列的長度分別為N1和N2,要使圓周卷積等于線性卷積的充要條件是FFT的長度NN1N2對于長度不足N的兩個序列,分別將他們補(bǔ)零延長到N。 當(dāng)兩個序列中有一個序列比較長的時候,我們可以采用分段卷積的方法。通常,我們選擇重疊相加法。重疊相加法:將長序列分成與短序列相仿的片段,分別用FFT對它們作線性卷積,再將分段卷積各段重疊的部分相加構(gòu)成總的卷積輸出。三、 實驗內(nèi)容:1、用離散傅立葉變換程序處理時間抽樣信號,并根據(jù)實序列離散傅立葉變換的對稱性,初步判定程序的正確性;2、觀察三角波和反三角波序列的時域和幅頻特性,
9、用N=8點FFT分析信號序列和的幅頻特性,觀察兩者的序列形狀和頻譜曲線有什么異同?繪出兩序列及其幅頻特性曲線。三角波序列:反三角波序列:3、 已知余弦信號如下 當(dāng)信號頻率,采樣間隔,采樣長度時,對該信號進(jìn)行傅立葉變換。用FFT程序分析正弦信號,分別在以下情況下進(jìn)行,并且分析比較結(jié)果(1)F=50, N=32,T=0.000625;(2)F=50, N=32,T=0.005;(3)F=50, N=32,T=0.0046875;(4)F=50, N=32,T=0.004;(5)F=50, N=64=0.0006254、選定某一時間信號進(jìn)行N=64點離散傅立葉變換,并且,對同一信號進(jìn)行快速傅立葉變換
10、,并比較它們的速度。四、實驗要求:1、調(diào)試實驗程序,并且,給參考程序加注釋;2、完成實驗內(nèi)容2,并對結(jié)果進(jìn)行分析。實驗中的信號序列和,在單位圓上的Z變換頻譜和會相同嗎?如果不同,你能說出哪一個低頻分量更多一些嗎?為什么?3、完成實驗內(nèi)容3,并對結(jié)果進(jìn)行分析;4、利用編制的計算卷積的計算程序,分別給出一下三組函數(shù)的卷積結(jié)果。(1) (2) (3) 五、實驗過程:1、三角波與反三角波序列的時域和頻域特性:(1)實驗程序:clear all;clc;N=64;n=1:N;xc=zeros(1,N);xd=zeros(1,N);%生成三角波和反三角波for i=1:4xc(i+28)=i;endfor
11、 j=5:8xc(j+28)=9-j;endfor i=1:4xd(i+28)=5-i;endfor j=5:8xd(j+28)=j-4;endfigure(1);subplot(2,1,1),stem(n,xc);title(三角波的時域波形);subplot(2,1,2),stem(n,xd);title(反三角波的時域波形);%FFT變換XC=fft(xc,N);XD=fft(xd,N);AXC=abs(XC);AXD=abs(XD);figure(2);subplot(2,1,1),plot(AXC);title(三角波的幅度譜波形);subplot(2,1,2),plot(AXD);
12、title(反三角波的幅度譜波形);(2)實驗結(jié)果:2、余弦信號的傅立葉變換:N=64;F=50;T=0.000625;n=0:N-1;xn=cos(2*pi*n*F*T);X=dft(xn,N);magX=abs(X);subplot(2,1,1),stem(n,xn);xlabel(n);title(離散序列x(n);subplot(2,1,2),stem(n,magX);xlabel(pi);title(DTFTX);(1) F=50,N=32,T=0.000625;F=50,N=64,T=0.000625;實驗程序:clear all;clc;%F=50, N=64,T=0.00062
13、5F=50;N=64;T=0.000625;n=1:N;x=cos(2*pi*F*n*T);figure(1);subplot(2,2,1);plot(n,x);title(x(n)F=50, N=64,T=0.000625);xlabel(n); X=fft(x);magX=abs(X);subplot(2,2,3);plot(n,X);title(FFT|X|);xlabel(f(pi);%F=50, N=32,T=0.000625F=50;N=32;T=0.000625;n=1:N;x=cos(2*pi*F*n*T); subplot(2,2,2);plot(n,x);title(x(n
14、)F=50, N=32,T=0.000625);xlabel(n); X=fft(x);magX=abs(X);subplot(2,2,4);plot(n,X);title(FFT|X|);xlabel(f(pi);實驗結(jié)果:020406080-1-0.500.51x(n)F=50, N=64,T=0.000625n020406080010203040FFT|X|f(pi)010203040-1-0.500.51x(n)F=50, N=32,T=0.000625n01020304005101520FFT|X|f(pi)(2)F=50,N=32,T=0.005;F=50,N=32,T0.0046
15、875;實驗程序:F=50;N=32;T=0.005;n=1:N;x=cos(2*pi*F*n*T);figure(2);subplot(2,2,1);plot(n,x);title(x(n)F=50, N=32,T=0.005);xlabel(n); X=fft(x);magX=abs(X);subplot(2,2,3);plot(n,X);title(FFT|X|);xlabel(f(pi);%F=50, N=32,T=0.0046875F=50;N=32;T=0.0046875;n=1:N;x=cos(2*pi*F*n*T); subplot(2,2,2);plot(n,x);title
16、(x(n)F=50, N=32,T=0.0046875);xlabel(n); X=fft(x);magX=abs(X);subplot(2,2,4);plot(n,X);title(FFT|X|);xlabel(f(pi);實驗結(jié)果:010203040-1-0.500.51x(n)F=50, N=32,T=0.005n010203040-2-1012x 10-14FFT|X|f(pi)010203040-1-0.500.51x(n)F=50, N=32,T=0.0046875n010203040-20-1001020FFT|X|f(pi)(3)F=50,N=32,T=0.004;實驗程序:F
17、=50;N=32;T=0.004;n=1:N;x=cos(2*pi*F*n*T);figure(3);subplot(2,1,1);plot(n,x);title(x(n)F=50, N=32,T=0.004);xlabel(n); X=fft(x);magX=abs(X);subplot(2,1,2);plot(n,X);title(FFT|X|);xlabel(f(pi);實驗結(jié)果:05101520253035-1-0.500.51x(n)F=50, N=32,T=0.004n05101520253035-10-50510FFT|X|f(pi)3、三組卷積結(jié)果:(1)N1=32;n1=1:
18、14;x1n=ones(1,14);h1n=(4/5).n1; figure(1);X1=fft(x1n,N1);H1=fft(h1n,N1);Y1=X1.*H1;y1=ifft(Y1); stem(abs(y1);title(第一組 y(n)=x(n)*h(n) N=32點的卷積);(2)N2=32;x2n(1:10)=1;n2=1:20;h2n=0.5*sin(0.5*n2); figure(2);X2=fft(x2n,N2);H2=fft(h2n,N2);Y2=X2.*H2;y2=ifft(Y2); stem(abs(y2);title(第二組 y(n)=x(n)*h(n) N=32點的
19、卷積);(3)N1=32;n1=1:10;x1n=(1-0.1*n1);h1n=0.1*n1;figure(1);X1=fft(x1n,N1);H1=fft(h1n,N1);Y1=X1.*H1;y1=ifft(Y1);stem(abs(y1);title(第三組 y(n)=x(n)*h(n) N=32點的卷積);0510152025303500.511.522.533.5第三組 y(n)=x(n)*h(n) N=32點的卷積實驗三 IIR數(shù)字濾波器設(shè)計一、 實驗?zāi)康?、 學(xué)習(xí)模擬數(shù)字變換濾波器的設(shè)計方法;2、 掌握雙線性變換數(shù)字濾波器設(shè)計方法;3、 掌握實現(xiàn)數(shù)字濾波器的具體方法。二、實驗內(nèi)容:
20、1、設(shè)計一個巴特沃思數(shù)字低通濾波器,設(shè)計指標(biāo)如下:通帶內(nèi)幅度衰減不大于1dB;阻帶內(nèi)幅度衰減不小于15dB;2、編制計算設(shè)計的數(shù)字濾波器幅度特性和相位特性的程序,并進(jìn)行實驗驗證。編制實現(xiàn)該數(shù)字濾波器程序并且實現(xiàn)數(shù)字濾波(1)分別讓滿足所設(shè)計的濾波器的通帶、過渡帶、阻帶頻率特性的正弦波通過濾波器,驗證濾波器性能;(2)改變正弦抽樣時間,驗證數(shù)字低通濾波器的模擬截止頻率實抽樣時間的函數(shù)。三、實驗要求:1、編制實驗內(nèi)容要求的程序,并給程序加注釋。2、根據(jù)實驗結(jié)果,給出自己設(shè)計的數(shù)字濾波器的幅度特性和相位特性。3、用所設(shè)計的濾波器對不同頻率的正弦波信號進(jìn)行濾波,并說明其特性。4、fp=0.2KHz,R
21、p=1dB,fs=0.3KHz,As=25dB,T=1ms;分別用脈沖響應(yīng)不變法及雙極性變換法設(shè)計一巴特沃斯數(shù)字低通濾波器,觀察所設(shè)計的數(shù)字濾波器的幅頻特性曲線,記錄帶寬和衰減量,檢查是否滿足要求。比較這兩種方法的優(yōu)缺點。四、實驗原理1、脈沖響應(yīng)不變法:用數(shù)字濾波器的單位脈沖響應(yīng)序列模仿模擬濾波器的沖激響應(yīng),讓正好等于的采樣值,即,其中T為采樣間隔,如果以及分別表示的拉氏變換及的Z變換,則2、雙線性變換法:s平面與z平面之間滿足以下映射關(guān)系:s平面的虛軸單值地映射于z平面的單位圓上,s平面的左半平面完全映射到z平面的單位圓內(nèi)。雙線性變換不存在混疊問題。雙線性變換時一種非線性變換,這種非線性引起
22、的幅頻特性畸變可通過預(yù)畸而得到校正。以低通數(shù)字濾波器為例,將設(shè)計步驟歸納如下:(1)確定數(shù)字濾波器的性能指標(biāo):通帶臨界頻率fp、阻帶臨界頻率fs;通帶內(nèi)的最大衰減Rp;阻帶內(nèi)的最小衰減As;采樣周期T; (2)確定相應(yīng)的數(shù)字角頻率,p=2fpT;s=2frT; (3)計算經(jīng)過預(yù)畸的相應(yīng)模擬低通原型的頻率,根據(jù)和s計算模擬低通原型濾波器的階數(shù)N,并求得低通原型的傳遞函數(shù)Ha(s);(4)用上面的雙線性變換公式代入Ha(s),求出所設(shè)計的傳遞函數(shù)H(z); (5)分析濾波器特性,檢查其指標(biāo)是否滿足要求。 五、實驗過程function pr7()%31 IIR filterwp=0.2*pi;ws=
23、0.3*pi;Rp=1;As=15;T=1;Fs=1/T;OmegaP=(2/T)*tan(wp/2);OmegaS=(2/T)*tan(ws/2);ep=sqrt(10(Rp/10)-1);Ripple=sqrt(1/(1+ep.2);Attn=1/10(As/20);N=ceil(log10(10(Rp/10)-1)/(10(As/10)-1)/(2*log10(OmegaP/OmegaS);OmegaC=OmegaP/(10.(Rp/10)-1).(1/(2*N);cs,ds=u_buttap(N,OmegaC);b,a=bilinear(cs,ds,Fs);mag,db,pha,w=f
24、reqz_m(b,a);subplot(3,1,1);plot(w/pi,mag);title(幅度響應(yīng));xlabel(w(pi);ylabel(H);axis(0,1,0,1.1);set(gca,XTickmode,manual,XTick,0,0.2,0.35,1.1);set(gca,YTickmode,manual,YTick,0,Attn,Ripple,1);grid;subplot(3,1,2);plot(w/pi,db);title(幅度響應(yīng)(dB);xlabel(w(pi);ylabel(H);axis(0,1,-40,5);set(gca,XTickmode,manual
25、,XTick,0,0.2,0.35,1.1);set(gca,YTickmode,manual,YTick,-50,-15,-1,0);grid;subplot(3,1,3);plot(w/pi,pha);title(相位響應(yīng));xlabel(w(pi);ylabel(pi unit);%axis(0,1,0,1.1);set(gca,XTickmode,manual,XTick,0,0.2,0.35,1.1);set(gca,YTickmode,manual,YTick,-1,0,1);grid;function b,a=u_buttap(N,OmegaC)z,p,k=buttap(N);p
26、=p*OmegaC;k=k*OmegaC.N;B=real(poly(z);b0=k;b=k*B;a=real(poly(p);function mag,db,pha,w=freqz_m(b,a)H,w=freqz(b,a,1000,whole);H=(H(1:501);w=(w(1:501);mag=abs(H);db=20*log10(mag+eps)/max(mag);pha=angle(H);實驗四 FIR數(shù)字濾波器設(shè)計一、實驗?zāi)康?、學(xué)習(xí)FIR數(shù)字濾波器窗口函數(shù)設(shè)計法;2、熟悉線性相位FIR濾波器的幅頻特性和相頻特性;3、了解各種不同窗函數(shù)對濾波器性能的影響4、進(jìn)行FIR、IIR濾波
27、器的性能比較。二、實驗內(nèi)容1、設(shè)計一個FIR數(shù)字濾波器,設(shè)計指標(biāo)如下:通帶內(nèi)幅度衰減不大于1dB;阻帶幅度衰減不小于15dB;2、編制計算設(shè)計的數(shù)字濾波器幅度特性和相位特性的程序,并進(jìn)行實驗驗證。3、編制實現(xiàn)該數(shù)字濾波器程序并且實現(xiàn)數(shù)字濾波(1)分別讓滿足所設(shè)計的濾波器的通帶、過渡帶、阻帶頻率特性的正弦波通過濾波器,驗證濾波器性能。(2)改變?yōu)V波器的階數(shù),觀察數(shù)字低通濾波器的特性的變換。三、實驗要求1、調(diào)試實驗程序,并且,給實驗程序加注釋;2、根據(jù)實驗結(jié)果,記錄自己設(shè)計的數(shù)字濾波器的幅度特性和相位特性;3、比較相同設(shè)計指標(biāo)情況下, FIR濾波器和IIR濾波器的幅度特性和相位特性。4、分別用矩形
28、窗、漢寧窗、海明窗、三角窗和Blackman窗設(shè)計一的線性相位帶通濾波器,觀察它們的3dB和20dB帶寬,并比較五種窗的特點。四、實驗原理窗函數(shù)法設(shè)計線性相位FIR濾波器步驟 1、確定數(shù)字濾波器的性能要求:臨界頻率k,濾波器單位脈沖響應(yīng)長度N; 2、根據(jù)性能要求,合理選擇單位脈沖響應(yīng)的奇偶對稱性,從而確定理想頻率響應(yīng)的幅頻特性和相頻特性; 3、求理想單位脈沖響應(yīng),在實際計算中,可對按M(M遠(yuǎn)大于N)點等距離采樣,并對其求IDFT得,用代替; 4、選擇適當(dāng)?shù)拇昂瘮?shù),根據(jù)求所需設(shè)計的FIR濾波器單位脈沖響應(yīng); 5、求,分析其幅頻特性,若不滿足要求,可適當(dāng)改變窗函數(shù)形式或長度N,重復(fù)上述設(shè)計過程,以
29、得到滿意的結(jié)果。 窗函數(shù)的傅式變換的主瓣決定了過渡帶寬。的旁瓣大小和多少決定了在通帶和阻帶范圍內(nèi)波動幅度,常用的幾種窗函數(shù)有:矩形窗 w(n)=RN(n) Hanning窗 Hamming窗 Blackmen窗 Kaiser窗 式中Io(x)為零階貝塞爾函數(shù)。五:實驗過程實驗程序凱澤窗 設(shè)計:wp=0.2*pi;ws=0.3*pi;As=50;tr_width=ws-wp;N=ceil(As-7.95)/(14.36*tr_width/(2*pi)+1)+1n=0:1:N-1;beta=0.1102*(As-8.7)wc=(ws+wp)/2;hd=ideal_lp(wc,N);w_kai=(k
30、aiser(N,beta);h=hd.*w_kaidb,mag,pha,grd,w=freqz_m(h,1);delta_w=2*pi/1000;Rp=-(min(db(1:1:wp/delta_w+1)As=-round(max(db(ws/delta_w+1:1:501)subplot(2,2,4);plot(w/pi,db);title(幅度響應(yīng)(dB));gridaxis(0 0.5 -100 0);ylabel(對數(shù)響應(yīng)/dB);xlabel(以pi為單位的頻率);subplot(2,2,3);plot(w/pi,pha);title(相位響應(yīng));grid;axis(0 0.5 -4
31、 4);xlabel(以pi為單位的頻率);ylabel(相位);subplot(2,2,1);stem(n,hd);ylabel(hd(n);xlabel(n);title(理想沖激響應(yīng));gridsubplot(2,2,2);stem(n,h);ylabel(h(n);xlabel(n);title(實際沖激響應(yīng));grid綜合實驗一、實驗?zāi)康慕柚A(chǔ)實驗篇編制的程序,對語音信號進(jìn)行處理。通過綜合實驗篇,使得學(xué)生能夠充分了解信號處理及數(shù)字信號處理的過程;使得學(xué)生能夠?qū)ψ约涸O(shè)計的頻譜分析程序與濾波器程序得到靈活的應(yīng)用;使得學(xué)生能夠綜合分析信號處理過程各個階段信號時域與頻域特性。二、實驗內(nèi)容1
32、、錄制一段各人自己的語音信號。2、對錄制的信號進(jìn)行采樣;畫出采樣后語音信號的時域波形和頻譜圖;3、給定濾波器的性能指標(biāo),采用窗函數(shù)法或雙線性變換設(shè)計濾波器,并畫出濾波器的頻率響應(yīng);4、用自己設(shè)計的濾波器對采集的語音信號進(jìn)行濾波,畫出濾波后信號的時域波形和頻譜。5、對濾波前后的信號進(jìn)行對比,分析信號的變化;6、回放語音信號,并與錄制語音信號比較;7、設(shè)計出一信號處理系統(tǒng)界面。三、實驗要求1、完成實驗內(nèi)容要求的各項內(nèi)容。寫明設(shè)計思路及其設(shè)計原理;2、給出MATLAB代碼,并給編制的程序加注釋;3、給出仿真測試結(jié)果并對測試結(jié)果進(jìn)行分析;要有仿真驗證過程、波形、結(jié)果分析、所遇問題及問題解決 。4、 對
33、設(shè)計成果做出評價,說明本設(shè)計的特點和存在問題,提出改進(jìn)設(shè)計意見 ;四、實驗過程function varargout = gui(varargin)% GUI M-file for gui.fig% GUI, by itself, creates a new GUI or raises the existing% singleton*.% H = GUI returns the handle to a new GUI or the handle to% the existing singleton*.% GUI(Property,Value,.) creates a new GUI using
34、the% given property value pairs. Unrecognized properties are passed via% varargin to gui_OpeningFcn. This calling syntax produces a% warning when there is an existing singleton*.% GUI(CALLBACK) and GUI(CALLBACK,hObject,.) call the% local function named CALLBACK in GUI.M with the given input% argumen
35、ts.% *See GUI Options on GUIDEs Tools menu. Choose GUI allows only one% instance to run (singleton).% See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help gui % Last Modified by GUIDE v2.5 15-Apr-2012 10:50:30 % Begin initialization code - DO NOT EDITgui_Singleto
36、n = 1;gui_State = struct(gui_Name, mfilename, . gui_Singleton, gui_Singleton, . gui_OpeningFcn, gui_OpeningFcn, . gui_OutputFcn, gui_OutputFcn, . gui_LayoutFcn, , . gui_Callback, );if nargin & isstr(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout varargout1:nargout = gui_mainf
37、cn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);end% End initialization code - DO NOT EDIT % - Executes just before gui is made visible.function gui_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdat
38、a reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin unrecognized PropertyName/PropertyValue pairs from the% command line (see VARARGIN) % Choose default command line output for guihandles.output = hObject; % Update handles st
39、ructureguidata(hObject, handles); % UIWAIT makes gui wait for user response (see UIRESUME)% uiwait(handles.figure1); % - Outputs from this function are returned to the command line.function varargout = gui_OutputFcn(hObject, eventdata, handles)% varargout cell array for returning output args (see VA
40、RARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structurevarargout1 = handles.output; % - Executes on button press in pushbutton1.function
41、pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)fs=8000;nbits=8;duration=2;waveFile=test.wav;fprintf(.n);y=wavrecord(duration*fs,fs
42、);fprintf(n);wavwrite(y,fs,nbits,waveFile); % - Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)% hObject handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data
43、 (see GUIDATA)y,fs,nbits=wavread(test.wav);f=3400;time=(1:length(y)/fs;y=y+0.05*sin(2*pi*f*time);wavplay(y,fs); % - Executes on button press in pushbutton3.function pushbutton3_Callback(hObject, eventdata, handles)% hObject handle to pushbutton3 (see GCBO)% eventdata reserved - to be defined in a fu
44、ture version of MATLAB% handles structure with handles and user data (see GUIDATA)y,fs,nbits=wavread(test.wav);f=3400;time=(1:length(y)/fs;y=y+0.05*sin(2*pi*f*time);axes(handles.axes1);plot(time,y);title();xlabel(time(s);ylabel();axis(0 2 -1.1 1.1); % - Executes on button press in pushbutton4.functi
45、on pushbutton4_Callback(hObject, eventdata, handles)% hObject handle to pushbutton4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)y,fs,nbits=wavread(test.wav);f=3400;time=(1:length(y)/fs;y=y+0.05*sin(2*pi*f*tim
46、e);%wp=0.6*pi;ws=0.75*pi;Rp=1;As=15; %T=1;Fs=1/T;omegap=(2/T)*tan(wp/2);omegas=(2/T)*tan(ws/2);%cs,ds=afd_buttap(omegap,omegas,Rp,As);%b,a=bilinear(cs,ds,Fs);%db,mag,pha,grd,w=freqz_m(b,a); p=filter(b,a,y); %hb/abaaxes(handles.axes4);plot(time,p);title();xlabel(time(s);ylabel();axis(0 2 -1.1 1.1); %
47、 - Executes on button press in pushbutton5.function pushbutton5_Callback(hObject, eventdata, handles)% hObject handle to pushbutton5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)y,fs,nbits=wavread(test.wav);f=
48、3400;time=(1:length(y)/fs;y=y+0.05*sin(2*pi*f*time);ws=2*pi*fs;Y=fft(y,16384);f=fs*(0:8191)/16384;axes(handles.axes2);plot(f,Y(1:8192);axis(0 4000 0 150); % - Executes on button press in pushbutton6.function pushbutton6_Callback(hObject, eventdata, handles)% hObject handle to pushbutton6 (see GCBO)%
49、 eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)y,fs,nbits=wavread(test.wav);f=3400;time=(1:length(y)/fs;y=y+0.05*sin(2*pi*f*time);ws=2*pi*fs;Y=fft(y,16384);f=fs*(0:8191)/16384; %wp=0.6*pi;ws=0.75*pi;Rp=1;As=15; %T=1;Fs=1/T;omegap=(2/T)*tan(wp/2);omegas=(2/T)*tan(ws/2);%cs,ds=afd_buttap(omegap,omegas,Rp,As);%b,a=bilinear(cs,ds,Fs);%db,mag,pha,
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 粉筆板項目運營指導(dǎo)方案
- 人工授精用動物精液產(chǎn)品供應(yīng)鏈分析
- 真空吸塵器用濾塵器商業(yè)機(jī)會挖掘與戰(zhàn)略布局策略研究報告
- 俯臥撐支架產(chǎn)業(yè)鏈招商引資的調(diào)研報告
- 書籍封面的平面設(shè)計行業(yè)相關(guān)項目經(jīng)營管理報告
- 卡祖笛產(chǎn)品供應(yīng)鏈分析
- 自行車車閘項目運營指導(dǎo)方案
- 裝飾用木條市場分析及投資價值研究報告
- 醫(yī)用箭毒產(chǎn)品供應(yīng)鏈分析
- 生產(chǎn)加工用香精油市場發(fā)展前景分析及供需格局研究預(yù)測報告
- GMP質(zhì)量管理體系文件 中藥材揀選SOP
- GB/T 41318-2022通風(fēng)消聲器
- GA 137-2007消防梯
- 值班人員的福利補(bǔ)貼方案
- 七年級數(shù)學(xué)活動課(找規(guī)律)課件
- 部編版小學(xué)語文四年級上冊第六單元教材分析解讀課件
- 2023年江蘇交通控股有限公司校園招聘筆試模擬試題及答案解析
- 山東科學(xué)技術(shù)出版社五年級上冊《綜合實踐活動》教案
- 外貿(mào)開發(fā)信PPT課件講義
- 干部人事檔案專項審核認(rèn)定表填寫模板
- 復(fù)變函數(shù)與積分變換全套精美課件
評論
0/150
提交評論