diff --git a/firFilter.m b/firFilter.m index 9b5ab97..467e2b2 100644 --- a/firFilter.m +++ b/firFilter.m @@ -34,4 +34,12 @@ freqz(b, a, 1024, samplingFreq); title('Frequency Response of FIR Filter'); grid on; +% Plot impulse response +figure; +impz(b, a); +title('Impulse Response of FIR Filter'); +xlabel('Samples (n)'); +ylabel('Amplitude'); +grid on; + end diff --git a/main.m b/main.m index dd56ec4..044c6e4 100644 --- a/main.m +++ b/main.m @@ -23,7 +23,11 @@ plotRawSignal(X, Fs); [f, power] = frequencySpectrum(X, Fs, 1); % set 1 to plot % ======== Apply a bandpass filter ============== -[filteredSignal, Z, P] = iirFilter(10, [5 20], X, Fs, 1); +% [filteredSignal, Z, P] = iirFilter(10, [5 20], X, Fs, 1); + +% ======== Apply FirFilter =============== +filteredSignal = firFilter(30, [5 20], X, 200); % for a 30th-order bandpass FIR filter + plotFilteredSignal(filteredSignal, Fs); end