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

[复制链接]
2058|7
 楼主| whyil 发表于 2019-9-16 16:21 | 显示全部楼层 |阅读模式
我使用用matlab 的cos(2*pi*5*t+pi/3)函数生成了256点波形的数据
下图示mathlab生成的波形数据

160138zrd5fmddwededwhh.jpg [size=0.83em]TIM截图20190916155947.png (107.55 KB, 下载次数: 0)
下载附件
[color=rgb(153, 153, 153) !important]12 分钟前 上传






我通过stm32和matlab对这段数据进行fft求频谱和相位谱,频谱求出来的结果相似,相位谱差别特别大?这是为啥。

160138beiojimi6gs6ioct.jpg

下图是stm32 printf 出的波形数据
160138wmlilagzchqtajfn.jpg

下图是我的fft 代码
161352gwtvw2yyzpp16yv1.jpg
香水城 发表于 2019-9-16 17:42 | 显示全部楼层
你用 atan2f()试试。
xinpian101 发表于 2019-9-16 21:15 | 显示全部楼层
差别很大吗
xinpian101 发表于 2019-9-16 21:15 | 显示全部楼层
哪个更接近实际的
 楼主| whyil 发表于 2019-9-17 21:20 | 显示全部楼层
香水城 发表于 2019-9-16 17:42
你用 atan2f()试试。

没有用,还是相差特别大 TIM截图20190917211940.png
 楼主| whyil 发表于 2019-9-17 21:22 | 显示全部楼层
xinpian101 发表于 2019-9-16 21:15
哪个更接近实际的

在5Hz点的相位mathlab 和 stm32 fft计算结果是相同的都是60度,但在其他频率计算结果就完全不一样了
labasi 发表于 2019-10-14 15:14 | 显示全部楼层
一点也看不懂啊
paotangsan 发表于 2019-10-14 15:18 | 显示全部楼层
看着好高深啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

49

帖子

0

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