Macros
RTOS macros. More...
Macros |
|
#define | GOS_INTERRUPT_CONTEXT () PLATFORM_INTERRUPT_CONTEXT() |
#define | GOS_DISABLE_INTERRUPTS () PLATFORM_DISABLE_INTERRUPTS() |
#define | GOS_ENABLE_INTERRUPTS () PLATFORM_ENABLE_INTERRUPTS() |
#define | GOS_TRIGGER_BREAKPOINT () PLATFORM_TRIGGER_BREAKPOINT() |
#define | GOS_RTOS_ISR (function) __gos_ ## function |
#define | GOS_RTOS_DEFINE_ISR (function) |
This macro allows for an interrupt callback to use RTOS structures such as semaphores and event flags.
More...
|
|
Detailed Description
RTOS macros.
Macro Definition Documentation
◆ GOS_DISABLE_INTERRUPTS
#define GOS_DISABLE_INTERRUPTS | ( |
|
) | PLATFORM_DISABLE_INTERRUPTS() |
Disable global interrupts
GOS_INTERRUPT_CONTEXT() should be declared before using this.
GOS_ENABLE_INTERRUPTS() MUST be called to re-enable interrupts.
- Note
- This is a low-level API and should be used with extreme caution!
◆ GOS_ENABLE_INTERRUPTS
#define GOS_ENABLE_INTERRUPTS | ( |
|
) | PLATFORM_ENABLE_INTERRUPTS() |
Re-enable global interrupts
This MUST be called after using GOS_DISABLE_INTERRUPTS()
- Note
- This is a low-level API and should be used with extreme caution!
◆ GOS_INTERRUPT_CONTEXT
#define GOS_INTERRUPT_CONTEXT | ( |
|
) | PLATFORM_INTERRUPT_CONTEXT() |
Context used to store the interrupt context
This should be declared locally before GOS_DISABLE_INTERRUPTS() and GOS_ENABLE_INTERRUPTS() are used
- Note
- This is a low-level API and should be used with extreme caution!
◆ GOS_RTOS_DEFINE_ISR
#define GOS_RTOS_DEFINE_ISR | ( |
function
|
) |
This macro allows for an interrupt callback to use RTOS structures such as semaphores and event flags.
- Note
- This is a low-level API and should be used with extreme caution!
◆ GOS_RTOS_ISR
#define GOS_RTOS_ISR | ( |
function
|
) | __gos_ ## function |
This is used to reference an ISR function defined with GOS_RTOS_DEFINE_ISR()
- Note
- This is a low-level API and should be used with extreme caution!
◆ GOS_TRIGGER_BREAKPOINT
#define GOS_TRIGGER_BREAKPOINT | ( |
|
) | PLATFORM_TRIGGER_BREAKPOINT() |
Trigger a debugger breakpoint
- Note
- This will always trigger a breakpoint regardless of build type.
- This is a low-level API and should be used with extreme caution!