ARM官方的FIR滤波器,IIR滤波器函数边计算边添加数据的方法,计算大量数据时有效降
具体实现参考DSP教程的: 第37章 FIR滤波器实现配套例子即可,这个例子在教程中有简单讲解。http://www.armbbs.cn/forum.php?mod=viewthread&tid=3886
************************************************************************************************
比如我们要求解320点数据的FIR滤波,可以通过下面这种方式分多次进行,从而节省RAM空间。
#define TEST_LENGTH_SAMPLES320 /* 采样点数 */
#define BLOCK_SIZE 32 /* 这里是调用一次arm_fir_f32处理的采样点个数 */
uint32_t numBlocks = TEST_LENGTH_SAMPLES/BLOCK_SIZE; /* 需要调用arm_fir_f32的次数 */
实际调用函数的时候采用下面的方式即可:
/* 实现FIR滤波,共调用numBlocks次*/
for(i=0; i < numBlocks; i++)
{ arm_fir_f32(&S, inputF32 + (i * blockSize), outputF32 + (i * blockSize), blockSize);
}
详细的实现可以看第37章配套的例子。 请问BLOCK_SIZE的大小会影响最终的滤波效果吗?
回 randolph 的帖子
randolph:请问BLOCK_SIZE的大小会影响最终的滤波效果吗? (2016-05-26 10:30) images/back.gif没有,你可以测试下。
页:
[1]