Ver Mensaje Individual
  #1  
Antiguo 09-11-2006
juanpa130679 juanpa130679 is offline
Registrado
 
Registrado: nov 2006
Posts: 1
Reputación: 0
juanpa130679 Va por buen camino
problemas con comport

Hola, mi problema es el siguiente, a ver si alguien me puede ayudar porque estoy desesperado.

Resulta que estoy mandando informacion atraves del puerto USB a un procesador 'PIC', y estoy utilizando el componente Comport. Hasta ahora todo iba bien y podia establecer una comunicacion bidireccional entre Pc y Pic.

Mi problema surge cuando a la vez que mando al Pic una informacion con writeStr(), para activar salidas digiales del PIC, intento encender un led en el programa, o cambiar un label, o un edit....... no me hace nada hasta que termina de ejecutar el programita de encendido de leds. Necesito que a la vez que se activan las salidas digitales en el PIC , tb se me activen en mi PC.

Podeis ayudarme, o al menos orientarme para saber que puede estar pasando???

os adjunto el procediemiento de activacion secuencial las salidas..... que es donde me falla ahora mismo. Gracias.



////////////////////////////////////////////////////////////////////////////////////////
procedure TForm3.Button1Click(Sender: TObject);
var
parada:integer;
veces: Integer;
n:integer;

begin
n:=1;
for veces := 1 to 5 Do
begin

for parada := n to 5 Do
begin
Case parada of
1: begin
Form1.Comport1.WriteStr('*A01'+#13);
Form1.Comport1.WriteStr('*A11'+#13);
form1.ComPort1.Close;
Form3.mLED9.state:=lson;
form3.mLED10.State:=lson;
n:=n+1;
break;

end;

2: begin
espera(1);
Form1.Comport1.WriteStr('*A21'+#13);
Form1.Comport1.WriteStr('*A31'+#13);
Form1.ComPort1.Close;
Form3.mLED11.State:=lsOn;
Form3.mLED12.State:=lsOn;
n:=n+1;
break;
end;

3: begin
espera(1);
Form1.comport1.Open;
form1.ComPort1.Port:='Com6';
Form1.Comport1.WriteStr('*A41'+#13);
Form1.Comport1.WriteStr('*A51'+#13);
Form1.ComPort1.Close;
Form3.mLED14.State:=lsOn;
Form3.mLED13.State:=lsOn;
n:=n+1;
break;
end;
4: begin
espera(1);
Form1.comport1.Open;
form1.ComPort1.Port:='Com6';
Form1.ComPort1.WriteStr('*A61'+#13);
Form1.ComPort1.WriteStr('*A71'+#13);
form1.ComPort1.Close;
Form3.mled15.state:=lson;
form3.mled16.state:=lson;
n:=n+1;
break;
end;
5: begin
Espera(2);
Form1.comport1.Open;
form1.ComPort1.Port:='Com6';
FOrm1.ComPort1.WriteStr('*A00'+#13);
Form1.ComPort1.WriteStr('*A10'+#13);
Form1.ComPort1.WriteStr('*A20'+#13);
Form1.ComPort1.WriteStr('*A30'+#13);
Form1.ComPort1.WriteStr('*A40'+#13);
Form1.ComPort1.WriteStr('*A50'+#13);
Form1.ComPort1.WriteStr('*A60'+#13);
Form1.ComPort1.WriteStr('*A70'+#13);

Form3.mled9.state:=lsoff;
Form3.mled10.state:=lsoff;
Form3.mled11.state:=lsoff;
form3.mled12.state:=lsoff;
Form3.mled13.state:=lsoff;
form3.mled14.state:=lsoff;
Form3.mled15.state:=lsoff;
Form3.mled16.state:=lsoff;
break;
end;
end;
end;

end;
end;

////////////////////////////////////////////////////////////////////////////////
Responder Con Cita