導航:首頁 > 電器電路 > fir電路

fir電路

發布時間:2021-02-27 00:25:03

『壹』 有沒有可用的0-20HZ的帶通濾波電路拜託各位大神

#include <stdio.h> #include <stdlib.h> #include <math.h> #include "msp.h" float ad[66],x[66],y[66],grid[1045],des[1045],wt[1045],alpha[66]; int iext[66]; float pi2,dev; int nfcns,ngrid,niter; void mdefir3(int nfilt,int nbands,float edge[],float fx[], float wtx[],float h[]) { /*--------------------------------------------------------------------- mdefir3: To design FIR filter by Weighted Chebyshev Approximation. Input parameters: nfilt : the length of FIR filter,in this program nfilt<128; nbands :Number of bands,in this program nbands<=10; fx :Desired function array for each band,from fx(1) to fx(nbands); wtx :Weight function array in each band,from wtx(1) to wtx(nbands); edge :Bandedge array,lower and upper freq. for each band,from edge(1) to edge(2*nbands); Output parameters: h: nfilt dimensioned real array,the impulse response. in chapter 8 ---------------------------------------------------------------------*/ float pi,delf,fup,temp,change,a,xt; int j,nfmax,lgrid,nodd,l,lband,nm1,nz,nzmj,nf2j; pi2=8.*atan(1.); pi=pi2/2.; nfmax=128; lgrid=16; if(nfilt==0) return; if(nfilt>nfmax || nfilt<3) return; if(nbands<=0) nbands=1; nodd=nfilt/2; nodd=nfilt-2*nodd; nfcns=nfilt/2; if(nodd==1) nfcns++; grid[1]=edge[1]; delf=lgrid*nfcns; delf=0.5/delf; if(edge[1]<delf) grid[1]=delf; j=1; l=1; lband=1; do { fup=edge[l+1]; do { temp=grid[j]; des[j]=fx[lband]; wt[j]=wtx[lband]; j++; grid[j]=temp+delf; if(grid[j]>fup) break; }while(1); grid[j-1]=fup; des[j-1]=fx[lband]; wt[j-1]=wtx[lband]; lband++; l+=2; if(lband>nbands) break; grid[j]=edge[l]; }while(1); ngrid=j-1; if(nodd==0) if(grid[ngrid]>(.5-delf)) ngrid-=1; /*-------------------------------------------------------------------*/ if(nodd!=1) for(j=1;j<=ngrid;j++) { change=cos(pi*grid[j]); des[j]/=change; wt[j]*=change; } temp=(float)(ngrid-1)/(float)(nfcns); for(j=1;j<=nfcns;j++) { xt=j-1; iext[j]=xt*temp+1.; } iext[nfcns+1]=ngrid; nm1=nfcns-1; nz=nfcns+1; /*-------------------------------------------------------------------*/ mremez1(); if(nodd!=0) { for(j=0;j<nm1;j++) {nzmj=nfcns-j; h[j]=.5*alpha[nzmj]; h[nfilt-j-1]=h[j]; } h[nm1]=alpha[1]; } else { h[0]=.25*alpha[nfcns]; h[nfilt-1]=h[0]; for(j=1;j<nm1;j++) {nzmj=nfcns-j; nf2j=nz-j; h[j]=.25*(alpha[nzmj]+alpha[nf2j]); h[nfilt-j-1]=h[j]; } h[nm1]=.5*alpha[1]+.25*alpha[2]; h[nfcns]=h[nm1]; } h[nfilt]=0.0; printf("\n"); printf(" Deviation Deviation(db)\n"); for(j=1;j<=nbands;j++) {a=dev/wtx[j]; printf(" Band%d, %f, %f\n",j,a,20.*log10(a+fx[j])); } return; } 一個切比雪夫濾波器代碼,但是我看不太懂。

『貳』 請簡述窗函數法設計FIR數字濾波器的方法與步驟。

濾波器的理想頻率響應函數為Hd(ejω),則其對應的單位脈沖響應為hd(n)=窗函數設計法的基本原理是用有限長單位脈沖響應序列h(n)逼hd(n)。由於hd(n)往往是無限長序列,且是非因果的,所以用窗函數。w(n)將hd(n)截斷,並進行加權處理:

h(n)=hd(n)w(n)h(n)就作為實際設計的FIR數字濾波器的單位脈沖響應序列,其頻率響應函數H(ejω)為H(ejω)=用窗函數法設計的濾波器性能取決於窗函數w(n)的類型及窗口長度N的取值。設計過程中,要根據對阻帶最小衰減和過渡帶寬度的要求選擇合適的窗函數類型和窗口長度N。

一般都選用Ⅰ型線性相位濾波器即濾波器階數M為偶數,程序如下:

wp=;ws=;Ap=1;As=100;

dev=[Rp Rs];

[M,wc,beta,ftype]=kaiserord(f,a,dev);

M=mod(M,2)+M;

plot(omega/pi,20*log10(abs(mag)));

運行程序可以得到濾波器的通阻帶衰減,畫出頻率響應,若同阻帶衰減不滿足要求還可以使用濾波器的優化,一般使用的等波紋FIR進行優化。

(2)fir電路擴展閱讀:

濾波器與機箱之間的一段連線會產生兩種不良作用: 一個是機箱內部空間的電磁干擾會直接感應到這段線上,沿著電纜傳出機箱,藉助電纜輻射,使濾波器失效;另一個是外界干擾在被板上濾波器濾波之前,藉助這段線產生輻射,或直接與線路板上的電路發生耦合,造成敏感度問題;

