how to obtain the impulse response of halfband FIR filter

1 view (last 30 days)
Aly Khafagy
Aly Khafagy on 7 May 2022
Answered: Mathieu NOE on 9 May 2022
how to obtain the impulse response of halfband FIR filter??
clc;
close all;
n1= 15; %order
Fs= 100; %sampling frequency
fc= Fs/4; %cutoff frequency
%nyq_f= Fs/2; %normalize cutoff frequency wrt to nyquist freq
%wn= fc/nyq_f; %normalized fc
wc= (2*pi*fc)/Fs;
wn= wc/pi;
%window= hamming(n+1)
H1= fir1(n1,wn,hamming(n1+1));
h1= freqz(H1); %frequency response
f1= linspace(0,Fs/2,512);
w1= (2*pi*f1)/Fs;
w= w1/pi;
figure
plot (w, abs(h1))

Answers (1)

Mathieu NOE
Mathieu NOE on 9 May 2022
hello
by definition H1 array is your impulse response (a FIR filter coefficients array is its impulse response)
clc;
close all;
n1= 15; %order
Fs= 100; %sampling frequency
fc= Fs/4; %cutoff frequency
%nyq_f= Fs/2; %normalize cutoff frequency wrt to nyquist freq
%wn= fc/nyq_f; %normalized fc
wc= (2*pi*fc)/Fs;
wn= wc/pi;
%window= hamming(n+1)
H1= fir1(n1,wn,hamming(n1+1));
h1= freqz(H1); %frequency response
f1= linspace(0,Fs/2,512);
w1= (2*pi*f1)/Fs;
w= w1/pi;
figure
plot (w, abs(h1))
% IR
figure
plot (H1)
xlabel('samples')

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!