function osciloscopio ( signal,SYS,flag,simulacion,nf,nc,aux ) %========================================================================== % Simula un osciloscopio que representa en el dominio del tiempo y la % frecuencia las señales recibidas de la función gráfica.m %========================================================================== %%%%%%%%%%% Representación en el tiempo %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Lmax = length(signal(1:SYS.Ls)) ; tmax = length(signal(1:SYS.Ls))/SYS.fs ; t=linspace(0,tmax,Lmax) ; if (aux==0) if (flag~=1 && flag~=4) subplot(nf,nc,simulacion) end plot(t,abs(signal(1:Lmax))) title('Amplitud señal') else subplot(nf,nc,simulacion+1), plot(t,abs(signal(1:Lmax))) title({'Amplitud señal con IBO',SYS.IBO(simulacion)}) end axis([0 tmax 0 1.1*max(abs(signal))]) xlabel('tiempo(s)') ylabel('nivel (V)') axis square %%%%%%%%%%% Representación en frecuencia %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Nfft=2^((nextpow2(length(signal(1:SYS.L)))+4)); S_f = fftshift((fft(signal(1:SYS.L),Nfft))); f = linspace(-SYS.fs/2,SYS.fs/2,length(S_f)); if (aux==0) if (flag~=1)&&(flag~=4) subplot(nf,nc,simulacion+nc) end if (flag==1)||(flag==4) figure() end plot(f,20*log10(abs(S_f))) title('Espectro señal') else subplot(nf,nc,simulacion+nc+1),plot(f,20*log10(abs(S_f))) title({'Espectro señal con IBO',SYS.IBO(simulacion)}) end axis([-0.75*SYS.Bprincipal 0.75*SYS.Bprincipal -20 max(20*log10(abs(S_f)))]) xlabel('f(Hz)') ylabel('nivel(dB)') axis square end