%Especificaciones fs=[2000 4000]; fp=[500 5000]; fm=12000; Ap=1; As=30; %Se calculan las frecuencias digitales ffp=fp/fm; ffs=fs/fm; %Se modifican las especificaciones para obtener una misma frecuencia %con la menor banda de transición [minimum, idx]=min([ffs(1)-ffp(1) ffp(2)-ffs(2)]); if idx==1 ffp(2)=ffs(2)+minimum; else ffp(1)=ffs(1)-minimum; end %Por la tabla 2 Fp=(ffs(2)-ffs(1))/2; Fs=(ffp(2)-ffp(1))/2; Fo=(ffs(2)+ffs(1))/2; %Cálculo del orden del filtro Ws=1.91; %Se obtiene de la tabla 3 de los apuntes %En este caso vamos a utilizar la ventana de Hamming N=ceil(Ws/(Fs-Fp)); %Frecuencia de corte Fc=1.5*Fp; %Filtro pasobajo n=[-(N-1)/2:(N-1)/2]; hLP=2*Fc*sinc(2*n*Fc); %Se aplica la ventana de Hamming hLP=hLP.*hamming(N)'; %Filtro parabanda hBP=2*cos(2*pi*n*Fo).*hLP; delta=zeros(1,N); delta((N+1)/2)=1; hSB=delta-hBP; [H,F]=freqz(hSB,1,1000,fm); plot(F,20*log10(abs(H)));hold on; plot([fp fs],[-[Ap Ap] -[As As]],'*r');