濾波陣列板、濾波連接器等面板濾波器一般都直接安裝在屏蔽機箱的金屬面板上。由於直接安裝在金屬面板上,濾波器的輸入與輸出之間完全隔離,接地良好,電纜上的干擾在機箱埠上被濾除,因此濾波效果相當理想。

『叄』 如何從FIR濾波器的參數來推測濾波器類型

第2個是全通濾波器y=x。第3個是滑動平均濾波器,一個很基礎的低通。1和4初看看怎麼是一樣的?這兩個特性要算下才知道了,一眼還真看不出來

『肆』 請教些關於FIR濾波器的FPGA實現中遇到的一些問題:

首先,分清FIR的設計與實現是2階段;關系很緊密,但是還是有些概念不能混同的。專
實際的AD采樣如果是直接屬送到濾波器介面上,就直接將Fs設置為40MHz;若有下采樣或其他處理導致實際「數據率」是其他的值,就應該設定其他值的。既問題又回來了,先確定需要處理什麼樣的數據,得到什麼樣的效果;再確定FIR的參數;這階段的重點是FIR理論。

而實現階段,數據是正數、截位等就需要找一下相關的資料了。
簡單點說:
1. 40MHz採集5MHz頻率的數據可以不失真,信號能較好還原;可以直接進入FIR處理;既Fs=40MHz;
2. 採集的數據都是正數可能是AD有編碼處理,如偏置、強行改了符號位等;如果信號是有符號數,需要處理回來的;建議對數據進行去偏置處理
3. 濾波器需要量化吧?看你量化的位寬和插損怎麼樣,輸出信號強度怎麼樣了;我們一般原則是輸入的信號最大時,輸出沒有溢出;輸出很小時,精度盡量高;建議使用MATLAB先模擬一下;還是有些工作或細節需要注意的

『伍』 關於systemview中,模擬電路中FIR低通濾波器參數的設置

relative frequency是相對頻率,當設為0.05的時候頻率為50Hz,因此上面的兩個參數Rel Freq應改為0.05和0.06

『陸』 數字基帶傳輸系統的接收濾波器是模擬的還是數字的 若是數字的FIR,其前後該接些什麼電路

這個要看你的傳輸系統是數字的還是模擬的了。如果傳輸的數字信號,那內么就直接用數字濾容波器進行濾波,濾除帶外的頻譜分量就可以了。如果傳輸的是模擬信號,就需要一個模擬的抗混疊濾波器,後面再接一個A/D將模擬信號變為數字信號進行後續的基帶信號處理。

『柒』 快要答辯了,我想問的是FIR數字濾波器的原理就是他所採用的演算法嗎

分布式演算法是FPGA過程中的演算法優化,根據FIR濾波器的結構特點,將加回乘單元進行化簡,簡化計算單答元,縮短計算時間。
FIR設計原理應該是用MATLAB的fir1()函數得到的系數,將系數直接應用到FPGA中,如用VHDL編寫代碼的話,可將系數設為常量。
FIR原理是濾波的原理,就是h(n)與輸入信號卷積後得到輸出序列y(n).
演算法是在設計過程中的優化,二者不同。

『捌』 IIR與FIR濾波器的異同

IIR為無限沖激響應,FIR為有限沖激響應。
從其系統函數看,IIR濾波器的系統函數是有理分式,其分版母多項式對應於權反饋電路,因而其實遞歸結構的;FIR濾波器的系統函數則是有限多項式,只有在原點處有一個N階極點,屬於非遞歸結構。
IIR可以用較少階數完成和FIR相同的階數指標。
FIR濾波器可以得到嚴格的線性相位,而IIR則不行,准確來說,IIR的濾波器的選頻特性越好,其相位的非線性越嚴重。
在實際應用中,IIR往往用於傳輸語音信號的濾波器,因為其不用保證線性相位,可以發揮其經濟高效的特點;FIR往往用於傳輸圖像信號,其對線性相位要求較高,採用FIR效果較好。

『玖』 低通FIR濾波器參數

截止頻率(the cutoff frequency ):用來說明電路頻率特性指標的特殊頻率。當保持電迴路輸入信號的幅度不變,改答變頻率使輸出信號降至最大值的0.707倍,或某一特殊額定值時該頻率稱為截止頻率。
阻帶頻率(the stopband frequency ):也是用來說明電路頻率特性指標的特殊頻率。當保持電路輸入信號的幅度不變,改變頻率使輸出信號衰減60dB時,該頻率稱為阻帶頻率。
本人覺得響應的截止頻率就是the cutoff frequency 。
僅供參考啊!

閱讀全文

與fir電路相關的資料

熱點內容
防爆門多久檢查維修一次 瀏覽:633
洗衣機維修卡找不到了還能售後嗎 瀏覽:882
東莞蘋果官方售後維修點一覽表 瀏覽:552
家電經營賣出家電怎麼開票 瀏覽:209
紹興市城市服務家電維修 瀏覽:1
消防水泵不停怎麼辦 瀏覽:812
小米商城買的家電什麼時候到 瀏覽:411
大班教案設計家用電器 瀏覽:879
佳斯特炸爐維修電話 瀏覽:292
凱爾達焊機400維修視頻教程 瀏覽:883
怎麼使用防水護臍貼 瀏覽:589
什麼專業可進國家電網 瀏覽:978
容聲冰箱北京維修點 瀏覽:897
飛利浦蒸汽電熨斗不維修視頻 瀏覽:504
長沙華為手機維修電話 瀏覽:791
cad家用電器模塊免費下載 瀏覽:376
南寧哪裡賣家電 瀏覽:719
冬季除傢具甲醛怎麼除 瀏覽:630
冷藏展示櫃不製冷維修視頻 瀏覽:627
虎斑尚品家居 瀏覽:924