Question
Decrease priority during runtime of interrupt
Posted on October 20, 2014 at 13:06
Hi,
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).