Maximum number of InterruptIns in a program

Hi there,

I am building an mbed-os application that relies heavily on the use of interrupts.

I am running into an issue where additional InterruptIn declaration’s are causing other interrupts not to fire.

Can this be attributed to the number of interrupts being capped by some internal mbed buffer size?

Any help would be appreciated.


Whatis your target board/mcu?


I’m using an STM 32 NUCLEO F411RE.

I’m not as familiar with the inner workings of the ST SDKs, but the Nordic nRF52 SDK had a MACRO (NRFX_GPIOTE_CONFIG_NUM_OF_LOW_POWER_EVENTS) which set how many interrupts were enabled; the default value was 1, and we switched it to 4 (see here).

Not sure, but there may be something similar for ST parts?

Interesting, I appreciate your input!

Further investigation on my end seems to point towards there only being 16 hardware interrupts available on the board.

Basically it looks like there can only be one active interrupt per pin line (for example, you can’t have an interrupt on PA_0 and PB_0, but you can on PA_0 and PA_1)

Switching my pins to support only having one interrupt on each pin line seems to have fixed my issue.

This link might help.

1 Like