Autor Tema: Como creo un Timeout para comunicacion rs232 con 16f84a??  (Leído 1950 veces)

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

Desconectado literatronic

  • PIC12
  • **
  • Mensajes: 98
Como creo un Timeout para comunicacion rs232 con 16f84a??
« en: 11 de Mayo de 2007, 12:41:44 »
Agradeceria la ayuda, para crear una rutina que me permita establecer un timeout en una comunicacion rs232.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 17619
    • MicroPIC
Re: Como creo un Timeout para comunicacion rs232 con 16f84a??
« Respuesta #1 en: 12 de Mayo de 2007, 01:24:34 »
Imagino que la recepción la haces utilizando la interrupción RDA y tu interés es que el PIC haga algo cuando lleve un rato sin recibir nada.
En ese caso yo utilizaría un Timer, que cargarías con el tiempo que deseas establecer como Timeout dentro de la interrupción RDA, y en el que tendrías una interrupción por desbordamiento para el tratamiento de ese Timeout.
Un saludo desde Sevilla, España.
Visita MicroPIC                                                                                        ɔ!doɹɔ!ɯ ɐʇ!s!ʌ

Desconectado dhmejia

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 260
Re: Como creo un Timeout para comunicacion rs232 con 16f84a??
« Respuesta #2 en: 12 de Mayo de 2007, 14:52:52 »
El PIC16f84a no tiene USART, por lo tanto tampoco tiene interrupción RDA.  Para el timeout se podría mantener verificando el estado del pic de RX, si se mantiene en alto por mas tiempo que el configurado en el timer entonces se genera la interrupción, si RX cambia a bajo quiere decir que se genero el bit de star, despues de esto el programa debe saltar a la rutina que recibe el dato serial en la cual lo primero que se debe hacer es limpiar el timer para que no se genere la interrupción.

Si el programa debe hacer muchas cosas a la vez y no puede mantenerse verificanco el pin de RX entonces yo recomendaría que este pin fuera el RB0 para usar la interrupción externa configurada en flanco descendente, cuando se genere interrupción externa es porque se recibió el bit de start y se procede a recibir el dato.

Espero haber sido claro.

saludos.
Pereira - Colombia

Desconectado literatronic

  • PIC12
  • **
  • Mensajes: 98
Re: Como creo un Timeout para comunicacion rs232 con 16f84a??
« Respuesta #3 en: 15 de Mayo de 2007, 10:37:21 »
Muchas gracias por la ayuda...
Estoy intentando implementar la segunda sugerencia, si funciona correctamente publicaré el codigo para que sirva de referencia a otros =]

Desconectado neurona74

  • PIC10
  • *
  • Mensajes: 3
Re: Como creo un Timeout para comunicacion rs232 con 16f84a??
« Respuesta #4 en: 17 de Mayo de 2007, 10:03:03 »
Hola Literatronic, yo estoy viendo de implementar algo similar, por lo que te agradecere la publicación de lo que avances..
Gracias


Muchas gracias por la ayuda...
Estoy intentando implementar la segunda sugerencia, si funciona correctamente publicaré el codigo para que sirva de referencia a otros =]

Desconectado Ce.O

  • PIC10
  • *
  • Mensajes: 13
Re: Como creo un Timeout para comunicacion rs232 con 16f84a??
« Respuesta #5 en: 11 de Octubre de 2018, 12:22:51 »
Muchas gracias por la ayuda...
Estoy intentando implementar la segunda sugerencia, si funciona correctamente publicaré el codigo para que sirva de referencia a otros =]

Saludos, sé que ya lleva rato esto. Pero tengo una duda, si te funcionó? Tengo planeado hacer lo mismo y ando buscando información.


 

anything