2016-07-15 84 views
0

我仍然很难理解SDR的概念。我研究了源代码auf sdr#和“Gnuradio rtl_fm”以了解实际实现的想法。目前,我正在使用一个DVBT-USB棒,并从一个c#项目开始,以显示FM无线电频率范围的频谱。该计划运作良好。采样率为2048 KHz时,我可以看到2 MHz的块。 我使用FFTW3计算了2048个样本的傅立叶分析,并获得了不同无线电台的良好峰值。但是,当我分析峰值的频率时,我发现他们的频率已经偏离了几KHz。我认为这个问题是由fft算法造成的,并且使用了Lomont fft(http://www.lomont.org/Software/Misc/FFT/LomontFFT.html)。但是,这并没有解决问题。由Lomont fft获得的峰值也与已知频率不同,尽管这些差异与使用FFTW3的差异不同。 当我将信号送入Gnuradio伴侣fft-sink时,峰值对应于正确的频率。SDR频谱显示问题

是否需要修正因子?

回答

1

最后,我可以解决这个问题:我忘了排序FFT的结果。在完成分类程序后,峰值出现在正确的频率上。