Module cmsis_os2

Source

Structs§

osEventFlagsAttr_t
Attributes structure for event flags.
osMemoryPoolAttr_t
Attributes structure for memory pool.
osMessageQueueAttr_t
Attributes structure for message queue.
osMutexAttr_t
Attributes structure for mutex.
osSemaphoreAttr_t
Attributes structure for semaphore.
osThreadAttr_t
Attributes structure for thread.
osTimerAttr_t
Attributes structure for timer.
osVersion_t
Version information.

Constants§

osFlagsError
osFlagsErrorISR
osFlagsErrorParameter
osFlagsErrorResource
osFlagsErrorTimeout
osFlagsErrorUnknown
osFlagsNoClear
osFlagsWaitAll
osFlagsWaitAny
osKernelState_t_osKernelError
< Error.
osKernelState_t_osKernelInactive
< Inactive.
osKernelState_t_osKernelLocked
< Locked.
osKernelState_t_osKernelReady
< Ready.
osKernelState_t_osKernelReserved
< Prevents enum down-size compiler optimization.
osKernelState_t_osKernelRunning
< Running.
osKernelState_t_osKernelSuspended
< Suspended.
osMutexPrioInherit
osMutexRecursive
osMutexRobust
osPriority_t_osPriorityAboveNormal
< Priority: above normal
osPriority_t_osPriorityAboveNormal1
< Priority: above normal + 1
osPriority_t_osPriorityAboveNormal2
< Priority: above normal + 2
osPriority_t_osPriorityAboveNormal3
< Priority: above normal + 3
osPriority_t_osPriorityAboveNormal4
< Priority: above normal + 4
osPriority_t_osPriorityAboveNormal5
< Priority: above normal + 5
osPriority_t_osPriorityAboveNormal6
< Priority: above normal + 6
osPriority_t_osPriorityAboveNormal7
< Priority: above normal + 7
osPriority_t_osPriorityBelowNormal
< Priority: below normal
osPriority_t_osPriorityBelowNormal1
< Priority: below normal + 1
osPriority_t_osPriorityBelowNormal2
< Priority: below normal + 2
osPriority_t_osPriorityBelowNormal3
< Priority: below normal + 3
osPriority_t_osPriorityBelowNormal4
< Priority: below normal + 4
osPriority_t_osPriorityBelowNormal5
< Priority: below normal + 5
osPriority_t_osPriorityBelowNormal6
< Priority: below normal + 6
osPriority_t_osPriorityBelowNormal7
< Priority: below normal + 7
osPriority_t_osPriorityError
< System cannot determine priority or illegal priority.
osPriority_t_osPriorityHigh
< Priority: high
osPriority_t_osPriorityHigh1
< Priority: high + 1
osPriority_t_osPriorityHigh2
< Priority: high + 2
osPriority_t_osPriorityHigh3
< Priority: high + 3
osPriority_t_osPriorityHigh4
< Priority: high + 4
osPriority_t_osPriorityHigh5
< Priority: high + 5
osPriority_t_osPriorityHigh6
< Priority: high + 6
osPriority_t_osPriorityHigh7
< Priority: high + 7
osPriority_t_osPriorityISR
< Reserved for ISR deferred thread.
osPriority_t_osPriorityIdle
< Reserved for Idle thread.
osPriority_t_osPriorityLow
< Priority: low
osPriority_t_osPriorityLow1
< Priority: low + 1
osPriority_t_osPriorityLow2
< Priority: low + 2
osPriority_t_osPriorityLow3
< Priority: low + 3
osPriority_t_osPriorityLow4
< Priority: low + 4
osPriority_t_osPriorityLow5
< Priority: low + 5
osPriority_t_osPriorityLow6
< Priority: low + 6
osPriority_t_osPriorityLow7
< Priority: low + 7
osPriority_t_osPriorityNone
< No priority (not initialized).
osPriority_t_osPriorityNormal
< Priority: normal
osPriority_t_osPriorityNormal1
< Priority: normal + 1
osPriority_t_osPriorityNormal2
< Priority: normal + 2
osPriority_t_osPriorityNormal3
< Priority: normal + 3
osPriority_t_osPriorityNormal4
< Priority: normal + 4
osPriority_t_osPriorityNormal5
< Priority: normal + 5
osPriority_t_osPriorityNormal6
< Priority: normal + 6
osPriority_t_osPriorityNormal7
< Priority: normal + 7
osPriority_t_osPriorityRealtime
< Priority: realtime
osPriority_t_osPriorityRealtime1
< Priority: realtime + 1
osPriority_t_osPriorityRealtime2
< Priority: realtime + 2
osPriority_t_osPriorityRealtime3
< Priority: realtime + 3
osPriority_t_osPriorityRealtime4
< Priority: realtime + 4
osPriority_t_osPriorityRealtime5
< Priority: realtime + 5
osPriority_t_osPriorityRealtime6
< Priority: realtime + 6
osPriority_t_osPriorityRealtime7
< Priority: realtime + 7
osPriority_t_osPriorityReserved
< Prevents enum down-size compiler optimization.
osStatus_t_osError
< Unspecified RTOS error: run-time error but no other error message fits.
osStatus_t_osErrorISR
< Not allowed in ISR context: the function cannot be called from interrupt service routines.
osStatus_t_osErrorNoMemory
< System is out of memory: it was impossible to allocate or reserve memory for the operation.
osStatus_t_osErrorParameter
< Parameter error.
osStatus_t_osErrorResource
< Resource not available.
osStatus_t_osErrorTimeout
< Operation not completed within the timeout period.
osStatus_t_osOK
< Operation completed successfully.
osStatus_t_osStatusReserved
< Prevents enum down-size compiler optimization.
osThreadDetached
osThreadJoinable
osThreadState_t_osThreadBlocked
< Blocked.
osThreadState_t_osThreadError
< Error.
osThreadState_t_osThreadInactive
< Inactive.
osThreadState_t_osThreadReady
< Ready.
osThreadState_t_osThreadReserved
< Prevents enum down-size compiler optimization.
osThreadState_t_osThreadRunning
< Running.
osThreadState_t_osThreadTerminated
< Terminated.
osTimerType_t_osTimerOnce
< One-shot timer.
osTimerType_t_osTimerPeriodic
< Repeating timer.
osWaitForever

