| 
 | 
 
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册  
 
×
 
在matlab中尝试对离散序列做FFT,并想得到它的振幅谱与PSD; 
 
目前振幅谱的频率与幅度通过整周期采样都是对的; 
 
但是在输出功率谱密度的时候,发现纵坐标的值与输入信号对不上; 
 
其中一信号PSD的对数值有21.1dB,但是我输入信号才0.5v,这个功率值该如何转换到正确的值? 
 
 
Fs=8*10^6; 
N=2048; 
m=0:N-1;t=m/Fs;f1=3906.25;f2=3906.25*10^3; 
xn=sin(2*pi*f1*t)+0.5*sin(2*pi*f2*t); 
yn=abs(fft(xn,N)); 
zn=(2/N)*yn(1:length(yn)/2); 
f=(0 N-1)/2)*Fs/N; 
f_full=(0 N-1))*Fs/N; 
subplot(1,2,1),plot(f,zn); 
pn=10*log10((1/N)*abs((fft(xn,N)).*(fft(xn,N)))); 
sn=pn(1:length(pn)/2); 
subplot(1,2,2),plot(f_full,pn); 
    
    
            
             
            
            
            
 
 
 
 
 |   
 
 
 
 |