Hi all,
I want to use GPIO9 to call XINT1.
------------------------------------------------------------------
GpioIntRegs.GPIOXINT1SEL.bit.GPIOSEL = 9;
GpioCtrlRegs.GPAMUX1.bit.GPIO9 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO9 = 0;
GpioCtrlRegs.GPAQSEL1.bit.GPIO9 = 3;
XIntruptRegs.XINT1CR.bit.ENABLE = 1;
XIntruptRegs.XINT1CR.bit.POLARITY = 1;
PieCtrlRegs.PIEIER1.bit.INTx4 = 1; // Enable 1.4 in PIE
IER |= M_INT1;
----------------------------------------------------------------
#define INT1PL 1 // Group1 Interrupts (PIEIER1)
#define G14PL 2 // XINT1 (External)
----------------------------------------------------------------
// Connected to PIEIER1_4 (use MINT1 and MG14 masks):
#if (G14PL != 0)
interrupt void XINT1_ISR(void)
{
// Set interrupt priority:
volatile Uint16 TempPIEIER = PieCtrlRegs.PIEIER1.all;
IER |= MINT1; // Set "global" priority
PieCtrlRegs.PIEIER1.all &= MG14; // Set "group" priority
PieCtrlRegs.PIEACK.all = 0xFFFF; // Enable PIE interrupts
EINT;
External_interrupt_on_GPIO9();
// Restore registers saved:
DINT;
PieCtrlRegs.PIEIER1.all = TempPIEIER;
// Next two lines for debug only to halt the processor here
// Remove after inserting ISR Code
// asm (" ESTOP0");
// for(;;);
}
#endif
-------------------------------------------------------------
When i have a transition on GPIO9, the interrupt is not called.
What do I forget?
Thanks in advance,
M