STM32
直播中

康大争

8年用户 2258经验值
私信 关注
[问答]

STM32 FFT计算得到的相位谱与matlab计算的不一致是什么原因造成的?

STM32 FFT计算得到的相位谱与matlab计算的不一致?

回帖(1)

李鸿洋

2024-4-18 18:18:31
有多种可能的原因导致STM32 FFT计算得到的相位谱与Matlab计算的不一致:

1. 输入数据不一致:可能是因为STM32和Matlab使用了不同的输入数据,比如采样频率、采样点数、输入信号等不同。

2. 窗函数不一致:FFT计算中常常会使用窗函数对输入信号进行加窗处理,不同的窗函数会对结果产生不同的影响。如果STM32和Matlab使用了不同的窗函数,则结果会有差异。

3. FFT算法不一致:Matlab和STM32可能使用了不同的FFT算法,比如快速傅里叶变换(FFT)算法的变种。不同的算法在计算过程中可能会有不同的优化策略和近似方法,从而导致结果的差异。

4. 数据处理不一致:在计算相位谱时,可能需要对结果进行进一步的处理,比如取对数、平滑、归一化等。如果STM32和Matlab的处理过程不一致,则结果会不同。

为了找到具体原因,可以逐步排查以上可能的问题,比较STM32和Matlab的输入数据、窗函数、FFT算法和结果处理过程是否一致,以确定差异出现的原因。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分