Prusa MINI Firmware overview
|
Go to the documentation of this file.
189 #define osCMSIS 0x10002
192 #define osCMSIS_KERNEL 0x10000
195 #define osKernelSystemId "KERNEL V1.00"
198 #define osFeature_MainThread 1
199 #define osFeature_Pool 1
200 #define osFeature_MailQ 1
201 #define osFeature_MessageQ 1
202 #define osFeature_Signals 8
203 #define osFeature_Semaphore 1
204 #define osFeature_Wait 0
205 #define osFeature_SysTick 1
230 #define osWaitForever 0xFFFFFFFF
252 #if ( INCLUDE_eTaskGetState == 1 )
255 osThreadRunning = 0x0,
256 osThreadReady = 0x1 ,
257 osThreadBlocked = 0x2,
258 osThreadSuspended = 0x3,
259 osThreadDeleted = 0x4,
260 osThreadError = 0x7FFFFFFF
310 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
331 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
333 osStaticThreadDef_t *controlblock;
341 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
342 osStaticTimerDef_t *controlblock;
350 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
351 osStaticMutexDef_t *controlblock;
359 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
360 osStaticSemaphoreDef_t *controlblock;
377 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
379 osStaticMessageQDef_t *controlblock;
426 #if (defined (osFeature_SysTick) && (osFeature_SysTick != 0)) // System Timer available
435 #define osKernelSysTickFrequency (configTICK_RATE_HZ)
440 #define osKernelSysTickMicroSec(microsec) (((uint64_t)microsec * (osKernelSysTickFrequency)) / 1000000)
442 #endif // System Timer available
453 #if defined (osObjectsExternal) // object is external
454 #define osThreadDef(name, thread, priority, instances, stacksz) \
455 extern const osThreadDef_t os_thread_def_##name
456 #else // define the object
458 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
459 #define osThreadDef(name, thread, priority, instances, stacksz) \
460 const osThreadDef_t os_thread_def_##name = \
461 { #name, (thread), (priority), (instances), (stacksz), NULL, NULL }
463 #define osThreadStaticDef(name, thread, priority, instances, stacksz, buffer, control) \
464 const osThreadDef_t os_thread_def_##name = \
465 { #name, (thread), (priority), (instances), (stacksz), (buffer), (control) }
466 #else //configSUPPORT_STATIC_ALLOCATION == 0
468 #define osThreadDef(name, thread, priority, instances, stacksz) \
469 const osThreadDef_t os_thread_def_##name = \
470 { #name, (thread), (priority), (instances), (stacksz)}
478 #define osThread(name) \
479 &os_thread_def_##name
525 #if (defined (osFeature_Wait) && (osFeature_Wait != 0)) // Generic Wait available
531 osEvent osWait (uint32_t millisec);
533 #endif // Generic Wait available
542 #if defined (osObjectsExternal) // object is external
543 #define osTimerDef(name, function) \
544 extern const osTimerDef_t os_timer_def_##name
545 #else // define the object
547 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
548 #define osTimerDef(name, function) \
549 const osTimerDef_t os_timer_def_##name = \
552 #define osTimerStaticDef(name, function, control) \
553 const osTimerDef_t os_timer_def_##name = \
554 { (function), (control) }
555 #else //configSUPPORT_STATIC_ALLOCATION == 0
556 #define osTimerDef(name, function) \
557 const osTimerDef_t os_timer_def_##name = \
566 #define osTimer(name) \
627 #if defined (osObjectsExternal) // object is external
628 #define osMutexDef(name) \
629 extern const osMutexDef_t os_mutex_def_##name
630 #else // define the object
632 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
633 #define osMutexDef(name) \
634 const osMutexDef_t os_mutex_def_##name = { 0, NULL }
636 #define osMutexStaticDef(name, control) \
637 const osMutexDef_t os_mutex_def_##name = { 0, (control) }
638 #else //configSUPPORT_STATIC_ALLOCATION == 0
639 #define osMutexDef(name) \
640 const osMutexDef_t os_mutex_def_##name = { 0 }
650 #define osMutex(name) \
681 #if (defined (osFeature_Semaphore) && (osFeature_Semaphore != 0)) // Semaphore available
687 #if defined (osObjectsExternal) // object is external
688 #define osSemaphoreDef(name) \
689 extern const osSemaphoreDef_t os_semaphore_def_##name
690 #else // define the object
692 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
693 #define osSemaphoreDef(name) \
694 const osSemaphoreDef_t os_semaphore_def_##name = { 0, NULL }
696 #define osSemaphoreStaticDef(name, control) \
697 const osSemaphoreDef_t os_semaphore_def_##name = { 0, (control) }
699 #else //configSUPPORT_STATIC_ALLOCATION == 0
700 #define osSemaphoreDef(name) \
701 const osSemaphoreDef_t os_semaphore_def_##name = { 0 }
709 #define osSemaphore(name) \
710 &os_semaphore_def_##name
738 #endif // Semaphore available
743 #if (defined (osFeature_Pool) && (osFeature_Pool != 0)) // Memory Pool Management available
751 #if defined (osObjectsExternal) // object is external
752 #define osPoolDef(name, no, type) \
753 extern const osPoolDef_t os_pool_def_##name
754 #else // define the object
755 #define osPoolDef(name, no, type) \
756 const osPoolDef_t os_pool_def_##name = \
757 { (no), sizeof(type), NULL }
764 #define osPool(name) \
792 #endif // Memory Pool Management available
797 #if (defined (osFeature_MessageQ) && (osFeature_MessageQ != 0)) // Message Queues available
805 #if defined (osObjectsExternal) // object is external
806 #define osMessageQDef(name, queue_sz, type) \
807 extern const osMessageQDef_t os_messageQ_def_##name
808 #else // define the object
809 #if( configSUPPORT_STATIC_ALLOCATION == 1 )
810 #define osMessageQDef(name, queue_sz, type) \
811 const osMessageQDef_t os_messageQ_def_##name = \
812 { (queue_sz), sizeof (type), NULL, NULL }
814 #define osMessageQStaticDef(name, queue_sz, type, buffer, control) \
815 const osMessageQDef_t os_messageQ_def_##name = \
816 { (queue_sz), sizeof (type) , (buffer), (control)}
817 #else //configSUPPORT_STATIC_ALLOCATION == 1
818 #define osMessageQDef(name, queue_sz, type) \
819 const osMessageQDef_t os_messageQ_def_##name = \
820 { (queue_sz), sizeof (type) }
829 #define osMessageQ(name) \
830 &os_messageQ_def_##name
854 #endif // Message Queues available
859 #if (defined (osFeature_MailQ) && (osFeature_MailQ != 0)) // Mail Queues available
867 #if defined (osObjectsExternal) // object is external
868 #define osMailQDef(name, queue_sz, type) \
869 extern struct os_mailQ_cb *os_mailQ_cb_##name \
870 extern osMailQDef_t os_mailQ_def_##name
871 #else // define the object
872 #define osMailQDef(name, queue_sz, type) \
873 struct os_mailQ_cb *os_mailQ_cb_##name; \
874 const osMailQDef_t os_mailQ_def_##name = \
875 { (queue_sz), sizeof (type), (&os_mailQ_cb_##name) }
882 #define osMailQ(name) \
927 #endif // Mail Queues available
937 #if ( INCLUDE_eTaskGetState == 1 )
943 osThreadState osThreadGetState(
osThreadId thread_id);
946 #if ( INCLUDE_eTaskGetState == 1 )
1071 #endif // _CMSIS_OS_H
osStatus osTimerStart(osTimerId timer_id, uint32_t millisec)
Start or restart a timer.
Definition: cmsis_os.c:447
void * pool
Definition: cmsis_os.c:912
WCHAR ff_wtoupper(WCHAR chr)
Definition: ccsbcs.c:303
osStatus osMessageDelete(osMessageQId queue_id)
Delete a Message Queue.
Definition: cmsis_os.c:1668
QueueHandle_t handle
Definition: cmsis_os.c:1203
osPriority tpriority
initial thread priority
Definition: cmsis_os.h:328
osPoolId pool
Definition: cmsis_os.c:1204
osEvent osSignalWait(int32_t signals, uint32_t millisec)
Wait for one or more Signal Flags to become signaled for the current RUNNING thread.
Definition: cmsis_os.c:586
const osMailQDef_t * queue_def
Definition: cmsis_os.c:1202
Definition: cmsis_os.h:386
uint32_t osSemaphoreGetCount(osSemaphoreId semaphore_id)
Returns the current count value of a counting semaphore.
Definition: cmsis_os.c:1770
osStatus osThreadList(uint8_t *buffer)
Lists all the current threads, along with their current state and stack usage high water mark.
Definition: cmsis_os.c:1587
void * osMailCAlloc(osMailQId queue_id, uint32_t millisec)
Allocate a memory block from a mail and set memory block to zero.
Definition: cmsis_os.c:1282
Definition: cmsis_os.c:1201
#define portMAX_DELAY
Definition: portmacro.h:106
osStatus osMutexRelease(osMutexId mutex_id)
Release a Mutex that was obtained by osMutexWait.
Definition: cmsis_os.c:709
uint32_t osKernelSysTick(void)
Get the value of the Kernel SysTick timer.
Definition: cmsis_os.c:227
osStatus osMutexDelete(osMutexId mutex_id)
Delete a Mutex.
Definition: cmsis_os.c:733
osStatus osKernelStart(void)
Start the RTOS Kernel with executing the specified thread.
Definition: cmsis_os.c:193
uint32_t osMessageAvailableSpace(osMessageQId queue_id)
Get the available space in a message queue.
Definition: cmsis_os.c:1658
#define portSET_INTERRUPT_MASK_FROM_ISR()
Definition: FreeRTOS.h:300
struct os_timer_def osTimerDef_t
PRIVILEGED_FUNCTION BaseType_t xTaskGenericNotifyFromISR(TaskHandle_t xTaskToNotify, uint32_t ulValue, eNotifyAction eAction, uint32_t *pulPreviousNotificationValue, BaseType_t *pxHigherPriorityTaskWoken)
PRIVILEGED_FUNCTION BaseType_t xTaskGetSchedulerState(void)
struct os_pool_cb * osPoolId
Definition: cmsis_os.h:299
uint32_t osKernelSysTick(void)
Get the value of the Kernel SysTick timer.
Definition: cmsis_os.c:227
TaskHandle_t osThreadId
Definition: cmsis_os.h:283
osEvent osMessagePeek(osMessageQId queue_id, uint32_t millisec)
Receive an item from a queue without removing the item from the queue.
Definition: cmsis_os.c:1601
PRIVILEGED_FUNCTION BaseType_t xTaskNotifyWait(uint32_t ulBitsToClearOnEntry, uint32_t ulBitsToClearOnExit, uint32_t *pulNotificationValue, TickType_t xTicksToWait)
#define osSemaphore(name)
Definition: cmsis_os.h:709
int32_t osSemaphoreWait(osSemaphoreId semaphore_id, uint32_t millisec)
Wait until a Semaphore token becomes available.
Definition: cmsis_os.c:822
priority: above normal
Definition: cmsis_os.h:222
PRIVILEGED_FUNCTION BaseType_t xTaskGenericNotify(TaskHandle_t xTaskToNotify, uint32_t ulValue, eNotifyAction eAction, uint32_t *pulPreviousNotificationValue)
PRIVILEGED_FUNCTION UBaseType_t uxQueueSpacesAvailable(const QueueHandle_t xQueue)
Definition: queue.c:1595
eTaskState
Definition: task.h:112
PRIVILEGED_FUNCTION void vTaskStartScheduler(void)
Definition: tasks.c:1826
int32_t osSignalSet(osThreadId thread_id, int32_t signals)
Set the specified Signal Flags of an active thread.
Definition: cmsis_os.c:545
struct os_mailQ_cb os_mailQ_cb_t
struct os_pool_def osPoolDef_t
PRIVILEGED_FUNCTION void * pvPortMalloc(size_t xSize)
Definition: heap_4.c:155
osThreadId osThreadCreate(const osThreadDef_t *thread_def, void *argument)
Create a thread and add it to Active Threads and set it to state READY.
Definition: cmsis_os.c:245
uint32_t item_sz
size of an item
Definition: cmsis_os.h:388
void * osPoolAlloc(osPoolId pool_id)
Allocate a memory block from a memory pool.
Definition: cmsis_os.c:979
osStatus osMailPut(osMailQId queue_id, void *mail)
Put a mail to a queue.
Definition: cmsis_os.c:1303
uint8_t type
Definition: UsbCore.h:184
osMessageQId osMessageCreate(const osMessageQDef_t *queue_def, osThreadId thread_id)
Create and Initialize a Message Queue.
Definition: cmsis_os.c:1086
osStatus osMailFree(osMailQId queue_id, void *mail)
Free a memory block from a mail.
Definition: cmsis_os.c:1392
#define xSemaphoreTake(xSemaphore, xBlockTime)
Definition: semphr.h:331
struct os_semaphore_def osSemaphoreDef_t
osStatus osThreadResumeAll(void)
Resume execution of a all suspended threads.
Definition: cmsis_os.c:1529
osStatus osThreadResume(osThreadId thread_id)
Resume execution of a suspended thread.
Definition: cmsis_os.c:1494
osStatus osKernelInitialize(void)
Initialize the RTOS Kernel for creating objects.
#define ff_free
Definition: ffconf.h:302
osStatus
Definition: cmsis_os.h:234
uint32_t stacksize
stack size requirements in bytes; 0 is default stack size
Definition: cmsis_os.h:330
uint32_t item_sz
Definition: cmsis_os.c:915
function completed; timeout occurred.
Definition: cmsis_os.h:239
PRIVILEGED_FUNCTION TickType_t xTaskGetTickCountFromISR(void)
Definition: tasks.c:2142
#define xSemaphoreTakeFromISR(xSemaphore, pxHigherPriorityTaskWoken)
Definition: semphr.h:700
uint8_t i
Definition: screen_test_graph.c:72
#define xTimerStopFromISR(xTimer, pxHigherPriorityTaskWoken)
Definition: timers.h:978
Definition: cmsis_os.h:348
void * TimerHandle_t
Definition: timers.h:118
osEvent osMessagePeek(osMessageQId queue_id, uint32_t millisec)
Receive an item from a queue without removing the item from the queue.
Definition: cmsis_os.c:1601
osStatus osRecursiveMutexWait(osMutexId mutex_id, uint32_t millisec)
Release a Recursive Mutex.
Definition: cmsis_os.c:1731
not allowed in ISR context: the function cannot be called from interrupt service routines.
Definition: cmsis_os.h:243
PRIVILEGED_FUNCTION TickType_t xTaskGetTickCount(void)
Definition: tasks.c:2127
priority: idle (lowest)
Definition: cmsis_os.h:218
int32_t osSignalSet(osThreadId thread_id, int32_t signal)
Set the specified Signal Flags of an active thread.
Definition: cmsis_os.c:545
void * osPoolCAlloc(osPoolId pool_id)
Allocate a memory block from a memory pool and set memory block to zero.
Definition: cmsis_os.c:1023
int32_t osSignalClear(osThreadId thread_id, int32_t signal)
Clear the specified Signal Flags of an active thread.
resource not available within given time: a specified resource was not available within the timeout p...
Definition: cmsis_os.h:242
osPoolId osPoolCreate(const osPoolDef_t *pool_def)
Create and Initialize a memory pool.
Definition: cmsis_os.c:926
osStatus osThreadList(uint8_t *buffer)
Lists all the current threads, along with their current state and stack usage high water mark.
Definition: cmsis_os.c:1587
osStatus osMutexRelease(osMutexId mutex_id)
Release a Mutex that was obtained by osMutexWait.
Definition: cmsis_os.c:709
osStatus osKernelStart(void)
Start the RTOS Kernel with executing the specified thread.
Definition: cmsis_os.c:193
uint32_t osMessageAvailableSpace(osMessageQId queue_id)
Get the available space in a message queue.
Definition: cmsis_os.c:1658
PRIVILEGED_FUNCTION eTaskState eTaskGetState(TaskHandle_t xTask)
osStatus osTimerDelete(osTimerId timer_id)
Delete a timer.
Definition: cmsis_os.c:515
uint32_t dummy
dummy value.
Definition: cmsis_os.h:358
#define xSemaphoreGiveFromISR(xSemaphore, pxHigherPriorityTaskWoken)
Definition: semphr.h:666
osEvent osMailGet(osMailQId queue_id, uint32_t millisec)
Get a mail from a queue.
Definition: cmsis_os.c:1336
#define _FS_TIMEOUT
Definition: ffconf.h:279
osMutexId osRecursiveMutexCreate(const osMutexDef_t *mutex_def)
Create and Initialize a Recursive Mutex.
Definition: cmsis_os.c:1684
struct os_mailQ_def osMailQDef_t
osThreadId osThreadGetId(void)
Return the thread ID of the current running thread.
Definition: cmsis_os.c:283
Definition: cmsis_os.h:357
#define xTimerStop(xTimer, xTicksToWait)
Definition: timers.h:587
osPriority osThreadGetPriority(osThreadId thread_id)
Get current priority of an active thread.
Definition: cmsis_os.c:343
#define NULL
Definition: usbd_def.h:53
osStatus osDelayUntil(uint32_t *PreviousWakeTime, uint32_t millisec)
Delay a task until a specified time.
Definition: cmsis_os.c:1546
#define ff_malloc
Definition: ffconf.h:301
osStatus status
status code: event or error information
Definition: cmsis_os.h:396
osStatus osSemaphoreDelete(osSemaphoreId semaphore_id)
Delete a Semaphore.
Definition: cmsis_os.c:889
void vPortEnterCritical(void)
Definition: port.c:407
osStatus osThreadResumeAll(void)
Resume execution of a all suspended threads.
Definition: cmsis_os.c:1529
PRIVILEGED_FUNCTION void vTaskSuspend(TaskHandle_t xTaskToSuspend)
#define pdPASS
Definition: projdefs.h:89
QueueHandle_t osMessageQId
Definition: cmsis_os.h:303
osEvent osMessageGet(osMessageQId queue_id, uint32_t millisec)
Get a Message or Wait for a Message from a Queue.
Definition: cmsis_os.c:1145
osStatus osTimerStop(osTimerId timer_id)
Stop a timer.
Definition: cmsis_os.c:486
prevent from enum down-size compiler optimization.
Definition: cmsis_os.h:249
PRIVILEGED_FUNCTION BaseType_t xTaskAbortDelay(TaskHandle_t xTask)
uint32_t currentIndex
Definition: cmsis_os.c:916
Definition: FreeRTOS.h:968
osStatus osDelay(uint32_t millisec)
Wait for Timeout (Time Delay)
Definition: cmsis_os.c:365
uint32_t TickType_t
Definition: portmacro.h:105
resource not available: a specified resource was not available.
Definition: cmsis_os.h:241
function called multiple times from ISR with same object.
Definition: cmsis_os.h:244
SemaphoreHandle_t osSemaphoreId
Definition: cmsis_os.h:295
struct os_thread_def osThreadDef_t
void * osPoolCAlloc(osPoolId pool_id)
Allocate a memory block from a memory pool and set memory block to zero.
Definition: cmsis_os.c:1023
function completed; mail event occurred.
Definition: cmsis_os.h:238
void * osPoolAlloc(osPoolId pool_id)
Allocate a memory block from a memory pool.
Definition: cmsis_os.c:979
osStatus osMutexWait(osMutexId mutex_id, uint32_t millisec)
Wait until a Mutex becomes available.
Definition: cmsis_os.c:669
PRIVILEGED_FUNCTION BaseType_t xTaskResumeFromISR(TaskHandle_t xTaskToResume)
Definition: cmsis_os.h:395
osMutexId osMutexCreate(const osMutexDef_t *mutex_def)
Create and Initialize a Mutex object.
Definition: cmsis_os.c:640
osSemaphoreId osSemaphoreCreate(const osSemaphoreDef_t *semaphore_def, int32_t count)
Create and Initialize a Semaphore object used for managing resources.
Definition: cmsis_os.c:755
osStatus osMailFree(osMailQId queue_id, void *mail)
Free a memory block from a mail.
Definition: cmsis_os.c:1392
#define osSemaphoreDef(name)
Definition: cmsis_os.h:700
osStatus osThreadYield(void)
Pass control to next thread that is in state READY.
Definition: cmsis_os.c:313
uint32_t osMessageWaiting(osMessageQId queue_id)
Get the number of messaged stored in a queue.
Definition: cmsis_os.c:1642
void * TaskHandle_t
Definition: task.h:103
osEvent osSignalWait(int32_t signals, uint32_t millisec)
Wait for one or more Signal Flags to become signaled for the current RUNNING thread.
Definition: cmsis_os.c:586
struct os_messageQ_def osMessageQDef_t
osMutexId osRecursiveMutexCreate(const osMutexDef_t *mutex_def)
Create and Initialize a Recursive Mutex.
Definition: cmsis_os.c:1684
osStatus osThreadResume(osThreadId thread_id)
Resume execution of a suspended thread.
Definition: cmsis_os.c:1494
osStatus osPoolFree(osPoolId pool_id, void *block)
Return an allocated memory block back to a specific memory pool.
Definition: cmsis_os.c:1042
system cannot determine priority or thread has illegal priority
Definition: cmsis_os.h:225
#define _SYNC_t
Definition: ffconf.h:280
#define pdFALSE
Definition: projdefs.h:86
struct os_mutex_def osMutexDef_t
PRIVILEGED_FUNCTION void vTaskDelete(TaskHandle_t xTaskToDelete)
void * osMailCAlloc(osMailQId queue_id, uint32_t millisec)
Allocate a memory block from a mail and set memory block to zero.
Definition: cmsis_os.c:1282
uint32_t pool_sz
number of items (elements) in the pool
Definition: cmsis_os.h:367
osStatus osMessagePut(osMessageQId queue_id, uint32_t info, uint32_t millisec)
Put a Message to a Queue.
Definition: cmsis_os.c:1113
#define xTimerChangePeriod(xTimer, xNewPeriod, xTicksToWait)
Definition: timers.h:667
osStatus osThreadSetPriority(osThreadId thread_id, osPriority priority)
Change priority of an active thread.
Definition: cmsis_os.c:327
osStatus osRecursiveMutexWait(osMutexId mutex_id, uint32_t millisec)
Release a Recursive Mutex.
Definition: cmsis_os.c:1731
PRIVILEGED_FUNCTION UBaseType_t uxQueueMessagesWaitingFromISR(const QueueHandle_t xQueue)
Definition: queue.c:1613
union osEvent::@55 def
event definition
Definition: FreeRTOS.h:1041
struct os_pool_cb os_pool_cb_t
#define uxSemaphoreGetCount(xSemaphore)
Definition: semphr.h:1167
#define xTimerDelete(xTimer, xTicksToWait)
Definition: timers.h:705
Definition: cmsis_os.h:366
PRIVILEGED_FUNCTION TaskHandle_t xTaskGetCurrentTaskHandle(void)
osPoolId osPoolCreate(const osPoolDef_t *pool_def)
Create and Initialize a memory pool.
Definition: cmsis_os.c:926
function completed; no error or event occurred.
Definition: cmsis_os.h:235
#define portYIELD_FROM_ISR(x)
Definition: portmacro.h:135
PRIVILEGED_FUNCTION UBaseType_t uxTaskPriorityGet(TaskHandle_t xTask)
osStatus osDelay(uint32_t millisec)
Wait for Timeout (Time Delay)
Definition: cmsis_os.c:365
osStatus osMessagePut(osMessageQId queue_id, uint32_t info, uint32_t millisec)
Put a Message to a Queue.
Definition: cmsis_os.c:1113
osStatus osThreadSetPriority(osThreadId thread_id, osPriority priority)
Change priority of an active thread.
Definition: cmsis_os.c:327
void
Definition: png.h:1083
osStatus osThreadSuspendAll(void)
Suspend execution of a all active threads.
Definition: cmsis_os.c:1518
function completed; message event occurred.
Definition: cmsis_os.h:237
osStatus osThreadSuspend(osThreadId thread_id)
Suspend execution of a thread.
Definition: cmsis_os.c:1478
QueueHandle_t SemaphoreHandle_t
Definition: semphr.h:79
osEvent osMailGet(osMailQId queue_id, uint32_t millisec)
Get a mail from a queue.
Definition: cmsis_os.c:1336
int32_t osKernelRunning(void)
Check if the RTOS kernel is already started.
Definition: cmsis_os.c:208
PRIVILEGED_FUNCTION void vQueueDelete(QueueHandle_t xQueue)
Definition: queue.c:1625
PRIVILEGED_FUNCTION void vTaskResume(TaskHandle_t xTaskToResume)
PRIVILEGED_FUNCTION BaseType_t xQueueReceiveFromISR(QueueHandle_t xQueue, void *const pvBuffer, BaseType_t *const pxHigherPriorityTaskWoken)
Definition: queue.c:1434
osMailQId osMailCreate(const osMailQDef_t *queue_def, osThreadId thread_id)
Create and Initialize mail queue.
Definition: cmsis_os.c:1214
#define portBASE_TYPE
Definition: portmacro.h:95
osSemaphoreId osSemaphoreCreate(const osSemaphoreDef_t *semaphore_def, int32_t count)
Create and Initialize a Semaphore object used for managing resources.
Definition: cmsis_os.c:755
osPriority osThreadGetPriority(osThreadId thread_id)
Get current priority of an active thread.
Definition: cmsis_os.c:343
#define vSemaphoreDelete(xSemaphore)
Definition: semphr.h:1140
osStatus osSemaphoreDelete(osSemaphoreId semaphore_id)
Delete a Semaphore.
Definition: cmsis_os.c:889
#define taskSCHEDULER_NOT_STARTED
Definition: task.h:258
Definition: cmsis_os.h:325
uint32_t osMessageWaiting(osMessageQId queue_id)
Get the number of messaged stored in a queue.
Definition: cmsis_os.c:1642
osStatus osThreadSuspend(osThreadId thread_id)
Suspend execution of a thread.
Definition: cmsis_os.c:1478
#define osWaitForever
wait forever timeout value
Definition: cmsis_os.h:230
#define taskYIELD()
Definition: task.h:203
osStatus osMessageDelete(osMessageQId queue_id)
Delete a Message Queue.
Definition: cmsis_os.c:1668
osStatus osTimerStop(osTimerId timer_id)
Stop a timer.
Definition: cmsis_os.c:486
char * name
Thread name.
Definition: cmsis_os.h:326
#define xQueueSendFromISR(xQueue, pvItemToQueue, pxHigherPriorityTaskWoken)
Definition: queue.h:1361
Definition: FreeRTOS.h:910
osMailQId osMailCreate(const osMailQDef_t *queue_def, osThreadId thread_id)
Create and Initialize mail queue.
Definition: cmsis_os.c:1214
os_pthread pthread
start address of thread function
Definition: cmsis_os.h:327
static unsigned portBASE_TYPE makeFreeRtosPriority(osPriority priority)
Definition: cmsis_os.c:146
void(* TaskFunction_t)(void *)
Definition: projdefs.h:77
#define portTICK_PERIOD_MS
Definition: portmacro.h:116
const uint8_t[]
Definition: 404_html.c:3
priority: realtime (highest)
Definition: cmsis_os.h:224
PRIVILEGED_FUNCTION void vTaskPrioritySet(TaskHandle_t xTask, UBaseType_t uxNewPriority)
uint8_t * markers
Definition: cmsis_os.c:913
priority: below normal
Definition: cmsis_os.h:220
void * osMailAlloc(osMailQId queue_id, uint32_t millisec)
Allocate a memory block from a mail.
Definition: cmsis_os.c:1260
void * QueueHandle_t
Definition: queue.h:88
system cannot determine priority or thread has illegal priority.
Definition: cmsis_os.h:245
void(* os_pthread)(void const *argument)
Definition: cmsis_os.h:273
osStatus osPoolFree(osPoolId pool_id, void *block)
Return an allocated memory block back to a specific memory pool.
Definition: cmsis_os.c:1042
void * osMailAlloc(osMailQId queue_id, uint32_t millisec)
Allocate a memory block from a mail.
Definition: cmsis_os.c:1260
function completed; signal event occurred.
Definition: cmsis_os.h:236
priority: high
Definition: cmsis_os.h:223
void osSystickHandler(void)
Handles the tick increment.
Definition: cmsis_os.c:1408
struct os_mailQ_cb * osMailQId
Definition: cmsis_os.h:307
priority: low
Definition: cmsis_os.h:219
osMailQId mail_id
mail id obtained by osMailCreate
Definition: cmsis_os.h:403
void * pool
pointer to memory for pool
Definition: cmsis_os.h:369
osTimerId osTimerCreate(const osTimerDef_t *timer_def, os_timer_type type, void *argument)
Create a timer.
Definition: cmsis_os.c:400
PRIVILEGED_FUNCTION UBaseType_t uxQueueMessagesWaiting(const QueueHandle_t xQueue)
Definition: queue.c:1579
#define portEND_SWITCHING_ISR(xSwitchRequired)
Definition: portmacro.h:134
osThreadId osThreadGetId(void)
Return the thread ID of the current running thread.
Definition: cmsis_os.c:283
unspecified RTOS error: run-time error but no other error message fits.
Definition: cmsis_os.h:248
struct os_mailQ_cb ** cb
Definition: cmsis_os.h:389
osStatus osDelayUntil(uint32_t *PreviousWakeTime, uint32_t millisec)
Delay a task until a specified time.
Definition: cmsis_os.c:1546
long BaseType_t
Definition: portmacro.h:98
#define pdTRUE
Definition: projdefs.h:87
osStatus osThreadTerminate(osThreadId thread_id)
Terminate execution of a thread and remove it from Active Threads.
Definition: cmsis_os.c:298
void osSystickHandler(void)
Handles the tick increment.
Definition: cmsis_os.c:1408
osStatus osThreadSuspendAll(void)
Suspend execution of a all active threads.
Definition: cmsis_os.c:1518
int32_t osKernelRunning(void)
Check if the RTOS kernel is already started.
Definition: cmsis_os.c:208
parameter error: a mandatory parameter was missing or specified an incorrect object.
Definition: cmsis_os.h:240
osTimerId osTimerCreate(const osTimerDef_t *timer_def, os_timer_type type, void *argument)
Create a timer.
Definition: cmsis_os.c:400
value of a parameter is out of range.
Definition: cmsis_os.h:247
PRIVILEGED_FUNCTION void vTaskDelay(const TickType_t xTicksToDelay)
osStatus osTimerStart(osTimerId timer_id, uint32_t millisec)
Start or restart a timer.
Definition: cmsis_os.c:447
system is out of memory: it was impossible to allocate or reserve memory for the operation.
Definition: cmsis_os.h:246
uint32_t item_sz
size of an item
Definition: cmsis_os.h:368
PRIVILEGED_FUNCTION BaseType_t xTaskResumeAll(void)
Definition: tasks.c:2017
#define xTimerChangePeriodFromISR(xTimer, xNewPeriod, pxHigherPriorityTaskWoken)
Definition: timers.h:1051
void xPortSysTickHandler(void)
Definition: port.c:493
osEvent osMessageGet(osMessageQId queue_id, uint32_t millisec)
Get a Message or Wait for a Message from a Queue.
Definition: cmsis_os.c:1145
uint32_t dummy
dummy value.
Definition: cmsis_os.h:349
osStatus osMailPut(osMailQId queue_id, void *mail)
Put a mail to a queue.
Definition: cmsis_os.c:1303
osStatus osRecursiveMutexRelease(osMutexId mutex_id)
Release a Recursive Mutex.
Definition: cmsis_os.c:1710
void(* os_ptimer)(void const *argument)
Definition: cmsis_os.h:277
PRIVILEGED_FUNCTION void vPortFree(void *pv)
Definition: heap_4.c:305
unsigned char BYTE
Definition: onboard_sd.h:13
osStatus osAbortDelay(osThreadId thread_id)
Abort the delay for a specific thread.
Definition: cmsis_os.c:1566
osMessageQId osMessageCreate(const osMessageQDef_t *queue_def, osThreadId thread_id)
Create and Initialize a Message Queue.
Definition: cmsis_os.c:1086
WCHAR ff_convert(WCHAR chr, UINT dir)
Definition: ccsbcs.c:275
int
Definition: createSpeedLookupTable.py:15
osStatus osKernelInitialize(void)
osStatus osMutexWait(osMutexId mutex_id, uint32_t millisec)
Wait until a Mutex becomes available.
Definition: cmsis_os.c:669
osMutexId osMutexCreate(const osMutexDef_t *mutex_def)
Create and Initialize a Mutex object.
Definition: cmsis_os.c:640
osStatus osSemaphoreRelease(osSemaphoreId semaphore_id)
Release a Semaphore token.
Definition: cmsis_os.c:862
osStatus osRecursiveMutexRelease(osMutexId mutex_id)
Release a Recursive Mutex.
Definition: cmsis_os.c:1710
osStatus osMutexDelete(osMutexId mutex_id)
Delete a Mutex.
Definition: cmsis_os.c:733
osStatus osAbortDelay(osThreadId thread_id)
Abort the delay for a specific thread.
Definition: cmsis_os.c:1566
SemaphoreHandle_t osMutexId
Definition: cmsis_os.h:291
union osEvent::@54 value
event value
osStatus osThreadYield(void)
Pass control to next thread that is in state READY.
Definition: cmsis_os.c:313
#define portCLEAR_INTERRUPT_MASK_FROM_ISR(uxSavedStatusValue)
Definition: FreeRTOS.h:304
repeating timer
Definition: cmsis_os.h:268
os_timer_type
Definition: cmsis_os.h:266
TimerHandle_t osTimerId
Definition: cmsis_os.h:287
Definition: cmsis_os.c:911
unsigned short WCHAR
Definition: integer.h:27
Definition: cmsis_os.h:339
static int inHandlerMode(void)
Definition: cmsis_os.c:173
void vPortExitCritical(void)
Definition: port.c:424
uint32_t queue_sz
number of elements in the queue
Definition: cmsis_os.h:387
#define portCHAR
Definition: portmacro.h:89
osStatus osThreadTerminate(osThreadId thread_id)
Terminate execution of a thread and remove it from Active Threads.
Definition: cmsis_os.c:298
osStatus osTimerDelete(osTimerId timer_id)
Delete a timer.
Definition: cmsis_os.c:515
os_ptimer ptimer
start address of a timer function
Definition: cmsis_os.h:340
int32_t osSemaphoreWait(osSemaphoreId semaphore_id, uint32_t millisec)
Wait until a Semaphore token becomes available.
Definition: cmsis_os.c:822
uint32_t v
message as 32-bit value
Definition: cmsis_os.h:398
priority: normal (default)
Definition: cmsis_os.h:221
Definition: cmsis_os.h:374
uint32_t osSemaphoreGetCount(osSemaphoreId semaphore_id)
Returns the current count value of a counting semaphore.
Definition: cmsis_os.c:1770
#define xQueueSend(xQueue, pvItemToQueue, xTicksToWait)
Definition: queue.h:521
PRIVILEGED_FUNCTION void vTaskSuspendAll(void)
Definition: tasks.c:1944
uint32_t pool_sz
Definition: cmsis_os.c:914
osPriority
Definition: cmsis_os.h:217
Header of cmsis_os.c A new set of APIs are added in addition to existing ones, these APIs are specifi...
osMessageQId message_id
message id obtained by osMessageCreate
Definition: cmsis_os.h:404
unsigned int UINT
Definition: onboard_sd.h:16
#define xSemaphoreGive(xSemaphore)
Definition: semphr.h:489
uint32_t queue_sz
number of elements in the queue
Definition: cmsis_os.h:375
uint32_t item_sz
size of an item
Definition: cmsis_os.h:376
one-shot timer
Definition: cmsis_os.h:267
int32_t osSignalClear(osThreadId thread_id, int32_t signals)
osThreadId osThreadCreate(const osThreadDef_t *thread_def, void *argument)
Create a thread and add it to Active Threads and set it to state READY.
Definition: cmsis_os.c:245
#define xQueueReceive(xQueue, pvBuffer, xTicksToWait)
Definition: queue.h:914
uint32_t instances
maximum number of instances of that thread function
Definition: cmsis_os.h:329
void * p
message or mail as void pointer
Definition: cmsis_os.h:399
PRIVILEGED_FUNCTION void vTaskList(char *pcWriteBuffer)
osStatus osSemaphoreRelease(osSemaphoreId semaphore_id)
Release a Semaphore token.
Definition: cmsis_os.c:862
PRIVILEGED_FUNCTION void vTaskDelayUntil(TickType_t *const pxPreviousWakeTime, const TickType_t xTimeIncrement)
#define tskIDLE_PRIORITY
Definition: task.h:193
#define xQueuePeek(xQueue, pvBuffer, xTicksToWait)
Definition: queue.h:788
int32_t signals
signal flags
Definition: cmsis_os.h:400
PRIVILEGED_FUNCTION UBaseType_t uxTaskPriorityGetFromISR(TaskHandle_t xTask)
uint8_t info[12]
Definition: masstorage.h:54