[STM32F4] 对采集数据进行FFT处理

[复制链接]
 楼主| WHALEE 发表于 2025-7-23 02:59 | 显示全部楼层 |阅读模式
本帖最后由 WHALEE 于 2025-7-29 22:27 编辑

我需要对 采集的传感器数据进行FFT处理。用的是STM32F446RE开发板和STM32Cube IDE。
请教如何使用CMSIS DSP库来实现这一功能。

公羊子丹 发表于 2025-7-23 07:24 | 显示全部楼层
我之前也用过 F446 做过 FFT,用 CMSIS DSP 库挺方便的,主要是准备好输入格式就行了。
周半梅 发表于 2025-7-23 07:26 | 显示全部楼层
采样点数选好了没?FFT 的点数最好是 2 的幂次方,效率会高不少。
帛灿灿 发表于 2025-7-23 07:28 | 显示全部楼层
先别忘了加窗函数啊,不然频谱泄漏很明显,Hanning 或 Hamming 都行。
童雨竹 发表于 2025-7-23 07:30 | 显示全部楼层
你打算把 FFT 做在中断里跑吗?有考虑处理时间够不够吗?
万图 发表于 2025-7-23 07:32 | 显示全部楼层
CubeMX 里直接勾上 CMSIS DSP 库就行了,头文件和链接都省心多了。
Wordsworth 发表于 2025-7-23 07:34 | 显示全部楼层
我当时调试的时候输出实部和虚部分开看了下,结果才对得上,建议你也试试。
Bblythe 发表于 2025-7-23 07:36 | 显示全部楼层
做完 FFT 后要记得对幅值做归一化,不然数值大小会有偏差。
Pulitzer 发表于 2025-7-23 07:38 | 显示全部楼层
STM32 的单精度浮点运算还是挺快的,F4 有 FPU,尽量用浮点版的 FFT。
Uriah 发表于 2025-7-23 07:40 | 显示全部楼层
频谱结果用串口打出来看看挺方便的,我是连 PC 画的图形化界面。
Uriah 发表于 2025-7-23 07:42 | 显示全部楼层
有空可以把你的工程贴出来,大家帮你一起看看哪里可以优化。
kzlzqi 发表于 2025-7-27 14:07 | 显示全部楼层
如果对精度要求不高,可考虑使用定点 DSP 函数(如arm_cfft_q15)进一步提高速度
小夏天的大西瓜 发表于 2025-7-27 21:42 | 显示全部楼层
FFT还是非常不错的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

38

主题

38

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

38

主题

38

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部