Autor Tema: Ayuda con componente Comport  (Leído 7609 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado ASTROCAR

  • PIC24F
  • *****
  • Mensajes: 662
Ayuda con componente Comport
« en: 02 de Junio de 2010, 00:46:53 »
Hola buenas noches foristas delphianos, les escribo porque estoy un poco cerrado y tengo un buen tiempo que no uso delphi y el no usado uno pierde la practica en fin estoy usamdo el mensionado componente en delphi el comport y la idea es enviar varios byte al puerto rs232, es decir enviar un buffer de tipo byte por el rs232 pero segun lo que revise solo se puede enviar es str de la siguiente manera:

comport1.writestr('prueba);

la idea seria enviar un valor hex si alguien es tan amable de aclarame el punto en delphi y usando este componente se lo agradesco.
Atten.
Alexander Santana.
Venezuela-Barcelona.
EL APRENDER ES NADA; MEJOR ES COMPARTIR EL APRENDIZAJE

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2479
Re: Ayuda con componente Comport
« Respuesta #1 en: 03 de Junio de 2010, 18:28:49 »
Podés convertir el HEX a String y mandar el String tranquilamente.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado ASTROCAR

  • PIC24F
  • *****
  • Mensajes: 662
Re: Ayuda con componente Comport
« Respuesta #2 en: 04 de Junio de 2010, 07:23:03 »
Podés convertir el HEX a String y mandar el String tranquilamente.

ok prodria ser algo asi

comport1.writestr(char($byte));

donde byte es el valor hex porque si uso hextostr($byte) de esta manera sime da error al compilarlo.

Saludos y gracias por su opinion y mala mia por no someter nada aun a prueba pero hoy lo hago con toda seguridad.
Atten.
Alexander Santana.
Venezuela-Barcelona.
EL APRENDER ES NADA; MEJOR ES COMPARTIR EL APRENDIZAJE

Desconectado ASTROCAR

  • PIC24F
  • *****
  • Mensajes: 662
Re: Ayuda con componente Comport
« Respuesta #3 en: 05 de Junio de 2010, 20:03:37 »
hola buenas noches experimentando con lo planteado tengo esta duda  envio informacion por el rs232 de esta manera:

procedure TForm1.Button4Click(Sender: TObject);
var
i:byte;
begin
for i:=0 to $2 do
begin
comport1.WriteStr(char(buffer));
comport1.Read(data,i);
mphexeditorex1.Data:=data;
mphexeditorex1.Refresh;
end;
end;

como prueba tengo unido el tx con el rx para ver si lo que erstoy enviando llega perfecto y me resulta que el primer byte que envio es 00 y lo demas si es lo correcto nose a que se debe eso.

ejemplo envio:
25 9B AD 1B A6 AA CD 3F 02 AE 18 CD 3F 00 AE 19
CD 3F 00 AD 0A AE 00 D6 FF FF CD 3F 02 20 EA AE
10 5A 26 FD 81 00

y recibo esto:
00 25 9B AD 1B A6 AA CD 3F 02 AE 18 CD 3F 00 AE
19 CD 3F 00 AD 0A AE 00 D6 FF FF CD 3F 02 20 EA AE
10 5A 26 FD 81 00

nose de donde el primer 00 si le ha pasado este caso a alquien porfavor le agradesco su comentario.
Atten.
Alexander Santana.
Venezuela-Barcelona.
EL APRENDER ES NADA; MEJOR ES COMPARTIR EL APRENDIZAJE

Desconectado ASTROCAR

  • PIC24F
  • *****
  • Mensajes: 662
Re: Ayuda con componente Comport
« Respuesta #4 en: 02 de Julio de 2010, 16:35:31 »
Hola nuevamente haciendo pruebas, note que lo que envio si llega perfecto mi problema es en la recepcion que no le doy el tiempo prudente y por eso recibe 00 antes para eso debo colocar un sleep(tiempo);.

ahora en mi aplicacion en particular nose cual es ese tiempo de recepcion ya que yo envio desde la pc atraves de un max232 y eso lo recibe un micro motorola para leer su eeprom y el responde segun lo que le llegue y tiene su tiempo de respuesta cosa que nose como detectarlo; se me ocurre hacer esta parte atraves de un evento de recepcion.

 si alguien tiene informacion al respecto usando delphi y el componente comport se lo agradesco.

Atten.
Alexander Santana.
Venezuela-Barcelona.
EL APRENDER ES NADA; MEJOR ES COMPARTIR EL APRENDIZAJE

Desconectado jfh900

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3595
Re: Ayuda con componente Comport
« Respuesta #5 en: 08 de Agosto de 2010, 22:43:02 »
Hola.

Yo me he peleado con estos componentes.

Te explico la forma de utilizarlo:

1º) Envías una trama de datos con un comienzo y un fin, por ejemplo: 'Start' + <Trama> + 'End', donde "Start" y "End" son cadenas para identificar el comienzo y el fín.
2º) Añades un ComDataPacket y le pones en "StartString" la primera cadena de comienzo y en StopString la cadena de finalización.
3º) En el Evento OnPacket se activará al recibir la trama completa

