how are local variables declared within the ISR handled?
Hi @Middleware & OS , When using FreeRTOS each thread has its own stack space it is dedicated to. So what happens with Interrupt Service Routines that's ISRs? Do they have a separate stack in memory, or is this behavior configurable?
If it doesn't have a dedicated stack, how are local variables declared within the ISR handled?
If it doesn't have a dedicated stack, how are local variables declared within the ISR handled?
Solution
In FreeRTOS, ISRs share the stack of the current running task. They don't have a dedicated stack by default, but you can configure FreeRTOS to use a separate stack for ISRs by defining configUSE_ISR_STACK in your FreeRTOSConfig.h file. Local variables in ISRs are allocated on the interrupt stack, so keep ISRs short and simple to avoid stack overflow.
