|
音信号800Hz FIR低通滤波C语言定点程序
[复制链接]
本帖最后由 Aguilera 于 2017-10-19 21:54 编辑
代码如下:
#include
const int length=180;
void filter(int xin[ ],int xout[ ],int n,int h[ ]);
static int h[19]={399,-296,-945,-1555,-1503,-285,2112,5061,7503,8450,
7503,5061,2112,-285,-1503,-1555,-945,-296,399}; /*Q15*/
static int x1[length+20];
/*低通滤波定点子程序*/
void filter(int xin[ ],int xout[ ],int n,int h[ ])
{
int i,j;
long sum;
for(i=0;i;
for (i=0;i
{
sum=0;
for(j=0;j
xout=sum>>15;
}
for(i=0;i<(n-1);i++) x1[n-i-2]=xin[length-i-1];
}
主程序与浮点的完全一样。
|
|