Vous êtes sur la page 1sur 9

%DELCLARACION PUERTO SERIAL

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
s=serial('COM1','Baudrate',9600);
%s=serial('COM1');
set(s,'timeout',60)
set(s,'terminator',70)
set(s,'inputbuffersize',480012)
set(s,'requesttosend','off')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

fopen(s) %abre el puerto serial


while i=1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%ENVIA DATO X
trama=x
t=whos('trama');% pregunta si hay dato nuevo
%configuracion puerto para enviar
set(s,'outputBufferSize',t.bytes);
set(s,'BaudRate',9600);
set(s,'DataBits',8);
set(s,'Parity','none');
set(s,'StopBits',1);
set(s,'FlowControl','none');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Recepta DATOS
s=num2fixpt(x,sfix(8),2^0,'Nearest');
receptor=fscanf(s); % lee dato micro
fclose(s) % cierra puerto
receptor=strrep(receptor,'F','');% comando kitar F
numero=str2num(receptor); %transforma de string a numero
fopen(s) %abre el puerto serial

%ENVIA DATO Y
trama=y
t=whos('trama');% pregunta si hay dato nuevo
%configuracion puerto para enviar
set(s,'outputBufferSize',t.bytes);
set(s,'BaudRate',9600);
set(s,'DataBits',8);
set(s,'Parity','none');
set(s,'StopBits',1);
set(s,'FlowControl','none');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Recepta DATOS
s=num2fixpt(x,sfix(8),2^0,'Nearest');
receptor=fscanf(s); % lee dato micro
fclose(s) % cierra puerto
receptor=strrep(receptor,'F','');% comando kitar F

numero1=str2num(receptor); %transforma de string a numero


%ENVIA DATO Y
trama=z
t=whos('trama');% pregunta si hay dato nuevo
%configuracion puerto para enviar
set(s,'outputBufferSize',t.bytes);
set(s,'BaudRate',9600);
set(s,'DataBits',8);
set(s,'Parity','none');
set(s,'StopBits',1);
set(s,'FlowControl','none');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

fuzy=readfis('archivofis.fis');
outdf=evalfis([numero;numero1],fuzy)
enviar=num2fixpt(control,sfix(8),2^0,'Nearest')
%enviar=2;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%ENVIA DATOS 0-255
t=whos('trama');% pregunta si hay dato nuevo
%configuracion puerto para enviar
set(s,'outputBufferSize',t.bytes);
set(s,'BaudRate',9600);
set(s,'DataBits',8);
set(s,'Parity','none');
set(s,'StopBits',1);
set(s,'FlowControl','none');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fopen(s)
fprintf(s,'%s',trama)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%fprintf(s,'%s',trama)
pause(0.1)
end
fclose(s)

clear all;
close all;
clc;
PS=serial('COM1');
set(PS,'Baudrate',9600); % se configura la velocidad a 9600 Baudios
set(PS,'StopBits',1); % se configura bit de parada a uno
set(PS,'DataBits',8); % se configura que el dato es de 8 bits, debe estar
entre 5 y 8
set(PS,'Parity','none'); % se configura sin paridad
set(PS,'Terminator','CR/LF');% c caracter con que finaliza el envo
set(PS,'OutputBufferSize',1); % n es el nmero de bytes a enviar
set(PS,'InputBufferSize' ,1); % n es el nmero de bytes a recibir
set(PS,'Timeout',5); % 5 segundos de tiempo de espera
fopen(PS);
variable= fread(PS,1,'uchar');

fclose(PS);
delete(PS);
clear PS;

clear
clc
s=serial('COM2','Baudrate',9600)
fopen(s)
setpoint=1
fwrite(s,setpoint)
pause(0.1)
dato=fscanf(s,'%d')
fclose(s)
delete(s)
clear s

i=0
while i==0
clc
clear
SerPIC = serial('COM2')
set(SerPIC,'BaudRate',9600)
set(SerPIC,'DataBits',8)
set(SerPIC,'Parity','none')
set(SerPIC,'StopBits',1)
set(SerPIC,'FlowControl','none')
fopen(SerPIC)
fprintf(SerPIC,'%s','A')
fclose(SerPIC)
delete(SerPIC)
clear SerPIC
i=input('ingresa i: ')
end

i=0
while i==0
clc
clear
%ENVIO DE DATOS
SerPIC = serial('COM2')
set(SerPIC,'BaudRate',9600)
set(SerPIC,'DataBits',8)
set(SerPIC,'Parity','none')
set(SerPIC,'StopBits',1)
set(SerPIC,'FlowControl','none')
fopen(SerPIC)
fprintf(SerPIC,'%s','1')
fclose(SerPIC)
delete(SerPIC)
clear SerPIC

Vous aimerez peut-être aussi