Hola a todos.
Estoy usando el MPLAB_X_IDE, el ICD3 con la placa PICDEM2_PLUS, y el micro es un PIC18f452.
Y tengo el siguiente problema:
Quiero realizar una interrupcion por el puerto RB0 pero ésta no se me activa al pulsarlo. He probado de varias maneras, y os dejo aqui un pequeño programilla a ver si me podeis hechar una mano.
un saludo y gracias de antemano.
Estoy usando el MPLAB_X_IDE, el ICD3 con la placa PICDEM2_PLUS, y el micro es un PIC18f452.
Y tengo el siguiente problema:
Quiero realizar una interrupcion por el puerto RB0 pero ésta no se me activa al pulsarlo. He probado de varias maneras, y os dejo aqui un pequeño programilla a ver si me podeis hechar una mano.
un saludo y gracias de antemano.
Código:
#include <p18f452.h>
#include <portb.h>
#pragma config OSC=HS, OSCS=OFF
#pragma config PWRT=OFF
#pragma config BOR=OFF
#pragma config WDT=OFF
#pragma config CCP2MUX=OFF
#pragma config LVP=OFF
void porb (void);
/*** Funcion interrupcion ***/
#pragma code interr_alta=0x08
void interr_alta(void)
{
_asm goto porb _endasm
}
#pragma code
#pragma interrupt porb
void porb (void)
{
PORTBbits.RB2=1;
INTCONbits.INT0IF=0;
}
/*** Programa principal ***/
void main (void)
{
/*** Config. puertos ***/
TRISA=0xFF;
/*** Configuro el puertoB como salida menos RB0 ***/
TRISB=0b0001;
/*** Config. interrupcion ***/
INTCONbits.INT0IE=1;
INTCONbits.RBIE=1;
INTCONbits.GIE=1;
INTCONbits.PEIE=1;
INTCONbits.INT0IF=0;
while (1)
{
PORTBbits.RB3=1;
}
}