Functions§

osDelay
Wait for Timeout (Time Delay). \param[in] ticks \ref CMSIS_RTOS_TimeOutValue “time ticks” value \return status code that indicates the execution status of the function.
osDelayUntil
Wait until specified time. \param[in] ticks absolute time in ticks \return status code that indicates the execution status of the function.
osEventFlagsClear
Clear the specified Event Flags. \param[in] ef_id event flags ID obtained by \ref osEventFlagsNew. \param[in] flags specifies the flags that shall be cleared. \return event flags before clearing or error code if highest bit set.
osEventFlagsDelete
Delete an Event Flags object. \param[in] ef_id event flags ID obtained by \ref osEventFlagsNew. \return status code that indicates the execution status of the function.
osEventFlagsGet
Get the current Event Flags. \param[in] ef_id event flags ID obtained by \ref osEventFlagsNew. \return current event flags.
osEventFlagsGetName
Get name of an Event Flags object. \param[in] ef_id event flags ID obtained by \ref osEventFlagsNew. \return name as null-terminated string.
osEventFlagsNew
Create and Initialize an Event Flags object. \param[in] attr event flags attributes; NULL: default values. \return event flags ID for reference by other functions or NULL in case of error.
osEventFlagsSet
Set the specified Event Flags. \param[in] ef_id event flags ID obtained by \ref osEventFlagsNew. \param[in] flags specifies the flags that shall be set. \return event flags after setting or error code if highest bit set.
osEventFlagsWait
Wait for one or more Event Flags to become signaled. \param[in] ef_id event flags ID obtained by \ref osEventFlagsNew. \param[in] flags specifies the flags to wait for. \param[in] options specifies flags options (osFlagsXxxx). \param[in] timeout \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out. \return event flags before clearing or error code if highest bit set.
osKernelGetInfo
Get RTOS Kernel Information. \param[out] version pointer to buffer for retrieving version information. \param[out] id_buf pointer to buffer for retrieving kernel identification string. \param[in] id_size size of buffer for kernel identification string. \return status code that indicates the execution status of the function.
osKernelGetState
Get the current RTOS Kernel state. \return current RTOS Kernel state.
osKernelGetSysTimerCount
Get the RTOS kernel system timer count. \return RTOS kernel current system timer count as 32-bit value.
osKernelGetSysTimerFreq
Get the RTOS kernel system timer frequency. \return frequency of the system timer in hertz, i.e. timer ticks per second.
osKernelGetTickCount
Get the RTOS kernel tick count. \return RTOS kernel current tick count.
osKernelGetTickFreq
Get the RTOS kernel tick frequency. \return frequency of the kernel tick in hertz, i.e. kernel ticks per second.
osKernelInitialize
Initialize the RTOS Kernel. \return status code that indicates the execution status of the function.
osKernelLock
Lock the RTOS Kernel scheduler. \return previous lock state (1 - locked, 0 - not locked, error code if negative).
osKernelRestoreLock
Restore the RTOS Kernel scheduler lock state. \param[in] lock lock state obtained by \ref osKernelLock or \ref osKernelUnlock. \return new lock state (1 - locked, 0 - not locked, error code if negative).
osKernelResume
Resume the RTOS Kernel scheduler. \param[in] sleep_ticks time in ticks for how long the system was in sleep or power-down mode.
osKernelStart
Start the RTOS Kernel scheduler. \return status code that indicates the execution status of the function.
osKernelSuspend
Suspend the RTOS Kernel scheduler. \return time in ticks, for how long the system can sleep or power-down.
osKernelUnlock
Unlock the RTOS Kernel scheduler. \return previous lock state (1 - locked, 0 - not locked, error code if negative).
osMemoryPoolAlloc
Allocate a memory block from a Memory Pool. \param[in] mp_id memory pool ID obtained by \ref osMemoryPoolNew. \param[in] timeout \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out. \return address of the allocated memory block or NULL in case of no memory is available.
osMemoryPoolDelete
Delete a Memory Pool object. \param[in] mp_id memory pool ID obtained by \ref osMemoryPoolNew. \return status code that indicates the execution status of the function.
osMemoryPoolFree
Return an allocated memory block back to a Memory Pool. \param[in] mp_id memory pool ID obtained by \ref osMemoryPoolNew. \param[in] block address of the allocated memory block to be returned to the memory pool. \return status code that indicates the execution status of the function.
osMemoryPoolGetBlockSize
Get memory block size in a Memory Pool. \param[in] mp_id memory pool ID obtained by \ref osMemoryPoolNew. \return memory block size in bytes.
osMemoryPoolGetCapacity
Get maximum number of memory blocks in a Memory Pool. \param[in] mp_id memory pool ID obtained by \ref osMemoryPoolNew. \return maximum number of memory blocks.
osMemoryPoolGetCount
Get number of memory blocks used in a Memory Pool. \param[in] mp_id memory pool ID obtained by \ref osMemoryPoolNew. \return number of memory blocks used.
osMemoryPoolGetName
Get name of a Memory Pool object. \param[in] mp_id memory pool ID obtained by \ref osMemoryPoolNew. \return name as null-terminated string.
osMemoryPoolGetSpace
Get number of memory blocks available in a Memory Pool. \param[in] mp_id memory pool ID obtained by \ref osMemoryPoolNew. \return number of memory blocks available.
osMemoryPoolNew
Create and Initialize a Memory Pool object. \param[in] block_count maximum number of memory blocks in memory pool. \param[in] block_size memory block size in bytes. \param[in] attr memory pool attributes; NULL: default values. \return memory pool ID for reference by other functions or NULL in case of error.
osMessageQueueDelete
Delete a Message Queue object. \param[in] mq_id message queue ID obtained by \ref osMessageQueueNew. \return status code that indicates the execution status of the function.
osMessageQueueGet
Get a Message from a Queue or timeout if Queue is empty. \param[in] mq_id message queue ID obtained by \ref osMessageQueueNew. \param[out] msg_ptr pointer to buffer for message to get from a queue. \param[out] msg_prio pointer to buffer for message priority or NULL. \param[in] timeout \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out. \return status code that indicates the execution status of the function.
osMessageQueueGetCapacity
Get maximum number of messages in a Message Queue. \param[in] mq_id message queue ID obtained by \ref osMessageQueueNew. \return maximum number of messages.
osMessageQueueGetCount
Get number of queued messages in a Message Queue. \param[in] mq_id message queue ID obtained by \ref osMessageQueueNew. \return number of queued messages.
osMessageQueueGetMsgSize
Get maximum message size in a Memory Pool. \param[in] mq_id message queue ID obtained by \ref osMessageQueueNew. \return maximum message size in bytes.
osMessageQueueGetName
Get name of a Message Queue object. \param[in] mq_id message queue ID obtained by \ref osMessageQueueNew. \return name as null-terminated string.
osMessageQueueGetSpace
Get number of available slots for messages in a Message Queue. \param[in] mq_id message queue ID obtained by \ref osMessageQueueNew. \return number of available slots for messages.
osMessageQueueNew
Create and Initialize a Message Queue object. \param[in] msg_count maximum number of messages in queue. \param[in] msg_size maximum message size in bytes. \param[in] attr message queue attributes; NULL: default values. \return message queue ID for reference by other functions or NULL in case of error.
osMessageQueuePut
Put a Message into a Queue or timeout if Queue is full. \param[in] mq_id message queue ID obtained by \ref osMessageQueueNew. \param[in] msg_ptr pointer to buffer with message to put into a queue. \param[in] msg_prio message priority. \param[in] timeout \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out. \return status code that indicates the execution status of the function.
osMessageQueueReset
Reset a Message Queue to initial empty state. \param[in] mq_id message queue ID obtained by \ref osMessageQueueNew. \return status code that indicates the execution status of the function.
osMutexAcquire
Acquire a Mutex or timeout if it is locked. \param[in] mutex_id mutex ID obtained by \ref osMutexNew. \param[in] timeout \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out. \return status code that indicates the execution status of the function.
osMutexDelete
Delete a Mutex object. \param[in] mutex_id mutex ID obtained by \ref osMutexNew. \return status code that indicates the execution status of the function.
osMutexGetName
Get name of a Mutex object. \param[in] mutex_id mutex ID obtained by \ref osMutexNew. \return name as null-terminated string.
osMutexGetOwner
Get Thread which owns a Mutex object. \param[in] mutex_id mutex ID obtained by \ref osMutexNew. \return thread ID of owner thread or NULL when mutex was not acquired.
osMutexNew
Create and Initialize a Mutex object. \param[in] attr mutex attributes; NULL: default values. \return mutex ID for reference by other functions or NULL in case of error.
osMutexRelease
Release a Mutex that was acquired by \ref osMutexAcquire. \param[in] mutex_id mutex ID obtained by \ref osMutexNew. \return status code that indicates the execution status of the function.
osSemaphoreAcquire
Acquire a Semaphore token or timeout if no tokens are available. \param[in] semaphore_id semaphore ID obtained by \ref osSemaphoreNew. \param[in] timeout \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out. \return status code that indicates the execution status of the function.
osSemaphoreDelete
Delete a Semaphore object. \param[in] semaphore_id semaphore ID obtained by \ref osSemaphoreNew. \return status code that indicates the execution status of the function.
osSemaphoreGetCount
Get current Semaphore token count. \param[in] semaphore_id semaphore ID obtained by \ref osSemaphoreNew. \return number of tokens available.
osSemaphoreGetName
Get name of a Semaphore object. \param[in] semaphore_id semaphore ID obtained by \ref osSemaphoreNew. \return name as null-terminated string.
osSemaphoreNew
Create and Initialize a Semaphore object. \param[in] max_count maximum number of available tokens. \param[in] initial_count initial number of available tokens. \param[in] attr semaphore attributes; NULL: default values. \return semaphore ID for reference by other functions or NULL in case of error.
osSemaphoreRelease
Release a Semaphore token up to the initial maximum count. \param[in] semaphore_id semaphore ID obtained by \ref osSemaphoreNew. \return status code that indicates the execution status of the function.
osThreadDetach
Detach a thread (thread storage can be reclaimed when thread terminates). \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return status code that indicates the execution status of the function.
osThreadEnumerate
Enumerate active threads. \param[out] thread_array pointer to array for retrieving thread IDs. \param[in] array_items maximum number of items in array for retrieving thread IDs. \return number of enumerated threads.
osThreadExit
Terminate execution of current running thread.
osThreadFlagsClear
Clear the specified Thread Flags of current running thread. \param[in] flags specifies the flags of the thread that shall be cleared. \return thread flags before clearing or error code if highest bit set.
osThreadFlagsGet
Get the current Thread Flags of current running thread. \return current thread flags.
osThreadFlagsSet
Set the specified Thread Flags of a thread. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \param[in] flags specifies the flags of the thread that shall be set. \return thread flags after setting or error code if highest bit set.
osThreadFlagsWait
Wait for one or more Thread Flags of the current running thread to become signaled. \param[in] flags specifies the flags to wait for. \param[in] options specifies flags options (osFlagsXxxx). \param[in] timeout \ref CMSIS_RTOS_TimeOutValue or 0 in case of no time-out. \return thread flags before clearing or error code if highest bit set.
osThreadGetCount
Get number of active threads. \return number of active threads.
osThreadGetId
Return the thread ID of the current running thread. \return thread ID for reference by other functions or NULL in case of error.
osThreadGetName
Get name of a thread. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return name as null-terminated string.
osThreadGetPriority
Get current priority of a thread. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return current priority value of the specified thread.
osThreadGetStackSize
Get stack size of a thread. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return stack size in bytes.
osThreadGetStackSpace
Get available stack space of a thread based on stack watermark recording during execution. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return remaining stack space in bytes.
osThreadGetState
Get current thread state of a thread. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return current thread state of the specified thread.
osThreadJoin
Wait for specified thread to terminate. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return status code that indicates the execution status of the function.
osThreadNew
Create a thread and add it to Active Threads. \param[in] func thread function. \param[in] argument pointer that is passed to the thread function as start argument. \param[in] attr thread attributes; NULL: default values. \return thread ID for reference by other functions or NULL in case of error.
osThreadResume
Resume execution of a thread. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return status code that indicates the execution status of the function.
osThreadSetPriority
Change priority of a thread. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \param[in] priority new priority value for the thread function. \return status code that indicates the execution status of the function.
osThreadSuspend
Suspend execution of a thread. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return status code that indicates the execution status of the function.
osThreadTerminate
Terminate execution of a thread. \param[in] thread_id thread ID obtained by \ref osThreadNew or \ref osThreadGetId. \return status code that indicates the execution status of the function.
osThreadYield
Pass control to next thread that is in state \b READY. \return status code that indicates the execution status of the function.
osTimerDelete
Delete a timer. \param[in] timer_id timer ID obtained by \ref osTimerNew. \return status code that indicates the execution status of the function.
osTimerGetName
Get name of a timer. \param[in] timer_id timer ID obtained by \ref osTimerNew. \return name as null-terminated string.
osTimerIsRunning
Check if a timer is running. \param[in] timer_id timer ID obtained by \ref osTimerNew. \return 0 not running, 1 running.
osTimerNew
Create and Initialize a timer. \param[in] func function pointer to callback function. \param[in] type \ref osTimerOnce for one-shot or \ref osTimerPeriodic for periodic behavior. \param[in] argument argument to the timer callback function. \param[in] attr timer attributes; NULL: default values. \return timer ID for reference by other functions or NULL in case of error.
osTimerStart
Start or restart a timer. \param[in] timer_id timer ID obtained by \ref osTimerNew. \param[in] ticks \ref CMSIS_RTOS_TimeOutValue “time ticks” value of the timer. \return status code that indicates the execution status of the function.
osTimerStop
Stop a timer. \param[in] timer_id timer ID obtained by \ref osTimerNew. \return status code that indicates the execution status of the function.

Type Aliases§

TZ_ModuleId_t
\details Data type that identifies secure software modules called by a process.
osEventFlagsId_t
\details Event Flags ID identifies the event flags.
osKernelState_t
Kernel state.
osMemoryPoolId_t
\details Memory Pool ID identifies the memory pool.
osMessageQueueId_t
\details Message Queue ID identifies the message queue.
osMutexId_t
\details Mutex ID identifies the mutex.
osPriority_t
Priority values.
osSemaphoreId_t
\details Semaphore ID identifies the semaphore.
osStatus_t
Status code values returned by CMSIS-RTOS functions.
osThreadFunc_t
Entry point of a thread.
osThreadId_t
\details Thread ID identifies the thread.
osThreadState_t
Thread state.
osTimerFunc_t
Timer callback function.
osTimerId_t
\details Timer ID identifies the timer.
osTimerType_t
Timer type.