I'm trying to use FreeRTOS's xSemaphoreGiveFromISR
function and the accompanying portEND_SWITCHING_ISR
macro to give a semaphore from within an interrupt that handles the end of an I2C transaction.
Every time I do, I end up in my program's application stack overflow hook function. The only change from a working version has been adding this line to the ISR, and I've doubled the size of the stack from 8192
to 16384
which didn't help.
Does anyone have thoughts about what gotcha is getting me?
My configCHECK_FOR_STACK_OVERFLOW
value is 1.