16F628A - Interrupciones

Sep 10, 2008 3 Replies

Hola



Esoy trabajando con el pic 16f628a, es mi primer experiencia con un pic y tengo una duda con respecto a la atencion de las interrupciones.



Cuando se lanza una interrupcion, el codigo que escribi la atiende. Cuando el codigo esta atendiendo la interrupcion, se lanza otra interrupcion, el micro corta la ejecucion del codigo asociado a la interrupcion que se esta atendiendo o espera que finalice?



Muchas gracias Saludos.-


Cuando atiende una interrupción GIE lo pone bajo para no atender mas interrupciones, por lo que ejecuta el codigo completo. Cuando retornas con RETFIE se activa otra vez el GIE, por lo que detectaría otra interrupción si estuviera activa.

El código que trata las interrupciones debe empezar salvando los registros principales, luego detectar cual ha sido la interrupción, ya que hay mas de una tal como dices, y saltar al código que trate esta interrupción y después recuperar los registros principales. Terminar con un RETFIE.

Para mas info: bajate el archivo DS33023A de Microchip y mira el capítulo de interrupciones.

Saludos.

Clarisimo!!

Muchisimas gracias, ahora todo corre mas suave :D

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required