IRQHandler Detects Interrupt From Same Pin Number On Another Port But Only 1 Configured As Interrupt?
Developing on an STM32F417ZG
I have configured PE2 as a rising edge interrupt. It is the only pin 2 set as an interrupt the others are configured as follows:
PA2: ETH_MDIO
PB2: Input pull-down
PC2: ADC1_IN12 (No analog watchdog)
PD2: Output
PF2: Input pull-down
PG2: Input pull-down
Sometimes the EXTI2_IRQHandler is called without a rising edge occurring on PE2. Verified by setting a break point at this function and probing PE2 with a scope. This happens randomly i.e. no set interval between occurrences and seemingly no triggers.
Is reading the GPIOE->IDR register in the interrupt callback function a reliable way to check if the interrupt came from port E? If not is there a reliable way to find on which port the interrupt occurred?
I am also having some difficulty tracing the code back from the EXTI2_IRQHandler, where is that function called?