Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

envio y recepción de tramas por puerto serie

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: envio y recepción de tramas por puerto serie Responder citando

Estoy haciendo un programa para comunicar el PC con una tarjeta de entradas analógicas. Se envían y reciben tramas por el puerto serie. Utilizo las funciones de la API de Windows, pero al recibir se me cuelga la tarjeta y programa termina porque después de un tiempo de espera. No sé si debería utilizar más funciones para controlar mejor la comunicación. Gracias.
Volver arriba
Mensaje    Asunto: envio y recepción de tramas por puerto serie Responder citando

Creo que tu problema podria residir en que la velocidad de transmisión (baudios) no es la misma en tu tarjeta y en tu pc.

Con las funciones API de Windows puedes setear el timeout segun te convenga (ahorita no recuerdo como, pero se puede).

Exactamente que datos transmites a la tarjeta? (es solo curiosidad)

Volver arriba
Mensaje    Asunto: envio y recepción de tramas por puerto serie Responder citando

Gracias por contestar. El PC le envía a la tarjeta paquetes de bytes formados por: la dirección de la tarjeta (seleccionable en ella mediante unos microswitches), el código de operación y la longitud en un mismo byte, bytes de datos y un byte de checksum(suma de los anteriores). La tarjeta primero responde con un eco y luego envía el paquete de respuesta:bytes o bytes de respuesta según el comando y un byte de checksum. Se utiliza una tarjeta conversora RS232 a RS485, que es el protocolo utilizado por la tarjeta.
Volver arriba
Mensaje    Asunto: envio y recepción de tramas por puerto serie Responder citando

Yo tube que hacer un proyecto parecido, tambien con un convertidor de 232 a 485,
El tema es que 485 debe saber cuando va a recibir y cuando va a transmitir, para ello tendras que emplear un bit determidado del puerto serie, pej. DTR, RTS, poniendolo a 1 para tx y a cero para rx por ejemplo.

Con la api de windows yo no llegue a saber como tocar estos bits especiales, pero puedes emplear componentes que hay por ahi gratuitos.

Espero haberte sido de ayuda, Un saludo

Volver arriba
Mensaje    Asunto: envio y recepción de tramas por puerto serie Responder citando

Gracias por la ayuda. De todos modos parece que ese no es el problema. He probado a activar y desactivar la línea RTS mediante funciones de la API y además el fabricante proporciona y recomienda utilizar unos drivers que permiten manejar el puerto del PC directamente como si fuera 485 sin preocuparse de la línea RTS, pero aún así la tarjeta no responde.
Volver arriba
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.