|
PixelKey
NeoPixel USB Key
|
#include <stdlib.h>#include <stdint.h>#include <stdbool.h>#include "hal_data.h"#include "hal_device.h"#include "hal_tasks.h"Macros | |
| #define | TASK_FLAG(i) ((task_id_t) FLAG(i)) |
| #define | XTASK(task, fn, doc) TASK_ID_ ## task = FLAG(TASK_ ## task) /*!< Flag for @ref TASK_ ## task */, |
| #define | XTASK(task, fn, doc) void fn (void) __attribute__ (( weak, alias ("default_task") )); |
| #define | XTASK(task, fn, doc) [TASK_ ## task] = fn, |
Enumerations | |
| enum | task_id_t { TASK_ID_NONE = 0 , TASK_ID_REBOOT = ( 1 << TASK_REBOOT ) , TASK_ID_FRAME_TX = ( 1 << TASK_FRAME_TX ) , TASK_ID_FRAME_RENDER = ( 1 << TASK_FRAME_RENDER ) , TASK_ID_TERMINAL_CONNECTED = ( 1 << TASK_TERMINAL_CONNECTED ) , TASK_ID_CMD_RX = ( 1 << TASK_CMD_RX ) , TASK_ID_CMD_HANDLER = ( 1 << TASK_CMD_HANDLER ) , TASK_ID_CMD_PROMPT = ( 1 << TASK_CMD_PROMPT ) } |
Functions | |
| void | pixelkey_reboot (void) |
| void | tasks_queue (task_t task) |
| Queue a task for execution. More... | |
| task_status_t | tasks_status_get (task_t task) |
| Gets the status of a given task. More... | |
| void | tasks_run (task_fn_t idle_task) |
| Main task runner loop. More... | |
Variables | |
| static volatile task_id_t | queued_tasks = TASK_ID_NONE |
| static volatile task_id_t | pending_tasks = TASK_ID_NONE |
| static volatile task_t | running_task = TASK_UNDEFINED |