# Events

The TCA can generate the events described in the table below. All event generators except TCAn_HUNF are shared between Normal mode and Split mode operation, and the generator name indicates what specific signal the generator represents in each mode in the following way: OVF_LUNF corresponds to overflow in Normal mode and Low byte timer underflow in Split mode. The same applies to CMPn_LCMPn.
Table 1. Event Generators in TCA
Generator Name Description Event Type Generating Clock Domain Length of Event
Peripheral Event
TCAn OVF_LUNF

Normal mode: Overflow

Split mode: Low byte timer underflow

Pulse CLK_PER One CLK_PER period
HUNF

Normal mode: Not available

Split mode: High byte timer underflow

Pulse CLK_PER One CLK_PER period
CMP0_LCMP0

Normal mode: Compare Channel 0 match

Split mode: Low byte timer Compare Channel 0 match

Pulse CLK_PER One CLK_PER period
CMP1_LCMP1

Normal mode: Compare Channel 1 match

Split mode: Low byte timer Compare Channel 1 match

Pulse CLK_PER One CLK_PER period
CMP2_LCMP2

Normal mode: Compare Channel 2 match

Split mode: Low byte timer Compare Channel 2 match

Pulse CLK_PER One CLK_PER period
Note: The conditions for generating an event are identical to those that will raise the corresponding interrupt flag in the TCAn.INTFLAGS register for both Normal mode and Split mode.
The TCA has two event users for detecting and acting upon input events. The table below describes the event users and their associated functionality.
Table 2. Event Users in TCA
User Name Description Input Detection Async/Sync
Peripheral Input
TCAn CNTA Count on a positive event edge Edge Sync
Count on any event edge Edge Sync
Count while the event signal is high Level Sync
The event level controls the count direction, up when low and down when high Level Sync
CNTB The event level controls count direction, up when low and down when high Level Sync
Restart counter on a positive event edge Edge Sync
Restart counter on any event edge Edge Sync
Restart counter while the event signal is high Level Sync

The specific actions described in the table above are selected by writing to the Event Action (EVACTA, EVACTB) bits in the Event Control (TCAn.EVCTRL) register. Input events are enabled by writing a ‘1’ to the Enable Counter Event Input (CNTAEI and CNTBEI) bits in the TCAn.EVCTRL register.

If both EVACTA and EVACTB are configured to control the count direction, the event signals will be OR’ed to determine the count direction. Both event inputs must then be low for the counter to count upwards.

Notes:
1. 1.Event inputs are not used in Split mode.
2. 2.Event actions with level input detection only work reliably if the event frequency is less than the timer’s frequency.

Refer to the Event System (EVSYS) section for more details regarding event types and Event System configuration.