domingo, 27 de noviembre de 2011
MODULACION ASK EN MATLAB
function askd(g,f)
%Modulacion ASK
if nargin > 2
error('Too many input arguments')
elseif nargin==1
f=1;
end
if f<1;
error('Frequency must be bigger than 1');
end
t=0:2*pi/99:2*pi;
cp=[];sp=[];
mod=[];mod1=[];bit=[];
for n=1:length(g);
if g(n)==0;
die=ones(1,100);
se=zeros(1,100);
else g(n)=1;
die=2*ones(1,100);
se=ones(1,100);
end
c=sin(f*t);
cp=[cp die];
mod=[mod c];
bit=[bit se];
end
ask=cp.*mod;
subplot(2,1,1);plot(bit,'LineWidth',1.5);grid on;
title('Binary Signal');
axis([0 100*length(g) -2.5 2.5]);
subplot(2,1,2);plot(ask,'LineWidth',1.5);grid on;
title('ASK modulation');
axis([0 100*length(g) -2.5 2.5]);
Suscribirse a:
Enviar comentarios (Atom)
me sale error cuando copio y pego el programa sale esto porque? trings passed to EVAL cannot contain function declarations.
ResponderEliminarme sale error cuando copio y pego el programa sale esto porque? trings passed to EVAL cannot contain function declarations.
ResponderEliminarLo que pasa es que esta es solo un función, no puedes ejecutar como tal una función en Matlab, para ello tienes que abrir un archivo en blanco y mandar a llamar esa función con sus respectivos parámetros de entrada. (OJO, ambos archivos deben estar en la misma carpeta)
Eliminar