⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 FIR滤波器系数计算 C源码
💻 C
字号:


#include <stdio.h>




main()
{
int i,j,n,n2,band,wn;
double fl,fh,fs,freq;
double h[100];
char fname[40];
FILE *fp;

printf("select one of the four types for FIR digittal filter\n");
printf(" 1 --lowpass;   2 -- highpass\n");
printf(" 2 --bandpass; 4 -- bandstop\n");
scanf("%d",&band);
printf("input the filter order n\n");
scanf("%d",&n);
printf("input low cutoff frequrncy fl\n");
scanf("%lf",&fl);
fh=0.0;
if(band>=3)
{
printf("input high cutoff frequency fh\n");
scanf("%lf",&fh);
}

printf("input sample frequency fh\n");
scanf("%lf",&fs);

printf("select window \n");
printf(" 1 -- retangular;  2 -- tapered rectangular\n");
printf(" 3 --triangular;    4 -- Hanning\n");
printf(" 5 -- Hamming ;   6 -- Blackman\n");
printf(" 7 -- Kaiser\n");
scanf("%d",&wn);

fl=fl/fs;
fh=fh/fs;
firwin(n, band, fl, fh,  wn,  h );
printf("FIR digital filter \n");
printf(" *  *   *  impiluse response  *   *   *\n\n");

n2=n/2;
for(i=0;i<=n2;i++)
{
j=n-i;
printf(" h(%2d) = %12.8lf = h(%2d) \n",i,h[i],j);
}
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -