RTEMS 6.3
Loading...
Searching...
No Matches

Topics

 Interrupt_deprecated_group

Interrupt Service Routine definition

typedef uint32_t irqflags_t
volatile bool g_interrupt_enabled
#define irq_initialize_vectors()
 Initialize interrupt vectors.
#define irq_register_handler(int_num, int_prio)
 Register handler for interrupt.
#define cpu_irq_enable()
#define cpu_irq_disable()
#define cpu_irq_is_enabled()
#define Enable_global_interrupt()
#define Disable_global_interrupt()
#define Is_global_interrupt_enabled()

Detailed Description

Macro Definition Documentation

◆ cpu_irq_disable

#define cpu_irq_disable ( )
Value:
do { \
__disable_irq(); \
__DMB(); \
\
} while (0)

◆ cpu_irq_enable

#define cpu_irq_enable ( )
Value:
do { \
\
__DMB(); \
__enable_irq(); \
} while (0)

◆ cpu_irq_is_enabled

#define cpu_irq_is_enabled ( )
Value:
(__get_PRIMASK() == 0)
__STATIC_FORCEINLINE uint32_t __get_PRIMASK(void)
Get Priority Mask.
Definition cmsis_gcc.h:1221

◆ Disable_global_interrupt

#define Disable_global_interrupt ( )
Value:
cpu_irq_disable()

◆ Enable_global_interrupt

#define Enable_global_interrupt ( )
Value:
cpu_irq_enable()

◆ irq_initialize_vectors

#define irq_initialize_vectors ( )
Value:
do { \
} while (0)

Initialize interrupt vectors.

For NVIC the interrupt vectors are put in vector table. So nothing to do to initialize them, except defined the vector function with right name.

This must be called prior to irq_register_handler.

◆ irq_register_handler

#define irq_register_handler ( int_num,
int_prio )
Value:
NVIC_ClearPendingIRQ((IRQn_Type)int_num); \
NVIC_SetPriority((IRQn_Type)int_num, int_prio); \
NVIC_EnableIRQ((IRQn_Type)int_num); \
IRQn_Type
STM32H7XX Interrupt Number Definition, according to the selected device in Library_configuration_sect...
Definition stm32h723xx.h:49

Register handler for interrupt.

For NVIC the interrupt vectors are put in vector table. So nothing to do to register them, except defined the vector function with right name.

Usage:

irq_register_handler(foo_irq_handler);
#define irq_initialize_vectors()
Initialize interrupt vectors.
Definition compiler.h:321
#define irq_register_handler(int_num, int_prio)
Register handler for interrupt.
Definition compiler.h:342
Note
The function func must be defined with the ISR macro.
The functions prototypes can be found in the device exception header files (exceptions.h).

◆ Is_global_interrupt_enabled

#define Is_global_interrupt_enabled ( )
Value:
cpu_irq_is_enabled()