Autor Tema: interrupcion GLOBAL en MPLAB en CCS  (Leído 1997 veces)

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

Desconectado sensey82

  • PIC10
  • *
  • Mensajes: 6
interrupcion GLOBAL en MPLAB en CCS
« en: 07 de Abril de 2010, 12:17:46 »
hola a todos!

tengo una gran duda k no tengo nidea de komo solucionarla.. primero de todo explicaros que estoy realizando un proyecto en CCS y estoy usando las interrupciones externas mediante un PIC16F877A  .. por un lado utilizo la interrupcion del #INT_EXT la qual se basa en la patilla RB0 y por otro lado utilizo la interrupcion de #INT_RB que son las que utilizan las otras patillas de interrupcion.. en este caso de RB4 a RB7 inclusive.

Por temas laborales utilizo el MPlab para compilar y no el PIC CCS.. en MPLAB y en programas del trabajo hay una interrupcion que se llama static void interrupt Global_Int(void). esta interrupcion se hace cada cierto tiempo y viene definida por software y no por harware.. osea ke es una interrupcion INTERNA y NO EXTERNA como las que uso en el CCS... mi pregunta es komo poder realizar esta instruccion en CCS o su equivalente y si hay alguna informacion... agradezco toda vuestra ayuda de antemano.. GRACIAS

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: interrupcion GLOBAL en MPLAB en CCS
« Respuesta #1 en: 07 de Abril de 2010, 13:30:10 »
static void interrupt Global_Int(void) es una rutina de servicio de interrupción que trata cualquier evento previamente habilitado en una sola función, y es el programador que mediante banderas determina que evento fue? Si es el caso en CCS se haria algo así:

Código: C
  1. #int_global
  2. isr() {    
  3.  
  4.    // Salvado de contexto mas seleccion y tratamiento de eventos..
  5. }

Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado sensey82

  • PIC10
  • *
  • Mensajes: 6
Re: interrupcion GLOBAL en MPLAB en CCS
« Respuesta #2 en: 07 de Abril de 2010, 16:51:06 »
OKs.. pero esta instruccion seria paralela a la interrupcion de INT_EXT i INT_RB?¿?¿? es k en esta interrupcion me gustaria poner timer el kual iria kontando i kuando yo kisiera en el main se fuera reiniciando.... a groso modo es para un control de temperatura... si la temperatura real no llega a su consigna transcurrido ESTE tiempo pues se activarian otras cosas (esto lo pondria en el main o en subrutinas etc).. la gracia es hacer este conteo de tiempo siempre en paralelo a mi programa principal porke si lo hubico en una funcion solo me contaria i no me saldria de ella i me haria las 2 a la vez. GRACIAS!

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: interrupcion GLOBAL en MPLAB en CCS
« Respuesta #3 en: 07 de Abril de 2010, 21:43:53 »
Para interrupción por timer tienes:

Código: [Seleccionar]
#INT_TIMER0
#INT_TIMER1


ect.

Saludos!
No contesto mensajes privados, las consultas en el foro