打印
[STM32F4]

求教:ADC采集交流信号后利用DSP库做FFT

[复制链接]
2189|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
LSLDAY|  楼主 | 2018-8-24 16:30 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
计算交流信号的有效值,需要用到哪些函数?是不是  arm_cfft_f32();   arm_rms_f32()     这两个函数就可以?   

FFT.png (32.2 KB )

FFT.png
沙发
sky.sun.zz| | 2018-8-24 16:56 | 只看该作者
板凳
LSLDAY|  楼主 | 2018-8-24 17:16 | 只看该作者
sky.sun.zz 发表于 2018-8-24 16:56
https://bbs.21ic.com/icview-1131010-1-1.html

谢谢回复 ,  我的输入信号为 1.25V的直流偏移 + 幅值0.469V的正弦信号  , ADC是1600HZ采样率  采样32点,所以频率分辨率应该为50HZ吧,“arm_cmplx_mag_f32(ADC_Data,fft_outputbuf,AD_POINTS);    //复数求模得幅值 ”   按道理调用这个函数之后 fft_outputbuf数组的 fft_outputbuf【1】应改为50HZ波形的模值吧   可是通过调试感觉不对。

您能看看我的程序调用的库函数对不对吗? 谢谢了

FFT1.png (358.4 KB )

FFT1.png

使用特权

评论回复
地板
stm32jy| | 2018-8-24 18:23 | 只看该作者
傅立叶变换 fft  我也想做一个频谱灯

使用特权

评论回复
5
sky.sun.zz| | 2018-8-24 20:34 | 只看该作者
LSLDAY 发表于 2018-8-24 17:16
谢谢回复 ,  我的输入信号为 1.25V的直流偏移 + 幅值0.469V的正弦信号  , ADC是1600HZ采样率  采样32点 ...

ST官方的文件解释的很清楚的
STM32F30x_的ADC_采样的傅立叶变换.rar (212.94 KB)

使用特权

评论回复
6
mintspring| | 2018-8-24 23:52 | 只看该作者
不懂这个原理啊,有效值是UI的积分吗

使用特权

评论回复
评论
LSLDAY 2018-8-25 15:40 回复TA
我也不太懂 应该不是吧 
7
稳稳の幸福| | 2018-8-25 21:41 | 只看该作者
需要先搞明白这个正玄信号的有效值定义才行。

使用特权

评论回复
8
稳稳の幸福| | 2018-8-25 21:43 | 只看该作者
有效值定义,就是从能量的角度,把交流信号转化成等效的直流信号。
对于按照正弦/余弦规律变化的交流信号:

向左转|向右转


使用特权

评论回复
9
观海| | 2018-9-7 09:47 | 只看该作者
ADC采集交流信号 硬件电路是怎么接的呢

使用特权

评论回复
评论
LSLDAY 2018-9-7 15:38 回复TA
什么意思? 
10
liaokai| | 2018-10-11 19:36 | 只看该作者
要看库函数的原型定义,最好根据FFT的公式来写了,也不复杂,F4跑的杠杠的,才32点嘛

使用特权

评论回复
评论
LSLDAY 2018-10-20 10:45 回复TA
已经用了ST自带的库了 
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

288

帖子

5

粉丝