xiaoxiaoze 发表于 2025-6-27 11:38

HC32F460的FFT

使用HC32F460的ADC+DMA+FFT,对输入的正弦信号进行采集变换,使用DSP库总的函数做完FFT变换后,没有得到想要的频谱幅值,可能的原因是什么,有没有大佬知道{:dizzy:}

公羊子丹 发表于 2025-7-31 16:05

FFT结果幅值不对,常见原因是没做归一化处理,记得除以采样点数。

周半梅 发表于 2025-7-31 16:05

采样数据格式和FFT输入格式要一致,比如实数还是复数格式。

帛灿灿 发表于 2025-7-31 16:06

DMA传输的数据缓存对齐和大小要和FFT长度匹配,避免数据错乱。

童雨竹 发表于 2025-7-31 16:07

ADC采样精度和噪声会影响FFT结果,尽量保证采样环境干净。

万图 发表于 2025-7-31 16:08

FFT后要计算幅度谱,通常是对复数FFT结果的实部和虚部做平方根运算。

Wordsworth 发表于 2025-7-31 16:08

有些DSP库需要先做窗函数处理,减少泄露效应,提升频谱精度。

Bblythe 发表于 2025-7-31 16:09

注意采样率设置,频率分辨率和最大频率与你的采样率直接相关。

Pulitzer 发表于 2025-7-31 16:10

FFT长度选取不合理也会影响结果,通常选2的幂次方长度。

Uriah 发表于 2025-7-31 16:10

检查FFT初始化参数,点数、方向等,参数错误会导致结果异常。

Clyde011 发表于 2025-7-31 16:11

调试时可以用已知频率信号做验证,确认FFT部分代码没有问题。

jf101 发表于 2025-7-31 16:31

是不是电机就没有到达合适的频谱

claretttt 发表于 2025-8-4 10:56

ADC的采样率足够高,以满足奈奎斯特采样定理,即采样率至少是信号最高频率的两倍。

febgxu 发表于 2025-8-4 15:22

如果没有使用窗口函数,可能会导致频谱泄漏。

plsbackup 发表于 2025-8-4 20:56

       
FFT点数过小            

hearstnorman323 发表于 2025-8-5 11:16

信号幅度超量程 、偏移失真            

zerorobert 发表于 2025-8-5 13:03

仅基频位置出现显著峰值,其余频点接近0。

cashrwood 发表于 2025-8-5 14:45

检查频率分辨率是否足够高            

jkl21 发表于 2025-8-7 10:54

幅值随信号频率变化            

louliana 发表于 2025-8-7 14:02

未进行ADC偏移校准、增益校准            
页: [1] 2
查看完整版本: HC32F460的FFT