clear % Abtastfrequenz Halbband 44Mhz % Eingangsfrequenz 11Mhz % target freq 310kHz nn = 31*10^5*11 ; % Fensterbreite ff=linspace(0,44e6,nn); %32Bit DDS ph=uint64(0); aaa=zeros(1,nn);% Volle DDS msb=zeros(1,nn);% MSB for(k=1:nn) if(rem(k,100000)==0) disp(nn-k); end; if(rem(k,4)==0) ph=ph+uint64(round(2^32*31/1100)); ph=bitand(ph,uint64(2^32-1)); end; msb(k)=2*(bitand(ph,uint64(2^31))>0)-1; hh=double(ph); hh=fix(hh/2^20); % zeitdiskret, 12Bit hh=cos(2*pi*hh/2^12); hh=fix(hh*2^15); %16 Bit Amplitude aaa(k)= hh; end spmsb=fft(msb); spmsb=spmsb/(max(abs(spmsb))); spaaa=fft(aaa); spaaa=spaaa/(max(abs(spaaa))); bis=max(find(ff<11e6)); plot(ff(1:bis),20*log10(abs(spmsb(1:bis))),'b.-',.... ff(1:bis),20*log10(abs(spaaa(1:bis))),'r.-'); title('DDS 32Bit 11MHz->310kHz blau MSB only, rot 2048er Tabelle, 16Bit') ylabel('[dB]') xlabel('f [Hz]') grid return