Module to declare HAL tasks library. More...
Typedefs | |
typedef void(* | hal_task_handler_t )(void) |
Prototype of a HAL task handler. More... | |
Enumerations | |
enum | hal_task_id_t { HAL_TIMER_TASK_ID, HAL_UART_TASK_ID, HAL_TIMER_CRITICAL_MANUAL_TASK, HAL_TASKS_AMOUNT } |
Identifiers for registered HAL handlers. More... | |
Functions | |
void | hal_task_handler (void) |
void | hal_timer_task_handler (void) |
void | hal_uart_task_handler (void) |
void | hal_timer_critical_manual_handler (void) |
static void | hal_task_post (hal_task_id_t hal_task_id) |
Notify task scheduler to add a HAL task for execution. More... | |
static void | hal_task_unpost (hal_task_id_t hal_task_id) |
Removes a task from pending list in HAL task scheduler. More... | |
Variables | |
volatile uint_fast16_t | g_hal_tasks |
Pending HAL tasks. More... | |
Module to declare HAL tasks library.
typedef void(* hal_task_handler_t)(void) |
Prototype of a HAL task handler.
Handler which will be called from HAL task.
enum hal_task_id_t |
Identifiers for registered HAL handlers.
enumeration with identifiers of registered HAL handlers. HAL handlers will be called from the HAL task.
|
inlinestatic |
Notify task scheduler to add a HAL task for execution.
The function sets a marker for the HAL task for execution.
[in] | hal_task_id | HAL task identifier (see hal_task_id_t enumeration). |
|
inlinestatic |
Removes a task from pending list in HAL task scheduler.
The function removes a marker from the HAL execution list.
[in] | hal_task_id | HAL task identifier (see hal_task_id_t enumeration). |
volatile uint_fast16_t g_hal_tasks |
Pending HAL tasks.
Variable which includes markers of pending HAL tasks.