微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微波和射频技术 > RFIC设计学习交流 > ADC matlab code问题

ADC matlab code问题

时间:10-02 整理:3721RD 点击:
下面是我的ADC matlab code,但是不知道为什么频谱很奇怪。
clear;
fs=2*10^8;
time=2*10^(-6);
fin=490000;
N=1024;
Vdd=2;
Vref=0:Vdd/(N-1):Vdd;
t=0:1/fs:time-1/fs;
Vin=sin(2*pi*fin*t)+1;
i=time*fs;
LSB=Vdd/(N-1);
for x=1:1024
for y=1:400
if((Vin(y)>Vref(x)-LSB/2)&&(Vin(y)<Vref(x)+LSB/2))
Vout(y)=Vref(x);
end
end
end
figure
plot(t,Vin);
figure
plot(t,Vout);
window=hann(400);
output=window.'.*Vout;
vol=fft(output);
psd=(vol./(200)).^2;
freq=fs/800:fs/800:fs/2;
figure
semilogx(freq,10*log10(abs(psd)));



本来应该是在输入频率490KHz那个地方有一个peak的,但是现在低于这个频率的地方也很高的amplitude,不知道为什么,求高手解释一下,小弟怀疑是信号处理的code有问题,请指教!

你的bin分辨率够不够哟?采样点数是不是少了点

就是采样点太少了!您一句话我就搞定了!万分感谢啊!方便的话可否加个QQ?谢谢!

回个帖子,求点信元

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top