请问如何提高ADC采集信号后做数字滤波的速度

2019-07-14 14:48发布



       我现在使用的芯片STM32F746,遇到的问题是我ADC采集到信号后要做一次FFT,但是我想在加窗之后,做FFT之前加一个数字滤波,由于我的数据量有点大,又希望能尽量的快,而我自己写的滤波函数无法达到要求。
       所以我想请教下,ST是否有成熟的数字滤波的库函数可以直接调用?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
8条回答
青上也
2019-07-15 02:24
滔滔不绝的滔滔 发表于 2019-1-4 19:16
直接软件计算不就得了。
比如你是一直以1.8M速度采集不停,可以设置DMA保存ADC数据,比如设置DMA的缓冲为100,开传输过半中断,即采集了50个数据之后进入中断,逐个处理滤波,同时不影响后50个数据的采集与保存。然后全部传输完了之后再滤波处理一下后50个数据。
保证所有的数据流并行走,用F7应该是来得及的。注意优化一下 ...

嗯,我这个有点特别啊,是ADC要一步采64个点的数据,然后对这64个数据进行去直流加窗滤波做FFT,中间是不能断的,需要连续的。目前使用的是DSP库里面的FIR滤波函数,开了优化先验证下。

一周热门 更多>