23.6.6 Interrupts

The EIC has the following interrupt sources:

  • External interrupt (EXTINTx) pins. See Basic Operation from Related Links.
  • Non-maskable interrupt (NMI) pin. See Non-Maskable Interrupt (NMI) from Related Links

Each interrupt source has an associated Interrupt flag. The interrupt flag in the Interrupt Flag Status and Clear register (INTFLAG) is set when an Interrupt condition occurs (NMIFLAG for NMI). Each interrupt, except NMI, can be individually enabled by setting the corresponding bit in the Interrupt Enable Set register (INTENSET = 1), and disabled by setting the corresponding bit in the Interrupt Enable Clear register (INTENCLR = 1). The status of enabled interrupts can be read from either INTENSET or INTENCLR.

An interrupt request is generated when the interrupt flag is set and the corresponding interrupt is enabled. The interrupt request remains active until the interrupt flag is cleared, the interrupt is disabled, or the EIC is reset. See the INTFLAG register for details on how to clear Interrupt flags. The EIC has one interrupt request line for each external interrupt (EXTINTx) and one line for NMI. The user must read the INTFLAG (or NMIFLAG) register to determine which Interrupt condition is present.

Note:
  1. Interrupts must be globally enabled for interrupt requests to be generated.
  2. If an external interrupt (EXTINT) is common on two or more I/O pins, only one will be active (the first one programmed).