Autor Tema: Duda interrupciones + delay  (Leído 1298 veces)

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

Desconectado mrgse

  • PIC10
  • *
  • Mensajes: 42
Duda interrupciones + delay
« en: 06 de Mayo de 2009, 07:23:34 »
Hola soy nuevo en el foro y necesito un poco de ayuda para programar mi PIC 16F877. Lo que pretendo es que el PIC vaya ejecutando su programa, en el que hay delays, y se interrumpa cuando reciba una interrupcion desde el PC. Mi duda es, si la interrupcion llega durante un delay, el delay se interrumpe, o espera a que termine??
Si espera a que termine, como podria hacer para tener un delay de 5 minutos y si surgiera una interrupcion durante esos 5 minutos, el programa la tratase, y luego siguiera con el delay donde lo havia dejado?
Muchas gracias!!
PD: Programo en C.

Desconectado Papalote

  • PIC10
  • *
  • Mensajes: 11
Re: Duda interrupciones + delay
« Respuesta #1 en: 06 de Mayo de 2009, 09:18:55 »
Hola mira yo tampoco tengo mucha experiencia pero me parece que si llega una interrupcion durante una pausa, el programa inmediatamente atiende la interrupcion y despues vuelve a la instruccion siguiente de la pausa, osea el tiempo que quedaba se pierde

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Duda interrupciones + delay
« Respuesta #2 en: 06 de Mayo de 2009, 11:12:29 »
Cuando se activa una interrupción el microcontrolador la trata inmediatamente siempre y cuando este habilitada. En la pila se guarda la dirección que se ejecutaba en el programa antes de la activación de la interrupción, entonces al tratar la interrupción y volver al programa vuelve a la misma posición y no se pierde nada. Además CCS realiza una copia de STATUS y W automáticamente para restablecerlos después de salir de la interrupción.
No contesto mensajes privados, las consultas en el foro


 

anything