Scroll to navigation

interrupt.h(3avr) interrupt.h(3avr)

NAME

interrupt.h

SYNOPSIS

Macros

Global manipulation of the interrupt flag
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 Problems with reordering code for things to be taken into account with respect to compiler optimizations.



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


Macros for writing interrupt handler functions



#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_vect


ISR attributes



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


Author

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

Version 2.2.1 AVR-LibC