Autor Tema: Duda con rts,cts y buffer del pic con rs232  (Leído 3093 veces)

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

Desconectado sauron

  • PIC12
  • **
  • Mensajes: 78
Duda con rts,cts y buffer del pic con rs232
« en: 01 de Septiembre de 2009, 19:23:05 »
Hola compañeros foristas. Les voy a contar una historia no romántica pero que necesita un héroe de ayuda :D

Imaginénse TRES dispositivos cualesquiera que usan RS232 para enviar y recibir datos, todos conectados a un PIC.
El objetivo del PIC es recibir y enviar los datos de los tres dispositivos entre sí (con RS232).

Voy a usar HandShake (RTS y CTS) para poder controlar el flujo de datos porque no quiero perder ningun dato, y de aquí viene la duda:

El dispositivo 1 le dice al PIC que quiere enviar datos y el PIC acepta y éste empieza a recibir, SUPONGAMOS que la variable char del PIC se llena (voy a usar el 16F876 y la RAM máxima es de 368) y tengo que decirle al dispositivo 1 (por CTS) que de pausa del envío de datos, mientras el PIC pasa los datos al dispositivo 2, luego volver al dispositivo 1 y que siga el envío de datos hasta que termine.

¿Lo anterior se puede hacer SIN que se pierda algun dato??, ya que un dispositivo va a estar conectado al UART pero los otros dos van a sendos RS232 emulados del pic.

Que opinan compañeros? ;-)

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Duda con rts,cts y buffer del pic con rs232
« Respuesta #1 en: 01 de Septiembre de 2009, 22:20:38 »
Hola si que se pude, lo unico a tener en cuenta es que desahilites la recepcion de datos a un porcentaje del tamaño del buffer de recepcion, digamos al 90 % y los vuelvas a habilitar al 10 %.

Saludos !

Desconectado sauron

  • PIC12
  • **
  • Mensajes: 78
Re: Duda con rts,cts y buffer del pic con rs232
« Respuesta #2 en: 02 de Septiembre de 2009, 19:50:53 »
Hola si que se pude, lo unico a tener en cuenta es que desahilites la recepcion de datos a un porcentaje del tamaño del buffer de recepcion, digamos al 90 % y los vuelvas a habilitar al 10 %.

Saludos !

Hola compañero richi777, gracias por tu opinión, entonces le voy a empezar a dar con eso, quería tener la certeza de que no se pierden los datos para entonces darle con ese proyecto. Creo que otra cosa obvia es que los dispositivos deben tener su buffer en su propio puerto, ya que como voy a emular el rs232 en el pic, allí se perderían los datos.......creo que así es la cosa no? ;-)

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: Duda con rts,cts y buffer del pic con rs232
« Respuesta #3 en: 02 de Septiembre de 2009, 20:36:05 »
Buena respuesta Richi.
Agrego una duda:
Porque no utilizar un bus RS485 y hacer que el Pic administre solo parte de los datos??
Es decir, la información que envía un dispositivo que le interesa a otro que la lea directo, y el resto que lo maneje el PIC.

O ese PIC estará haciendo traducciones de protocolos??
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: Duda con rts,cts y buffer del pic con rs232
« Respuesta #4 en: 02 de Septiembre de 2009, 20:48:27 »
Hola, si tenes que tener buffers, investiga sobre buffers circulares o colas, asi se deben implementar los buffers series.

Saludos !

Desconectado sauron

  • PIC12
  • **
  • Mensajes: 78
Re: Duda con rts,cts y buffer del pic con rs232
« Respuesta #5 en: 02 de Septiembre de 2009, 21:58:46 »
Buena respuesta Richi.
Agrego una duda:
Porque no utilizar un bus RS485 y hacer que el Pic administre solo parte de los datos??
Es decir, la información que envía un dispositivo que le interesa a otro que la lea directo, y el resto que lo maneje el PIC.

O ese PIC estará haciendo traducciones de protocolos??

Hola MGLSOFT, gracias por tu opinión. Ya que comentas sobre el RS485, usar éste protocolo es a futuro, por el momento se va a implementar el RS232, digamos que es un proyecto por partes...es parte de mi tesis en la univ.  ;-)

El PIC solo va a hacer el papel de un "fiscal o policía de tránsito" o "un puente con semáforo", según la data que le entre por el puerto X, la va a reenviar al puerto Y o Z y así entre ellos, la data no se va a modificar, solo leer tal cual y enviar.

Creo que para algunos ésto será como una pequeña colina, pero para mi en éstos momentos es una montaña bien alta :mrgreen:

....voy a leer sobre los buffers circulares..gracias Richi777 ...según vaya haciendo les comento, al final les publico la obra.

Desconectado lypinss

  • PIC10
  • *
  • Mensajes: 10
Re: Duda con rts,cts y buffer del pic con rs232
« Respuesta #6 en: 20 de Marzo de 2011, 08:50:11 »
buenas a todos yo tambien tengo un problemilla con el control de flujo y es que no tengo muy claro como hacerlo, si alguien pudiera poner un ejemplillo entero no estaria nada mal.

Saludos y muchas gracias


 

anything