The Event System can generate interrupts to wake up the device from Idle or Standby mode.
To be able to run in standby, the run in Standby bit in the Channel register (CHANNELn.RUNSTDBY) must be set to '1'. When the Generic Clock On Demand bit in the Channel register (CHANNELn.ONDEMAND) is set to '1' and the event generator is detected, the event channel will request its clock (GCLK_EVSYS_CHANNEL_n). The event latency for a resynchronized channel path will increase by two GCLK_EVSYS_CHANNEL_n clock (that is., up to five GCLK_EVSYS_CHANNEL_n clock cycles).
A channel will behave differently in different sleep modes regarding to CHANNELn.RUNSTDBY and CHANNELn.ONDEMAND:
CHANNELn.PATH | CHANNELn. ONDEMAND | CHANNELn. RUNSTDBY | Sleep Behavior |
---|---|---|---|
ASYNC | 0 | 0 | Only run in Idle mode if an event must be propagated. Disabled in Standby mode. |
SYNC/RESYNC | 0 | 0 | N/A. Works only in Active mode. |
SYNC/RESYNC | 0 | 1 | Run in both Idle and Standby modes. |
SYNC/RESYNC | 1 | 0 | Only run in Idle mode if an event must be propagated. Disabled in Standby mode. Two GCLK_EVSYS_n latency added in RESYNC path before the event is propagated internally. |
SYNC/RESYNC | 1 | 1 | Run in both Idle and Standby modes. Two GCLK_EVSYS_n latency added in RESYNC path before the event is propagated internally. |