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.