- Sun Aug 21, 2011 6:00 pm
#132186
My interrupt service routines generally look like this:
#pragma vector = PORT1_VECTOR
__interrupt void PORT1_ISR(void)
{
__disable_interrupt(); // Disable global INTs so nothing can interrupt this ISR
// General content of ISR
__enable_interrupt(); // Re-enable global INTs
}
I was wondering - is it necessary to manually disable/enable interrupts as I currently do, or does IAR automatically look after this for you when it compiles hence making my calls to __disable_interrupt() and __enable_interrupt() redundant?
#pragma vector = PORT1_VECTOR
__interrupt void PORT1_ISR(void)
{
__disable_interrupt(); // Disable global INTs so nothing can interrupt this ISR
// General content of ISR
__enable_interrupt(); // Re-enable global INTs
}
I was wondering - is it necessary to manually disable/enable interrupts as I currently do, or does IAR automatically look after this for you when it compiles hence making my calls to __disable_interrupt() and __enable_interrupt() redundant?