打印

FFT的C语言版,附源码哟

[复制链接]
6934|37
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
beyond696|  楼主 | 2012-3-21 19:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 beyond696 于 2012-3-21 20:00 编辑

首先声明程序不是我写的,我只是拿来用,顺便把使用的方法介绍给大家,当然老鸟就直接可以跳过了,程序验证过没有问题,我用它实现了音乐频谱,可以看看我之前发的音乐频谱视频连接。附件里面是源程序。
再次感谢无私奉献给我们程序的人......
性能:
64点  :1.50299ms(CPU时钟72M)
128点 :3.09864ms(CPU时钟72M)
使用方法指导:
1,需要两个文件,fft_fp.c和fft_fp.h
2,根据需求修改fft_fp.h中的采样点数FFT_N,采样点数以宏定义的方式定义
3,外部声明两个全局变量,已经在fft_fp.c中定义
    extern struct compx s[FFT_N];     //FFT输入和输出:从S[0]开始存放,根据大小自己定义
    extern float SIN_TAB[FFT_N/4+1];  //正弦信号表
4,调用create_sin_tab(float *sin_t)函数将正弦信号数据表生成在内存中,比如这样调用create_sin_tab(SIN_TAB);
5,采样数据,将ADC采样的数据按自然序列放在s的实部,虚部为0
6,调用FFT(struct compx *xin)函数开始计算,计算结果也存放在xin中,比如我们这样调用:FFT(s),结果存放在s中
7,计算每个频点的模值,计算方法如下:
    for(i=1;i<FFT_N/2;i++){          //求变换后结果的模值,存入复数的实部部分
        s.real=sqrt(s.real*s.real+s.imag*s.imag)/(i=0?FFT_N:FFT_N/2));
    }
8,大功告成!

FFT的C语言版.rar

3.45 KB

沙发
李富贵| | 2012-3-21 20:04 | 只看该作者
CMSIS库是汇编的吧。

使用特权

评论回复
板凳
beyond696|  楼主 | 2012-3-21 20:09 | 只看该作者
我没用官方的那个库

使用特权

评论回复
地板
laserpic| | 2012-3-21 21:01 | 只看该作者
感谢无私奉献

使用特权

评论回复
5
beyond696|  楼主 | 2012-3-22 09:46 | 只看该作者
http://v.youku.com/v_show/id_XMzY5MzU1Mjg0.html
官方DSP库实现的音乐频谱

使用特权

评论回复
6
selina1983| | 2012-5-23 23:20 | 只看该作者
感谢无私奉献

使用特权

评论回复
7
我来自未来| | 2013-4-13 10:35 | 只看该作者
谢谢楼主的分享,感谢大神们的美德

使用特权

评论回复
8
qq20707| | 2013-4-13 19:27 | 只看该作者
谢谢楼主的分享,感谢大神们的美德

使用特权

评论回复
9
hawksabre| | 2013-4-13 19:36 | 只看该作者
感谢楼主的资料   谢谢了  楼主   呵呵   顶一个

使用特权

评论回复
10
hawksabre| | 2013-4-13 19:37 | 只看该作者
这个很不错的   呵呵    自己的源代码   还是需要好好顶一个   真的很不错   谢谢你的共享

使用特权

评论回复
11
电子小健| | 2013-8-5 16:29 | 只看该作者
非常感谢LZ分享,我正好要用到FFT

使用特权

评论回复
12
cjhk| | 2013-8-5 18:46 | 只看该作者
谢谢了   楼主  很无私   有时间好好看看   

使用特权

评论回复
13
cjhk| | 2013-8-5 18:46 | 只看该作者
顺便谢谢你的共享   希望能多上传一些这样的资料  

使用特权

评论回复
14
huangfeng33| | 2013-8-5 20:05 | 只看该作者
其实我完全看不懂啊●ω●(FFT是不是要看复变函数和数字信号处理?)

使用特权

评论回复
15
huazhongwang| | 2013-8-6 01:26 | 只看该作者
好奇,看看。谢谢楼主

使用特权

评论回复
16
armauk| | 2013-8-6 09:19 | 只看该作者
很好,收藏了

使用特权

评论回复
17
TRUE_ARM| | 2013-8-7 09:26 | 只看该作者
谢谢了

使用特权

评论回复
18
longm| | 2013-8-13 09:20 | 只看该作者
菜鸟问问建立sin表是做什么啊

使用特权

评论回复
19
zlutian| | 2013-8-13 13:39 | 只看该作者
谢谢楼主分享!

使用特权

评论回复
20
3qxj| | 2013-8-14 10:19 | 只看该作者
谢楼主

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:USB转I2C,SPI,CAN,UART,GPIO,PWM,IR,ADC,DAC合一 http://usb2xxx.taobao.com

55

主题

294

帖子

12

粉丝