c**:
/*
c語言實現fir濾波器-時域暴力卷積方法
y(n) = e(m=0->n-1) x(m)*h(n-m);
p_input : 待濾波資料
p_output : 濾波輸出資料
data_len : 資料長度
p_fir_para : h(t)引數
fir_para_len : h(t)長度
*/void c_fir(float* p_input, float* p_output, uint16_t data_len, float* p_fir_para,uint16_t fir_para_len)
}else if(i >= fir_para_len)}}
}
matlab**:
%濾波引數,這裡只用簡單的平均濾波器,具體的系統函式設計非一日之功
fir_para_len = 10;
fir_para = ones(fir_para_len,1)/fir_para_len;
data_len = 200;
t = linspace(0,pi,data_len);
x = sin(2*pi*t)+0.5*rand(size(t));
figure(1);
plot(t,x)
y = zeros(data_len,1);
for i=1:data_len
if(ifor j=1:i
y(i) = y(i) + fir_para(j)*x(i-j+1);
endelse
for j=1:fir_para_len
y(i) = y(i) + fir_para(j)*x(i-j+1);
endend
endfigure(2)
plot(y)
FIR數字濾波器 C語言實現
matlab設定fir低通濾波器 型別為equiripple minimun order density factor 20 fs 48000 fpass 2000 fstop 3000 截圖如下 matlab生成的檔案 filter coefficients c source generated ...
FIR濾波器的實現
fir濾波器的實現 fir濾波器具有嚴格的線性相位,依據的離散卷積公式 其中n為濾波器階數。fir濾波器的設計的關鍵在於設計出恰當的樣值響應函式h n h n 可以選擇加窗法 等紋波法等方法進行設計。本文是基於等紋波法設計的h n 函式h n 序列資料通過matlab計算得到。1.利用matlab中...
FIR濾波器的設計
matlab可以使用fir1函式設計低通 高通 低通 帶通等具有嚴格線性相位特性的濾波器。fir1函式的幾種語法如下 b fir1 n,wn b fir1 n,wn,ftype b fir1 n,wn,ftype window b fir1 noscale 各個引數的含義 設計濾波器,採用漢明窗,長...