C语言写的fir滤波器

时间:2018-06-30 04:14:27
【文件属性】:

文件名称:C语言写的fir滤波器

文件大小:46KB

文件格式:DOC

更新时间:2018-06-30 04:14:27

FIR

C语言写的fir滤#include #include #include #include #define pi ((double)3.1415926) struct DESIGN_SPECIFICATION { double Cotoff; double Stopband; double Stopband_attenuation; }; typedef struct { double Real_part; double Imag_Part; } COMPLEX; int Ceil(double input) { if(input != (int)input) return ((int)input) +1; else return ((int)input); } int Complex_Multiple(COMPLEX a,COMPLEX b ,double *Res_Real,double *Res_Imag) { *(Res_Real) = (a.Real_part)*(b.Real_part) - (a.Imag_Part)*(b.Imag_Part); *(Res_Imag)= (a.Imag_Part)*(b.Real_part) + (a.Real_part)*(b.Imag_Part); return (int)1; } int Buttord(double Cotoff, double Stopband, double Stopband_attenuation) { int N; printf("Wc = %lf [rad/sec] \n" ,Cotoff); printf("Ws = %lf [rad/sec] \n" ,Stopband); printf("As = %lf [dB] \n" ,Stopband_attenuation); printf("--------------------------------------------------------\n" ); N = Ceil(0.5*( log10 ( pow (10, Stopband_attenuation/10) - 1) / log10 (Stopband/Cotoff) )); return (int)N; } 波器 可以通过编译


网友评论