63 #define vspfunc app_vspfunc 64 #define uart_print app_uart_printextern 67 #define vspfunc( ...) (0) 68 #define uart_print( ...) 73 #define M2MB_OS_TASK_INVALID 0 74 #define M2MB_OS_TASK_INVALID_ATTR 0 76 #define M2MB_OS_TASK_AUTOSTART 1 77 #define M2MB_OS_TASK_NOT_START 0 79 #define M2MB_OS_ISR_ON 1 80 #define M2MB_OS_ISR_OFF 0 83 #define M2MB_OS_MIN_STACK_SIZE 1024 88 #define M2MB_FS_CAT ( (UINT32)0 ) 89 #define M2MB_SMS_CAT ( (UINT32)1 ) 90 #define M2MB_GNSS_CAT ( (UINT32)2 ) 91 #define M2MB_OS_CAT ( (UINT32)3 ) 154 #define M2MB_OS_ENTER_CRITICAL() do { __asm("cpsid i"); } while(0) 155 #define M2MB_OS_EXIT_CRITICAL() do { __asm("cpsie i"); } while(0)
M2MB_OS_RESULT_E m2mb_os_taskTerminate(M2MB_OS_TASK_HANDLE taskHandle)
Terminates application task.
#define ENUM_TO_INT(Prefix)
HANDLE M2MB_OS_TASK_ATTR_HANDLE
M2MB_OS_RESULT_E m2mb_os_taskSetAttrItem(M2MB_OS_TASK_ATTR_HANDLE *pTaskAttrHandle, UINT8 nCmds,...)
Set specific attribute for task creation.
void * m2mb_os_calloc(UINT32 count, UINT32 size)
Allocates bytes of memory and init space with 0.
M2MB_OS_RESULT_E m2mb_os_setSysTicks(UINT32 newTick)
Set start system time in ticks.
M2MB_OS_RESULT_E m2mb_os_taskSetItem(M2MB_OS_TASK_HANDLE taskHandle, M2MB_OS_TASK_SEL_CMD_E selCmd, void *pIn)
Set specific task properties.
M2MB_OS_RESULT_E m2mb_os_taskCooperate(void)
Make task to cooperate by releasing scheduler control.
HANDLE M2MB_OS_TASK_HANDLE
int m2mb_thread_fp_enable(void)
Sets the thread floating point unit flag.
void * m2mb_os_realloc(void *ptr, UINT32 size)
M2MB_OS_RESULT_E m2mb_os_free(void *pMem)
Free allocated memory.
UINT32 m2mb_os_getSysTicks(void)
Get system time in ticks.
M2MB_OS_RESULT_E m2mb_os_init(void)
Initialization of OS.
Types used across OS (semaphore, mutex...)
M2MB_OS_RESULT_E m2mb_os_taskWaitAbort(M2MB_OS_TASK_HANDLE taskHandle)
Abort suspension of a specified task.
enum M2MB_OS_RESULT M2MB_OS_RESULT_E
UINT32 M2MB_OS_MS2TICKS(UINT32 ms)
M2MB_OS_RESULT_E m2mb_os_taskResume(M2MB_OS_TASK_HANDLE taskHandle)
Resume suspended application task.
M2MB_OS_RESULT_E m2mb_os_taskDelete(M2MB_OS_TASK_HANDLE taskHandle)
Task delete.
FLOAT32 m2mb_os_getSysTickDuration_ms(void)
Get the duration of system tick in ms.
void * m2mb_os_malloc(UINT32 size)
Allocates bytes of memory.
M2MB_OS_RESULT_E m2mb_os_get_errno(UINT32 *pCategory, INT32 *pErrno)
Allow to get Errno saved in a relative task environment.
M2MB_OS_RESULT_E m2mb_os_taskSuspend(M2MB_OS_TASK_HANDLE taskHandle)
Suspend application task.
M2MB_OS_TASK_HANDLE m2mb_os_taskGetId(void)
Retrieves handle to the currently executing task.
M2MB_OS_RESULT_E m2mb_os_taskCreate(M2MB_OS_TASK_HANDLE *pTaskHandle, M2MB_OS_TASK_ATTR_HANDLE *pTaskAttr, ENTRY_FN entryFn, void *pArg)
Create application task.
M2MB_OS_RESULT_E m2mb_os_taskRestart(M2MB_OS_TASK_HANDLE taskHandle)
Task restart.
UINT8 m2mb_os_isrCtrl(UINT8 newIsrState)
Enable and disable interrupts (ISRs)
M2MB_OS_RESULT_E m2mb_os_taskGetItem(M2MB_OS_TASK_HANDLE taskHandle, M2MB_OS_TASK_SEL_CMD_E selCmd, MEM_W *pOut, void *pIn)
Get specific task properties.