This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
一直在用28335做FFT进行谐波分析。过程中遇到一些问题,放在这里与大家讨论交流,也有一些问题希望得到大家的解答,希望在相互交流中大家都能更好的解决问题。
我根据论坛的提示首先在TI官网下载了FFT库SPRC081。例程主要看了两个,1、controlsuite中定点库fixpiont中的F2833X REAL FFT。2、使用SPRC081中的dspbox中rfft程序(SPRC081中有一个安装程序,安装后电脑中会有相应的FFT例程文件夹,在CCS打开)。下面分别说一下这两个例程。文档看的是SPRC081中的PDF文件fft_ml.pdf,文件名字是FFT Library。
一、controlsuite中定点库fixpiont中的F2833X REAL FFT。个人觉得该例程有点问题。
1、该例程中有有加窗语句const long win[N/2]=HAMMING32; fft.winptr=(long *)win; 但是在fft.h中只有一个窗,而且点数是32(如下图),但是主程序的分析点数N是512,个人觉得不对。请问大家怎么看待?
2、我在PDF中看到28335做RFFT时,是把2N点实数转换为N点复数进行运算,然后在进行分解,得到最终结果,所以需要split函数,但是该例程中并没有出现split函数,这和PDF描述不同。我在网上看到说现在的TI没有split函数了,这是真的吗,如果这样那算法是怎么进行的呢,希望TI的技术人员能够帮忙解释一下。另外PDF中有两个fftinit函数,这是怎么回事?下图左为PDF,右为程序。
3、该例程中,从程序看,结果只得到了幅值,但是我是想得到所有的幅值、频率、相位,请问如何能得到呢?
二、SPRC081中的dspbox中rfft程序。这个程序和PDF描述基本一致(因为都是从SPRC081解压的)。但是我在学习中也遇到一些不解:
1、从工程配置来看,头文件应该包含的文件,我在相应的文件夹中没有找到相应的头文件,所以在CCS中也显示灰色。我觉得因此编译时提示有的头文件找不到,比如#include <stb.h>。请问大家遇到这样的问题没,还是我安装有问题?
2、该例程中,比特倒序使用的是RFFT32_ACQ方式,程序中对该模块进行了初始化和配置,但是在程序中,还多次使用RFFT32_brev,这样是不是不正确的啊。
3、我看了该例程的CMD文件,和其他的CMD文件差别很大,其中对adc_cal等都没分配地址,下面给出了cmd,这是对28335的配置吗?
这是我在这么多天的实验中的一些看法和疑惑,希望对大家有一点启发,也非常希望的到大家的帮组,尽快解决问题!!!欢迎大家指正和帮组!!!
这里说明一下,今天看了一下SPRC081是2002年的了,已经十几年了,这么久估计TI公司对算法做了很多修改,所以和controlsuite中的例程才有不少差别,之前没看controlsuite中的PDF,今天刚看到,这两天抓紧看一下!!
您好,从网上看到你这篇文章,有几个问题想请教一下。因为不明白FFT的作用,现在想用这个函数来解决问题,但不知道如何开始,请指导一二。
我现在100V交流电压加上20%的谐波,请问我要计算谐波的话,该如何运用上面的函数。我一个周期采样点数为32个点。非常期待能得到你的回答。
若是得直接以邮箱回复,将非常感谢。yushan_hdx@126.com