按照原子的教程使用用STM32F407的DSP库中的FFT去对采样值处理,谐波会自己增加,这是什么呢?

2019-07-20 13:16发布

我用STM32F4带的DSP库按照原子哥的教程,采样1024个点进行FFT。用了ADC1,DMA直接传输1024个点,信号发生器输出峰峰值3V,偏移1.5V,300Hz的频率的正弦波。将采样数据处理成这样  进行FFT后变成  有些峰值就已经不是很对了,但大致还差不多,第二次,第三次,第四次后谐波会逐渐增加到几十几百,基波也会从1200+到2800+之间跳动,  ,adc的采样率是肯定大于正弦信号的,求问各位大神有知这是怎么回事的么
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
CX
1楼-- · 2019-07-20 18:10
昨天重新捡起这个工程重新调试了一下,找到了问题所在了。一个特别基础的问题。一个1024个点的数组是从0~1023,循环处理的时候应该写成<=1023或者<1024,但是我直接写成了<1023,那么实际操作只到1022,最后的数一直在叠加导致FFT出来的谐波一直在增加。因为数组太长了调试时只看了前面一部分正常就放过了这一部分,否则可以更早发现问题。
正点原子
2楼-- · 2019-07-20 19:44
 精彩回答 2  元偷偷看……
xinlongyue
3楼-- · 2019-07-20 22:51
楼主可以给我看一下历程吗
hellboyboy
4楼-- · 2019-07-21 00:09
 精彩回答 2  元偷偷看……
胡鹏
5楼-- · 2019-07-21 05:01
 精彩回答 2  元偷偷看……
洋洋阳阳
6楼-- · 2019-07-21 09:13
教程在哪啊

一周热门 更多>