?? fftfrequencyask.m
字號:
%估計頻率
%
N=input('請輸入FFT變換的點數N=');
Length=input('請輸入序列的長度Length=');
disp('注意:采樣率應大于載波頻率的2倍');
frequency=input('請輸入載波頻率=');
fc=input('請輸入采樣率=');
%frequency=100;%載波頻率
%產生ASK
x=randint(1,Length);
i=0:1:Length;
seq=0;
a=ones(1,fc);
b=zeros(1,fc);
for i=1:Length
if(x(i)==1)
seq=cat(2,seq,a) ;
elseif(x(i)==0)
seq=cat(2,seq,b) ;
end;
end
t=0:1/fc:Length;
y=sin(2*frequency*pi*t);
z1=seq.*y;
z=hilbert(z1);%把信號從實信號變成解析信號
zfft=fft(z,N);
zfftabs=abs(zfft);
f=(0:N-1)*fc/N;
figure
plot(f,zfftabs);
[z_max,w_max] = max(zfftabs);
w_max=(w_max)*fc/N;
title(['頻率是:',num2str(w_max);]);
ylabel('Abs.Magnitude');grid on
xlabel('Frequency(Hertz)');
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -