TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: championx en 23 de Febrero de 2006, 16:00:00

Título: interrupcion y rs232
Publicado por: championx en 23 de Febrero de 2006, 16:00:00
buenas, que tal, tengo un programa que a partir de una interrupcion en el pin B0 debe leer un caracter que es enviado con getc, el problema es que la interrupcion anda perfecto pero la recepcion no, no siempre lee bien el codigo... si el programa lo hago sin la interrupcion anda perfecto... pero cuando meto el codigo de recepcion dentro de la interrupcion el programa a veces recibe bien y otras mal
Título: RE: interrupcion y rs232
Publicado por: grouchy en 24 de Febrero de 2006, 10:47:00

Hola, pues si podrias publicar el código para verlo con mas detalle, pero por lo que dices puede ser problema de la velocidad del RS232, ¿Estas ocupando el UART del PIc o esta implementado por SOftware?
Título: RE: interrupcion y rs232
Publicado por: omibaya en 03 de Marzo de 2006, 10:38:00
Pues publica el codigo amigo...tal vez estas trabajando con interrupciones, y no puede haber 2 a la vez, o hay una interrupcion del UART o del RB0
Título: RE: interrupcion y rs232
Publicado por: maunix en 03 de Marzo de 2006, 22:04:00
Escrito originalmente por championx
buenas, que tal, tengo un programa que a partir de una interrupcion en el pin B0 debe leer un caracter que es enviado con getc, el problema es que la interrupcion anda perfecto pero la recepcion no, no siempre lee bien el codigo... si el programa lo hago sin la interrupcion anda perfecto... pero cuando meto el codigo de recepcion dentro de la interrupcion el programa a veces recibe bien y otras mal


Fijate si la función esa getc en realidad no espera que se habilite el RCIF!  Si espera esto y nunca llega nada por la USART... entonces estas haciendo las cosas mal.
Título: RE: interrupcion y rs232
Publicado por: jfh900 en 04 de Marzo de 2006, 18:38:00
Repasa este hilo por si te sirve.

http://miarroba.com/foros/ver.php?foroid=46840&temaid=4428090

Suerte.