clc; %% BAND-PASS FILTER
clear all;
close all; wn= [wp ws];
b = fir1(n, wn, y);
rp = 0.04; [h,o] = freqz(b,1,256);
rs = 0.05; m = 20*log10(abs(h));
fp = 1500; subplot(2,2,3);
fs = 2000; plot (o/pi,m);
f = 9000; ylabel('gain in db-->');
xlabel(' (c) normalised frequency--
wp=2*fp/f; >');
ws=2*fs/f; title ('BAND-PASS FILTER');
num = -20*log10(sqrt(rp*rs)) -13; %% BAND-STOP FILTER
dem = 14.6*(fs-fp)/f;
b = fir1(n, wn, 'STOP', y);
n = ceil(num/dem); [h, o] = freqz(b,1,256);
n1=n+1; m=20*log10(abs(h));
if (rem(n, 2)~=0) subplot (2,2,4);
n1=n; plot (o/pi,m);
n=n-1; ylabel('gain in db-->');
end xlabel(' (d) normalised frequency--
>');
y=hamming(n1); title('BAND-STOP FILTER');
%% LOW-PASS FILTER
b = fir1(n, wp, y);
[h,o] = freqz(b,1,256);
m=20*log10(abs(h));
subplot (2,2,1);
plot (o/pi,m);
ylabel('gain in db-->');
xlabel(' (a) normalised frequency--
>');
title('LOW-PASS FILTER');
%% HIGH-PASS FILTER
b = fir1(n, wp, 'HIGH',y);
[h,o] = freqz(b,1,256);
m = 20*log10(abs(h));
subplot (2,2,2);
plot (o/pi,m);
ylabel('gain in db-->');
xlabel(' (b) normalised frequency--
>');
title('HIGH-PASS FILTER');