资源简介
FFT算法的C语言实现(在单片机上验证通过)
代码片段和文件信息
#include
#include “fft_int.h“
//此代码来源《数字信号处理C语言程序集》殷福亮、宋爱军,沈阳:辽宁科学技术出版社,1997.7
//数组x存储时域序列的实部,数组y存储时域序列的虚部
//n代表N点FFT,sign=1为FFT,sign=-1为IFFT
extern int x[32];
extern int y[32];
void FFT( int x[] int y[]int nint sign)
{
int ijklmn1n2;
double cc1ess1ttrti;
//unsigned char cc1ess1ttrti;
//unsigned char ijklmn1n2;
//Calculate i = log2N
for(j = 1i = 1; i<32; i++)
{
m = i;
j = 2*j;
if(j == n)
break;
}
//计算蝶形图的输入下标(码位倒读)
n1 = n - 1;
for(j=0i=0; i {
if(i {
tr = x[j];
ti = y[j];
x[j] = x[i];
y[j] = y[i];
x[i] = tr;
y[i] = ti;
}
k = n/2;
while(k<(j+1))
{
j = j - k;
k = k/2;
}
j = j + k;
}
//计算每一级的输出,l为某一级,i为同一级的不同群,使用同一内存(即位运算)
n1 = 1;
for(l=1; l<=m; l++)
{
n1 = 2*n1;
n2 = n1/2;
e = 3.1415926/n2;
c = 1.0;
s = 0.0;
c1 = cos(e);
s1 = -sign*sin(e);
for(j=0; j {
for(i=j; i
- 上一篇:文件读写的三种方式比较.cpp
- 下一篇:火车票订票系统模拟 (C 语言)
相关资源
- 火车票订票系统模拟 (C 语言)
- 有源噪声控制FxLMS算法C语言程序
- C语言计算器界面
- C语言实现傅里叶变换
- 算术编码,C语言实现
- 用C语言实现任意矩阵的相乘
- C语言实现唯一可译码
- 数字图像处理算法C语言实现.
- C语言:powell鲍威尔法;
- 雅克比迭代法 c语言实现计算方法
- 基于C语言的快速傅里叶变换FFT算法含
- 基于C语言的BPSK
- 单项选择标准化考试系统 C语言版
- c语言解决迷宫问题
- HDB3码C语言实现
- C语言潮流计算
- C语言贪吃蛇小游戏
- KLT(C语言)
- c语言流程图生成器
- 数据结构严蔚敏C语言第二版习题答案
- 操作系统进程调度算法——短作业优
- 飞机订票系统课程设计报告及源代码
- C语言面试题附带答案解析
- 数据结构的二叉树用C语言实现的代码
- C语言扫雷课程设计报告
- 文章编辑数据结构课程设计c语言编写
- 基于51单片机Max7219驱动8×8点阵PROTEU
- C语言 个人通讯录管理系统
- 飞秋基于c语言实现
- C语言实现矩阵的行阶梯,行最简变换
评论
共有 条评论