Puedes configurar ComDataPacket para que te quite la cadena de comienzo y la de fin.

Un saludo
* Cuando hables, procura que tus palabras sean mejores que el silencio.
* 'Todos somos ignorantes, lo que ocurre es que no todos ignoramos las mismas cosas.' Albert Einstein.
* No hay nada peor que un experto para evitar el progreso en un campo
* "La vida es como una novela. No importa que sea larga, sino que esté bien narrada" Seneca
* La vida no se vive por las veces que respiras, sino por los momentos que dejan sin aliento.
* Dios dijo: ∇·E=ρ/ε0 ; ∇·B=0 ; ∇xE=-dB/dt ; ∇xB= μ0ε0dE/dt..y la luz se hizo..!!..

Desde España Jesús

Desconectado ASTROCAR

  • PIC24F
  • *****
  • Mensajes: 662
Re: Ayuda con componente Comport
« Respuesta #6 en: 19 de Noviembre de 2010, 12:13:04 »
Hola.

Yo me he peleado con estos componentes.

Te explico la forma de utilizarlo:

1º) Envías una trama de datos con un comienzo y un fin, por ejemplo: 'Start' + <Trama> + 'End', donde "Start" y "End" son cadenas para identificar el comienzo y el fín.
2º) Añades un ComDataPacket y le pones en "StartString" la primera cadena de comienzo y en StopString la cadena de finalización.
3º) En el Evento OnPacket se activará al recibir la trama completa

Puedes configurar ComDataPacket para que te quite la cadena de comienzo y la de fin.

Un saludo

Hola buenos dias hermano y disculpa lo tarde, oye podrias dar una breve explicacion del uso de camdatapacket.

Saludos y estamos en contacto.
Atten.
Alexander Santana.
Venezuela-Barcelona.
EL APRENDER ES NADA; MEJOR ES COMPARTIR EL APRENDIZAJE

Desconectado Rseliman

  • PIC16
  • ***
  • Mensajes: 236
Re: Ayuda con componente Comport
« Respuesta #7 en: 01 de Julio de 2013, 15:29:33 »
Hola Amigos ...hace un tiempo que estoy peleando con el componente Tcomport ..quiero recibir unos datos de sensor de temperatura que vienen de un micro a la pc ...y uso este componente ...la idea es mostrarlo en un Edit.text ...los datos llegan de a 3 caracter por caracter ..si coloco edit.text := Edit.text +str ; los veo pero van uno detras de otro y me llenan el edit ...en cambio si pongo edit.text:= str ; solo veo de a un caracter ...el ultimo supongo ...me explico ??

Asi es como lo uso

procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
begin

           ComPort1.ReadStr(Str,Count);

           Edit1.text := Str;

end;


Alguien me da una mano por favor ??

Muchas gracias
Las Grandes Obras las sueñan los grandes locos , mientras los inutiles las critican !!

Desconectado Rseliman

  • PIC16
  • ***
  • Mensajes: 236
Re: Ayuda con componente Comport
« Respuesta #8 en: 01 de Julio de 2013, 16:57:01 »
Ya lo resolvi con la respuesta de ASTROCAR

Gracias
Las Grandes Obras las sueñan los grandes locos , mientras los inutiles las critican !!

Desconectado eto

  • PIC12
  • **
  • Mensajes: 64
    • Programacion y Electronica
Re: Ayuda con componente Comport
« Respuesta #9 en: 17 de Noviembre de 2014, 19:14:11 »
Hola a todos posteando despues de tiempo.

como prueba tengo unido el tx con el rx para ver si lo que erstoy enviando llega perfecto y me resulta que el primer byte que envio es 00 y lo demas si es lo correcto nose a que se debe eso.

ejemplo envio:
25 9B AD 1B A6 AA CD 3F 02 AE 18 CD 3F 00 AE 19
CD 3F 00 AD 0A AE 00 D6 FF FF CD 3F 02 20 EA AE
10 5A 26 FD 81 00

y recibo esto:
00 25 9B AD 1B A6 AA CD 3F 02 AE 18 CD 3F 00 AE
19 CD 3F 00 AD 0A AE 00 D6 FF FF CD 3F 02 20 EA AE
10 5A 26 FD 81 00

nose de donde el primer 00 si le ha pasado este caso a alquien porfavor le agradesco su comentario.

ASTROCAR no se deberá este error por que tienes unidos el TX y el RX y con lo rápido del envío se está quedando el último "00" en el buffer y es lo primero que recibes en una nueva trama?
No borro mis errores, al contrario los mantengo a la vista para no cometerlos otra vez.

Mi Web

Desconectado soymoe

  • PIC18
  • ****
  • Mensajes: 456
    • El blog de Moe
Re: Ayuda con componente Comport
« Respuesta #10 en: 19 de Noviembre de 2014, 22:51:53 »
Hola Fijate en lo que yo hice: