The GPIO can trigger interrupt events based on a detected input edge via GPIO event publishers. The Event Manager module provides three event publishers for GPIOx peripherals:
- GPIOx NVIC IRQ
- Used for generating a 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 registers:
- 0: Disabled
- 1: Rise Event
- 2: Fall Event
- 3: Rise or Fall Event
- DMA Fixed Trigger (GPIOx.GEN_EVENT0)
- Used as a dedicated DMA
event trigger for GPIO bits 15 to 0(DIO[15:0])
- Each GPIO bit can be configured to generate a DMA trigger request based on input detections specified by the POLARITY registers:
- 0: Disabled
- 1: Rise Event
- 2: Fall Event
- 3: Rise or Fall Event
- DMA Fixed Trigger (GPIOx.GEN_EVENT1)
- Used as a dedicated DMA
event trigger for GPIO bits 31 to 16(DIO[31:16])
- Each GPIO bit can be configured to generate a DMA trigger request based on input detection specified by the POLARITY registers:
- 0: Disabled
- 1: Rise Event
- 2: Fall Event
- 3: Rise or Fall Event
Note: GPIO[0:2] supports both DMA Fixed Trigger Events. GPIO[3] only supports the first DMA Fixed Trigger Event.