dir_filter.cpp

来自「c语言版各种fir滤波器的实现」· C++ 代码 · 共 28 行

CPP
28
字号
/**********************************************
* Filename : Dir_filter.CPP                   *
* Function : realization of FIR filter with   *
             direct structure                 *
*Parameter : (h) the coefficients of H(z)     *
			 (z) the inner state variables    *
			 (x) the input data               *
			 (y) the output data              *
			 (n) the number of h[]            *
			 (m) the number of input data     *
**********************************************/

void dir_filter(float h[],float z[],float x[],float y[],int n,int m)
{
	int i,j;
	for(i=0;i<m;i++)
	{
		y[i]=h[0]*x[i]+z[0];
		if(n>1)
		{
			for(j=0;j<n-2;j++)
			{
				z[j]=h[j+1]*x[i]+z[j+1];
			}
			z[n-2]=h[n-1]*x[i];
		}
	}
}

⌨️ 快捷键说明

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