logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Author

       Generated automatically by Doxygen for AVR-LibC from the source code.

AVR-LibC                                          Version 2.2.1                                interrupt.h(3avr)

Name

       interrupt.h

Synopsis

MacrosGlobalmanipulationoftheinterruptflag
       The global interrupt flag is maintained in the I bit of the status register (SREG).

       Handling interrupts frequently requires attention regarding atomic access to objects that could be
       altered by code running within an interrupt context, see <util/atomic.h>.

       Frequently, interrupts are being disabled for periods of time in order to perform certain operations
       without being disturbed; see Problemswithreorderingcode for things to be taken into account with
       respect to compiler optimizations.

           #define sei()   __asm__ __volatile__ ('sei' ::: 'memory')
           #define cli()   __asm__ __volatile__ ('cli' ::: 'memory')

       Macrosforwritinginterrupthandlerfunctions

           #define ISR(vector,  attributes)
           #define SIGNAL(vector)
           #define EMPTY_INTERRUPT(vector)
           #define ISR_ALIAS(vector,  target_vector)
           #define reti()   __asm__ __volatile__ ('reti' ::: 'memory')
           #define BADISR_vectISRattributes

           #define ISR_BLOCK
           #define ISR_NOBLOCK
           #define ISR_NAKED
           #define ISR_FLATTEN
           #define ISR_NOICF
           #define ISR_NOGCCISR
           #define ISR_ALIASOF(target_vector)

See Also