PDA

Ver la Versión Completa : Ayuda componente para RS232


leoz
11-12-2008, 22:30:46
Hola necesito algun componente que me permita monitorear el puerto rs232
pero no haciendo pooling sino que me genere un evento al registrar actividad
en él. De paso si es posible que tambien me permita enviar datos al mismo.
La idea es para automatizar algunas cosas. Si sirve de algo diré que tengo cierta experiencia en Delphi y he programado en ASM pero hace años y en modo real en las antiguas 8086/88 creo que con algo de esfuerzo podría lograr algo en MS-Dos por su simplesa pero mi ambición es hacerlo en Win
y no sé desarrollar drivers para esto.:confused:

poliburro
11-12-2008, 22:34:58
Yo uso el componente Comport que puedes descargarte de www.torry.net (http://www.torry.net) y me ha dado muy buenos resultados

Suerte

FGarcia
11-12-2008, 23:13:20
Ademas en la busqueda del club hay demasiados hilos con informacion de uso del componente por lo que resulta mas facil de entender su uso.

rretamar
12-12-2008, 11:50:05
Turbopower Async Pro. Es software libre, compatible con casi todas las versiones de Delphi (win32), tiene todo lo que podés necesitar (y mucho más), y lo más importante: tiene una documentación completísima. Al menos para hacer las cosas básicas es muy simple de utilizar.

Se puede descargar de aquí:
http://sourceforge.net/projects/tpapro/

Vale la pena.

Saludos !

fenixariel
12-12-2008, 23:11:53
Bueno en particular para varias aplicaciones compare el componente de la Async Pro con el SerialNG, los 2 son buenos pero prefiero el ultimo.-
para comenzar a usar el Async Pro puedes usar un Edit, un Button y un memo y el componente. En el Evento OnTriggerAvail

procedure TForm1.ApdComPort1TriggerAvail(CP: TObject; Count: Word);
var
I : Word;
C : String;
begin
Memo1.Lines.Add('RECIBIDO :');
for I := 1 to Count do
begin
C := C + ApdComPort1.GetChar; // Aqui puede tomar estos valores para sus nesecidades
//Memo1.Lines.Add(C); // Habilitar esto para mostrar byte por byte
end;
Memo1.Lines.Add(C); // Habilitar esto para mostrar como cadena
Memo1.Lines.Add('')
end;

y en el evento onClick del Button:


procedure TForm1.Button1Click(Sender: TObject);
begin
ApdComPort1.Output:=Edit1.Text;
with Memo1 do
begin
Lines.Add('____________________');
Lines.Add('ENVIADO :');
Lines.Add(Edit1.Text);
Lines.Add('')
end;
end;