33.5.5 Interrupts

The interrupt request line, also known as the interrupt vector, is connected to the interrupt controller. To use ADC interrupts, the interrupt controller must be configured in advance, including enabling the interrupt line globally. For further information, refer to the NVIC - Nested Vectored Interrupt Controller section.

Each interrupt source has an interrupt flag which is in the Interrupt Flag Status and Clear (INTFLAG) register. The flag is set when the interrupt condition occurs. Each interrupt can be individually enabled by writing a ‘1’ to the corresponding bit in the Interrupt Enable Set (INTENSET) register, and disabled by writing a ‘1’ to the corresponding bit in the Interrupt Enable Clear (INTENCLR) register.

An interrupt request is generated when the interrupt flag is set and the corresponding interrupt source is enabled. The interrupt request remains active until the interrupt flag is cleared, the interrupt is disabled, or the peripheral is reset. Refer to the INTFLAG register description for details on how to clear interrupt flags.

All interrupt requests from the peripheral are ORed together on system level to generate a single combined interrupt request to the NVIC. Therefore, the INTFLAG register must be read to determine what the interrupt condition is.

Table 33-8. Available Interrupt Vectors and Sources
Vector NameSource NameConditionDependency
ADCnTRIGOVRA new conversion is triggered while another conversion is already in progress
SAMPOVRA new conversion overwrites an unread sample in the Sample (SAMPLE) register
RESOVRA new conversion or accumulation overwrites an unread result in the Result (RESULT) register
RESRDYA new result is available in the Result (RESULT) register
WCMPA conversion or accumulation matches the conditions set by the window comparatorThe Window Source bit in the Control D register (CTRLD.WINSRC) is ‘0
SAMPRDYA new sample is available in the Sample (SAMPLE) register
WCMPA sample matches the conditions set by the window comparatorCTRLD.WINSRC is ‘1