23.3.2.3 Event Generators

Each event channel has several possible event generators, but only one can be selected at a time. The event generator for a channel is selected by writing to the respective Channel n Generator Selection (EVSYS.CHANNELn) register. By default, the channels are not connected to any event generator. For details on event generation, refer to the documentation of the corresponding peripheral.

A generated event is either synchronous or asynchronous to the device peripheral clock (CLK_PER). Asynchronous events can be generated outside the normal edges of the peripheral clock, making the system respond faster than the selected clock frequency would suggest. Asynchronous events can also be generated while the device is in a sleep mode when the peripheral clock is not running.

Any generated event is classified as either a pulse event or a level event. In both cases, the event can be either synchronous or asynchronous, with properties according to the table below.

Table 23-1. Properties of Generated Events
Event TypeSync/AsyncDescription
PulseSyncAn event generated from CLK_PER that lasts one clock cycle
AsyncAn event generated from a clock other than CLK_PER lasting one clock cycle
LevelSyncAn event generated from CLK_PER that lasts multiple clock cycles
AsyncAn event generated without a clock (for example, a pin or a comparator), or an event generated from a clock other than CLK_PER that lasts multiple clock cycles

The properties of both the generated event and the intended event user must be considered in order to ensure reliable and predictable operation.

The table below shows the available event generators for this device family.

Table 23-2. Event Generators
Generator NameDescriptionEvent TypeGenerating Clock DomainLength of Event
PeripheralEvent
UPDISYNCHSYNCH characterLevelCLK_PDISYNCH character on PDI RX input synchronized to CLK_PDI
WDTTICKWDT LSB TickLevelCLK_WDT
SWDTERRORSWDT ErrorPulseCLK_PER
MVIOVDDIO2OKVDDIO2 is OKLevelCLK_PER
RTCOVFOverflowPulseCLK_RTCOne CLK_RTC period
CMPCompare Match
EVGENnSelectable prescaled RTC eventLevelPrescaled CLK_RTC period
CCL LUTnLUT output levelLevelAsynchronousDepends on the CCL configuration
ACnOUTComparator output levelLevelAsynchronousGiven by the AC output level
ADCnRESRDYResult readyPulseCLK_PEROne CLK_PER period
SAMPRDYSample ready
WCMPWindow compare
ZCDnOUTZCD output levelLevelAsynchronousGiven by the ZCD output level
PORTxEVGENnPin levelLevelAsynchronousGiven by the pin level
USARTnXCKUSART baud clockLevelCLK_PERMinimum two CLK_PER periods
SPInSCKSPI host clockLevelCLK_PERMinimum two CLK_PER periods
TCAnOVF_LUNFOverflow/Low byte timer underflowPulseCLK_PEROne CLK_PER period
HUNFHigh byte timer underflow
CMP0_LCMP0Compare channel 0 match/Low byte timer compare channel 0 match
CMP1_LCMP1Compare channel 1 match/Low byte timer compare channel 1 match
CMP2_LCMP2Compare channel 2 match/Low byte timer compare channel 2 match
TCBnCAPTCAPT flag setPulseCLK_PEROne CLK_PER period
OVFOverflow
TCDnCMPBCLRCounter matches CMPBCLRPulseCLK_TCDOne CLK_TCD period
CMPASETCounter matches CMPASET
CMPBSETCounter matches CMPBSET
PROGEVProgrammable event output