Jump to main content

##

# 3.35.8 Event System Interface (EVSYS)

The Event System (EVSYS) allows autonomous, low-latency and configurable communication between peripherals. Several peripherals can be configured to generate and/or respond to signals known as events. The exact condition to generate an event, or the action taken upon receiving an event, is specific to each peripheral. Peripherals that respond to events are called event users. Peripherals that generate events are called event generators. A peripheral can have one or more event generators and can have one or more event users. Communication is made without CPU intervention and without consuming system resources such as bus or RAM bandwidth. This reduces the load on the CPU and other system resources, compared to a traditional interrupt-based system.

## Using The Library

Configure the EVSYS in MCC by adding a EVSYS channel and configuring the appropriate event generator. Add a event user and configure it to listen to the configured EVSYS channel. Make sure the involved peripherals are correctly configured to enable event generation and using the events in their respective peripheral configurations.

## Library Interface

Event System Interface peripheral library provides the following interfaces:

Functions

Name | Description
--- | ---
EVSYS_Initialize | Initializes EVSYS module
EVSYS_GeneratorEnable | Enables EVSYS generator
EVSYS_GeneratorDisable | Disables EVSYS generator
EVSYS_UserEnable | Enables EVSYS user
EVSYS_UserDisable | Disables EVSYS user
EVSYS_InterruptEnable | Enables EVSYS interrupt
EVSYS_InterruptDisable | Disables EVSYS interrupt
EVSYS_CallbackRegister | Allows application to register a callback function

Data types and constants

Name | Type | Description
--- | --- | ---
EVSYS_INT_MASK | Enum | Identifies the Event system interrupt to be enabled or disabled
EVSYS_CHANNEL | Enum | Identifies the channel to be used
EVSYS_CALLBACK | Typedef | Pointer to a EVSYS CallBack function