AnsweredAssumed Answered

Decrease priority during runtime of interrupt

Question asked by bil.til on Oct 20, 2014
Latest reply on Oct 20, 2014 by bil.til
I have an application where interrupts come very fast on a timer (about 100kHz). Most time this interrupt is handled very immediate, and then all is fine.

This interrupt should have quite high pre-emptive priority, so that it can interrupt also other "not so important interrupts".

Just sometimes I want to do some heavier processing also in this fast interrupt. In this case it would be necessary, that I somehow "decrease the interrupt priority level" for the running interrupt, and I have to do this WITHIN the interrupt routine (so while the intterupt is running - so that if another higher prio interrupt arrives, it will interrupt this "heavier processing").

Is this possible by some register access? Or is it necessary to invoke another software interrupt with lower priority to do the lower priority processing then in this software interrupt?

(register access of course would be very nice, as then I would not loose any processing time for push/pop of registers, also it would be more economic for the stack).