21.5.5 Interrupts

The interrupt request line, also known as the interrupt vector, is connected to the interrupt controller. To use RTC 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 located 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 at the system level to generate a single combined interrupt request to the NVIC. Therefore, the INTFLAG register must be read to determine the interrupt condition.

Table 21-1. Available Interrupt Vectors and Sources
Vector NameSource NameConditionDependency
RTCOVFThe counter has reached its top value and wrapped to zeroThe Counter Value (COUNT) register
CMPn/ALARMn

32-bit and 16-bit Counter (Mode 0 and 1): The compare n value matches the counter value.

Clock/Calendar (Mode 2): The alarm n value matches the clock value.

32-bit and 16-bit Counter (Mode 0 and 1): The Compare n Value (COMP[n]) and COUNT registers.

Clock/Calendar (Mode 2): The Alarm n Value (ALARMn) and Clock Value (CLOCK) registers.

PERnThe corresponding prescaler bit has toggledThe Counter Period (PER) register