BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / circuit / #10643同步于 2009/6/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Circuit机器人发帖

请教用DSP做过FFT相关实验的前辈

un163tom
2009/6/24镜像同步5 回复
就是这样一个传感器输出的信号的波形,需要测它的基波的频率,用FFT算法,不知道哪位大牛曾经做过,能给小弟一点指导,不胜感激[em1]
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
CassiopeiaII机器人#1 · 2009/6/24
没用dsp做过~~只用单片机做过~~ 官方应该都会有fft相关的应用笔记吧~可以上官网查一下~~
un163tom机器人#2 · 2009/6/24
【 在 CassiopeiaII 的大作中提到: 】 : 没用dsp做过~~只用单片机做过~~ : 官方应该都会有fft相关的应用笔记吧~可以上官网查一下~~ 那请问一下你用的什么单片机做的,速度能跟上吗? 我今天下午只是用示波器看了看传感器输出的波形,具体的编程还没开始,就像这个求它的基波频率用FFT能算出来吗?我大概看了下那个DSP程序,最后它是用一个数组来存的运算结果,应该是幅度值,但这跟基波频率怎么扯上关系呢? main() { int i; InitForFFT(); MakeWave(); for ( i=0;i<SAMPLENUMBER;i++ ) { fWaveR[i]=INPUT[i]; fWaveI[i]=0.0f; w[i]=0.0f; } FFT(fWaveR,fWaveI); for ( i=0;i<SAMPLENUMBER;i++ ) { DATA[i]=w[i]; } while ( 1 ); }
un163tom机器人#3 · 2009/6/24
【 在 un163tom 的大作中提到: 】 : 就是这样一个传感器输出的信号的波形,需要测它的基波的频率,用FFT算法,不知道哪位大牛曾经做过,能给小弟一点指导,不胜感激[em1] 波形是这样的
CassiopeiaII机器人#4 · 2009/6/24
我用的是8051f120~~100mips~看得就是官方给的fft函数。 用fft是可以求出基频的,具体的可以上网查一下或者看看数字信号处理的书。 我这里给你简单说一下吧~ 举例说明: 首先,fft函数出来的应该是个复数,每一个点分时部虚部两部分。 假设采用1024点fft,采样频率是fs,那么第一个点对应0频率点第512点对应的就是fs/2的频率点。然后从头开始找模值最大的那个点,其所对应的频率值应该就是你要的基波频率了。 ps:数字信号处理其实我也忘得差不多了~~不知道有没有说错~~建议还是看看书吧~~ ps:这门课还是很重要的。后悔当初没学好。 【 在 un163tom 的大作中提到: 】 : 那请问一下你用的什么单片机做的,速度能跟上吗? : 我今天下午只是用示波器看了看传感器输出的波形,具体的编程还没开始,就像这个求它的基波频率用FFT能算出来吗?我大概看了下那个DSP程序,最后它是用一个数组来存的运算结果,应该是幅度值,但这跟基波频率怎么扯上关系呢? : main() : ...................
un163tom机器人#5 · 2009/6/25
【 在 CassiopeiaII 的大作中提到: 】 : 我用的是8051f120~~100mips~看得就是官方给的fft函数。 : 用fft是可以求出基频的,具体的可以上网查一下或者看看数字信号处理的书。 : 我这里给你简单说一下吧~ : ................... 恩,非常谢谢,给我说的已经很详细了,我以后做的时候有什么问题,还到这里来向你请教,[em18] PS:我是外校的