PIC32 port interrupt problem

wne1 wrote on Tuesday, December 15, 2009:

My code uses int1, int2 and int3. I set break points in each of those ISR and run my code in debug mode. When I trigger the pins, the interrupts never happen. When I stop the code, I can observe that the INTx interrupt flags were set. Any clue on what happen here?

davedoors wrote on Tuesday, December 15, 2009:

Do you think this is something to do with FreeRTOS?

mikeycosta wrote on Tuesday, December 15, 2009:

If you never make it to the ISR, the problem is not with FreeRTOS.  check your pin settings.  make sure you enable GPIO interrupts for those particular pins.

wne1 wrote on Wednesday, December 16, 2009:

Thanks for all the answers. I am new to FreeRTOS, so, getting confused where should I look the cause. Now I fixed it. I declared:

    void __attribute__((interrupt(ipl1), vector(_EXTERNAL_1_VECTOR))) Membrane_Select_ISR(void)
But, it does not set the interrupt priority. I have to add this

    IPC1bits.INT1IP = 1;

then, it works. Just don’t know why.