ABSTRACT
Today almost every microcontroller integrates interrupt capability, which can range
from simple interrupts to multi-level prioritized interrupts. Both hardware (e.g.,
external inputs or peripherals) as well as software events can generate interrupts. An
interrupt causes deviation to the normal program execution flow. Whenever an event
or exception happens, the corresponding peripheral or hardware requires a response
from the processor. The response from the processor is implemented as a function call
and is also called interrupt service routine (ISR). The sequence of operations involved
from the occurrence of the exception/interrupt to the resumption of normal program
execution again often involves the following key steps.