16.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 16-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 16-2. Event Generators
Generator NameDescriptionEvent TypeGenerating Clock DomainLength of Event
PeripheralEvent
UPDISYNCHSYNCH character Async, LevelCLK_PDISYNCH character on PDI RX input synchronized to CLK_PDI
RTCOVFCounter OverflowAsync, PulseCLK_RTCOne CLK_RTC period
CMPCompare Match
EVGEN0Selectable prescaled RTC eventAsync, LevelCLK_RTCPrescaled RTC period
EVGEN1
CCL LUTnLUT output levelAsync, LevelAsynchronousDepends on CCL configuration
ACnOUTComparator output levelAsync, LevelAsynchronousGiven by AC output level
ADC0RESResult readySync, PulseCLK_PEROne CLK_PER period
SAMPSample ready
WCMPWindow compare match
PORTxEVGEN0Pin levelAsync, LevelAsynchronousGiven by pin level
EVGEN1
USARTnXCKClock signal in SPI host mode and synchronous USART host modeSync, LevelTXCLKMinimum two CLK_PER periods
SPI0SCKSPI host clockSync, LevelCLK_PERMinimum two CLK_PER periods
TCE0OVF

Overflow/ Low byte timer underflow

Sync, PulseCLK_PEROne CLK_PER period
CMP0Compare channel 0 match/Low byte timer compare channel 0 matchSync, Pulse/LevelOne CLK_PER period or WO
CMP1Compare channel 1 match/Low byte timer compare channel 1 match
CMP2Compare channel 2 match/Low byte timer compare channel 2 match
CMP3Compare channel 3 match/Low byte timer compare channel 3 match
TCBnCAPTCAPT interrupt flag setSync, Pulse/LevelCLK_PEROne CLK_PER period or WO
OVFCounter overflowSync, PulseOne CLK_PER period
TCF0OVFCounter overflowAsync, PulseCLK_TCFOne CLK_TCF period
CMP0Compare channel 0Async, Pulse/LevelOne CLK_TCF period or WO
CMP1Compare channel 1