There are three independent event publishers
available for GPIOx peripherals:
- First Event Publisher (CPU_INT)
- Used for generating CPU interrupt
- Interrupt (RIS) flags are cleared upon software reading the IIDX register or writing to the respective ICLR register bits.
- An event to the CPU can be individually specified for each GPIO bit through the POLARITY register:
- 0: Disabled
- 1: Rise Event
- 2: Fall Event
- 3: Rise or Fall Event
- Second Event Publisher (GEN_EVENT0), available on
GPIOA only
- Uses the same POLARITY
register definition as CPU_INT
- Applies to GPIO bits 15
down to 0 (DIO15:0)
- Third Event Publisher (GEN_EVENT1), available on
GPIOA only
- Uses the same POLARITY
register definition as CPU_INT
- Applies to GPIO bits 31
down to 16 (DIO31:16)
There are two event subscribers (available
for the GPIOA peripheral only):
- First Event Subscriber (FSUB_0)
- A specific pin can be directed to change state on an event
- A subscriber event can only cause one single bit to have an action
- Applies to GPIO bits 15 down to 0 (DIO15:0)
- SUB0CFG register is used to enable the FSUB_0 event and define the output policy for a specific GPIO pin
- Second Event Subscriber (FSUB_1)
- A specific pin can be directed to change state on an event
- A subscriber event can only cause one single bit to have an action
- Applies to GPIO bits 31 down to 16 (DIO31:16)
- SUB1CFG register is used to enable the FSUB_1 event and define the output policy for a specific GPIO pin