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?
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.
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.