📄 filter_coeff_gen.m
字号:
FSover2 = 24000;
Filters = [ 150, 300, 500, 800, 1200, 2000, 4000 ];
TAPS = [ 7, 15, 33, 67, 165, 333 ];
WIDTH = 50;
filters = length (Filters);
for i = 1:length(Filters),
for j = 1:length(TAPS),
b = fir1(TAPS(j),Filters(i)/FSover2);
fn = strcat('Filter_LP_',num2str(Filters(i)),'_',num2str(TAPS(j)),'.dat');
fid = fopen(fn,'w');
for k = 1:TAPS(j) - 1,
fprintf(fid,'%6.10f,\n',b(k));
end
fprintf(fid,'%6.10f\n',b(length(b)));
fclose(fid);
disp(fn);
b = fir1(TAPS(j)+1,Filters(i)/FSover2,'high');
fn = strcat('Filter_HP_',num2str(Filters(i)),'_',num2str(TAPS(j)+1),'.dat');
fid = fopen(fn,'w');
for k = 1:TAPS(j) - 1,
fprintf(fid,'%6.10f,\n',b(k));
end
fprintf(fid,'%6.10f\n',b(length(b)));
fclose(fid);
disp(fn);
b = fir1(TAPS(j),[(Filters(i)/FSover2 - WIDTH/FSover2) (Filters(i)/FSover2 + WIDTH/FSover2)]);
fn = strcat('Filter_BP_',num2str(Filters(i)),'_',num2str(TAPS(j)),'.dat');
fid = fopen(fn,'w');
for k = 1:TAPS(j)-1,
fprintf(fid,'%6.10f,\n',b(k));
end
fprintf(fid,'%6.10f\n',b(length(b)));
fclose(fid);
disp(fn);
b = fir1(TAPS(j)+1,[(Filters(i)/FSover2 - WIDTH/FSover2) (Filters(i)/FSover2 + WIDTH/FSover2)],'stop');
fn = strcat('Filter_BS_',num2str(Filters(i)),'_',num2str(TAPS(j)+1),'.dat');
fid = fopen(fn,'w');
for k = 1:TAPS(j),
fprintf(fid,'%6.10f,\n',b(k));
end
fprintf(fid,'%6.10f\n',b(length(b)));
fclose(fid);
disp(fn);
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -