24小时热门版块排行榜    

查看: 320  |  回复: 3
当前主题已经存档。

loulou85

铜虫 (正式写手)

[交流] 【求助】傅里叶变换

我们用的是采集卡采集连续信号,采样率25MHZ,采集数据10000个,采集完后保存到文本文档,这10000个点只有100个点是信号,其余的都是幅值0左右的噪声,我想做这个信号的傅里叶变换,请教这个程序哪里有问题
数据已经读取到h1,上面的程序不再写了

for i=1:dtnum
x2=h1(i,[1000:2000]);
   k=10000;
   x2k=fft(x2,20000);
   y=abs(x2k);
   f=(0:length(x2k)-1)'*2.5*10^8/length(x2k);
subplot(2,1,2)
plot(f,y);
title('频谱')
axis([0, 1*10^7, 0, 2*10^4])
xlabel('Hz')
  i=i+1;
   
end
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qianbh

至尊木虫 (著名写手)

★ ★ ★ ★ ★ ★ ★ ★
loulou85(金币+2,VIP+0):没用过vb呀 最好是matlab的 3-29 09:55
loulou85(金币+6,VIP+0):333333 4-7 20:36
提供一个本人用过的VB程序
'☆供分析调用的程序——FOUR1的过程☆
Public Sub FOUR1(DATA() As Double, NN As Integer, ISIGN As Integer)
      N = 2 * NN
      j = 1
      For I = 1 To N Step 2
          If j > I Then
              TempR = DATA(j)
              TempI = DATA(j + 1)
              DATA(j) = DATA(I)
              DATA(j + 1) = DATA(I + 1)
              DATA(I) = TempR
              DATA(I + 1) = TempI
          End If
          M = N / 2
          While M >= 2 And j > M
              j = j - M
              M = M / 2
          Wend
          j = j + M
      Next I
      Mmax = 2
      While N > Mmax
          Istep = 2 * Mmax
          Theta = 6.28318530717959 / (ISIGN * Mmax)
          Wpr = -2# * Sin(0.5 * Theta) ^ 2
          Wpi = Sin(Theta)
          Wr = 1#
          Wi = 0#
          For M = 1 To Mmax Step 2
              For I = M To N Step Istep
                  j = I + Mmax
                  TempR = CSng(Wr) * DATA(j) - CSng(Wi) * DATA(j + 1)
                  TempI = CSng(Wr) * DATA(j + 1) + CSng(Wi) * DATA(j)
                  DATA(j) = DATA(I) - TempR
                  DATA(j + 1) = DATA(I + 1) - TempI
                  DATA(I) = DATA(I) + TempR
                  DATA(I + 1) = DATA(I + 1) + TempI
              Next I
              Wtemp = Wr
              Wr = Wr * Wpr - Wi * Wpi + Wr
              Wi = Wi * Wpr + Wtemp * Wpi + Wi
          Next M
          Mmax = Istep
      Wend
End Sub
2楼2009-03-29 08:59:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

loulou85

铜虫 (正式写手)

要matlab 不要vb
3楼2009-03-29 10:04:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guoyuanlg

银虫 (小有名气)

★ ★
loulou85(金币+2,VIP+0):3Q3Q 4-7 20:36
fft就可以吧!
4楼2009-04-03 15:59:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 loulou85 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见