|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
#include "list.h"Go to the source code of this file.
Classes | |
| struct | xTIME_OUT |
| struct | xMEMORY_REGION |
| struct | xTASK_PARAMETERS |
| struct | xTASK_STATUS |
Macros | |
| #define | tskKERNEL_VERSION_NUMBER "V10.6.2" |
| #define | tskKERNEL_VERSION_MAJOR 10 |
| #define | tskKERNEL_VERSION_MINOR 6 |
| #define | tskKERNEL_VERSION_BUILD 2 |
| #define | tskMPU_REGION_READ_ONLY ( 1UL << 0UL ) |
| #define | tskMPU_REGION_READ_WRITE ( 1UL << 1UL ) |
| #define | tskMPU_REGION_EXECUTE_NEVER ( 1UL << 2UL ) |
| #define | tskMPU_REGION_NORMAL_MEMORY ( 1UL << 3UL ) |
| #define | tskMPU_REGION_DEVICE_MEMORY ( 1UL << 4UL ) |
| #define | tskMPU_READ_PERMISSION ( 1UL << 0UL ) |
| #define | tskMPU_WRITE_PERMISSION ( 1UL << 1UL ) |
| #define | tskDEFAULT_INDEX_TO_NOTIFY ( 0 ) |
| #define | tskIDLE_PRIORITY ( ( UBaseType_t ) 0U ) |
| Defines the priority used by the idle task. | |
| #define | taskYIELD() |
| #define | taskENTER_CRITICAL() |
| #define | taskENTER_CRITICAL_FROM_ISR() |
| #define | taskEXIT_CRITICAL() |
| #define | taskEXIT_CRITICAL_FROM_ISR(x) |
| #define | taskDISABLE_INTERRUPTS() |
| #define | taskENABLE_INTERRUPTS() |
| #define | taskSCHEDULER_SUSPENDED ( ( BaseType_t ) 0 ) |
| #define | taskSCHEDULER_NOT_STARTED ( ( BaseType_t ) 1 ) |
| #define | taskSCHEDULER_RUNNING ( ( BaseType_t ) 2 ) |
| #define | vTaskDelayUntil(pxPreviousWakeTime, xTimeIncrement) |
| #define | xTaskNotify(xTaskToNotify, ulValue, eAction) |
| #define | xTaskNotifyIndexed(xTaskToNotify, uxIndexToNotify, ulValue, eAction) |
| #define | xTaskNotifyAndQuery(xTaskToNotify, ulValue, eAction, pulPreviousNotifyValue) |
| #define | xTaskNotifyAndQueryIndexed(xTaskToNotify, uxIndexToNotify, ulValue, eAction, pulPreviousNotifyValue) |
| #define | xTaskNotifyFromISR(xTaskToNotify, ulValue, eAction, pxHigherPriorityTaskWoken) |
| #define | xTaskNotifyIndexedFromISR(xTaskToNotify, uxIndexToNotify, ulValue, eAction, pxHigherPriorityTaskWoken) |
| #define | xTaskNotifyAndQueryIndexedFromISR(xTaskToNotify, uxIndexToNotify, ulValue, eAction, pulPreviousNotificationValue, pxHigherPriorityTaskWoken) |
| #define | xTaskNotifyAndQueryFromISR(xTaskToNotify, ulValue, eAction, pulPreviousNotificationValue, pxHigherPriorityTaskWoken) |
| #define | xTaskNotifyWait(ulBitsToClearOnEntry, ulBitsToClearOnExit, pulNotificationValue, xTicksToWait) |
| #define | xTaskNotifyWaitIndexed(uxIndexToWaitOn, ulBitsToClearOnEntry, ulBitsToClearOnExit, pulNotificationValue, xTicksToWait) |
| #define | xTaskNotifyGive(xTaskToNotify) |
| #define | xTaskNotifyGiveIndexed(xTaskToNotify, uxIndexToNotify) |
| #define | vTaskNotifyGiveFromISR(xTaskToNotify, pxHigherPriorityTaskWoken) |
| #define | vTaskNotifyGiveIndexedFromISR(xTaskToNotify, uxIndexToNotify, pxHigherPriorityTaskWoken) |
| #define | ulTaskNotifyTake(xClearCountOnExit, xTicksToWait) |
| #define | ulTaskNotifyTakeIndexed(uxIndexToWaitOn, xClearCountOnExit, xTicksToWait) |
| #define | xTaskNotifyStateClear(xTask) |
| #define | xTaskNotifyStateClearIndexed(xTask, uxIndexToClear) |
| #define | ulTaskNotifyValueClear(xTask, ulBitsToClear) |
| #define | ulTaskNotifyValueClearIndexed(xTask, uxIndexToClear, ulBitsToClear) |
Typedefs | |
| typedef struct tskTaskControlBlock * | TaskHandle_t |
| typedef BaseType_t(* | TaskHookFunction_t) (void *) |
| typedef struct xTIME_OUT | TimeOut_t |
| typedef struct xMEMORY_REGION | MemoryRegion_t |
| typedef struct xTASK_PARAMETERS | TaskParameters_t |
| typedef struct xTASK_STATUS | TaskStatus_t |
Enumerations | |
| enum | eTaskState { eRunning = 0 , eReady , eBlocked , eSuspended , eDeleted , eInvalid } |
| enum | eNotifyAction { eNoAction = 0 , eSetBits , eIncrement , eSetValueWithOverwrite , eSetValueWithoutOverwrite } |
| enum | eSleepModeStatus { eAbortSleep = 0 , eStandardSleep } |
| #define taskDISABLE_INTERRUPTS | ( | ) |
| #define taskENABLE_INTERRUPTS | ( | ) |
| #define taskENTER_CRITICAL | ( | ) |
Definition at line 215 of file task.h.
Referenced by prvAddNewTaskToReadyList(), prvCheckTasksWaitingTermination(), prvIsQueueEmpty(), prvIsQueueFull(), prvUnlockQueue(), uxQueueMessagesWaiting(), uxQueueSpacesAvailable(), vPortGetHeapStats(), vTaskSetTimeOutState(), xEventGroupClearBits(), xEventGroupSync(), xEventGroupWaitBits(), xQueueGenericReset(), xQueueGenericSend(), xQueuePeek(), xQueueReceive(), xQueueSemaphoreTake(), xStreamBufferReceive(), xStreamBufferReset(), xStreamBufferSend(), xTaskCatchUpTicks(), xTaskCheckForTimeOut(), and xTaskResumeAll().
| #define taskENTER_CRITICAL_FROM_ISR | ( | ) |
| #define taskEXIT_CRITICAL | ( | ) |
Definition at line 230 of file task.h.
Referenced by prvAddNewTaskToReadyList(), prvCheckTasksWaitingTermination(), prvIsQueueEmpty(), prvIsQueueFull(), prvUnlockQueue(), uxQueueMessagesWaiting(), uxQueueSpacesAvailable(), vPortGetHeapStats(), vTaskSetTimeOutState(), xEventGroupClearBits(), xEventGroupSync(), xEventGroupWaitBits(), xQueueGenericReset(), xQueueGenericSend(), xQueuePeek(), xQueueReceive(), xQueueSemaphoreTake(), xStreamBufferReceive(), xStreamBufferReset(), xStreamBufferSend(), xTaskCatchUpTicks(), xTaskCheckForTimeOut(), and xTaskResumeAll().
| #define taskEXIT_CRITICAL_FROM_ISR | ( | x | ) |
Definition at line 231 of file task.h.
Referenced by osMessageQueueGetSpace().
| #define taskSCHEDULER_NOT_STARTED ( ( BaseType_t ) 1 ) |
Definition at line 257 of file task.h.
Referenced by IRQ_Context(), osKernelGetState(), osKernelInitialize(), osKernelLock(), osKernelRestoreLock(), osKernelStart(), and osKernelUnlock().
| #define taskSCHEDULER_RUNNING ( ( BaseType_t ) 2 ) |
Definition at line 258 of file task.h.
Referenced by osKernelGetState(), osKernelLock(), osKernelRestoreLock(), and osKernelUnlock().
| #define taskSCHEDULER_SUSPENDED ( ( BaseType_t ) 0 ) |
Definition at line 256 of file task.h.
Referenced by osKernelGetState(), osKernelLock(), osKernelRestoreLock(), osKernelUnlock(), xEventGroupSync(), xEventGroupWaitBits(), xQueueGenericSend(), xQueuePeek(), xQueueReceive(), and xQueueSemaphoreTake().
| #define taskYIELD | ( | ) |
Definition at line 201 of file task.h.
Referenced by osThreadYield(), and portTASK_FUNCTION().
| #define tskIDLE_PRIORITY ( ( UBaseType_t ) 0U ) |
Defines the priority used by the idle task.
This must not be modified.
Definition at line 191 of file task.h.
Referenced by portTASK_FUNCTION().
| #define ulTaskNotifyTake | ( | xClearCountOnExit, | |
| xTicksToWait ) |
| #define ulTaskNotifyTakeIndexed | ( | uxIndexToWaitOn, | |
| xClearCountOnExit, | |||
| xTicksToWait ) |
| #define ulTaskNotifyValueClear | ( | xTask, | |
| ulBitsToClear ) |
| #define ulTaskNotifyValueClearIndexed | ( | xTask, | |
| uxIndexToClear, | |||
| ulBitsToClear ) |
| #define vTaskDelayUntil | ( | pxPreviousWakeTime, | |
| xTimeIncrement ) |
| #define vTaskNotifyGiveFromISR | ( | xTaskToNotify, | |
| pxHigherPriorityTaskWoken ) |
| #define vTaskNotifyGiveIndexedFromISR | ( | xTaskToNotify, | |
| uxIndexToNotify, | |||
| pxHigherPriorityTaskWoken ) |
| #define xTaskNotify | ( | xTaskToNotify, | |
| ulValue, | |||
| eAction ) |
| #define xTaskNotifyAndQuery | ( | xTaskToNotify, | |
| ulValue, | |||
| eAction, | |||
| pulPreviousNotifyValue ) |
| #define xTaskNotifyAndQueryFromISR | ( | xTaskToNotify, | |
| ulValue, | |||
| eAction, | |||
| pulPreviousNotificationValue, | |||
| pxHigherPriorityTaskWoken ) |
| #define xTaskNotifyAndQueryIndexed | ( | xTaskToNotify, | |
| uxIndexToNotify, | |||
| ulValue, | |||
| eAction, | |||
| pulPreviousNotifyValue ) |
| #define xTaskNotifyAndQueryIndexedFromISR | ( | xTaskToNotify, | |
| uxIndexToNotify, | |||
| ulValue, | |||
| eAction, | |||
| pulPreviousNotificationValue, | |||
| pxHigherPriorityTaskWoken ) |
| #define xTaskNotifyFromISR | ( | xTaskToNotify, | |
| ulValue, | |||
| eAction, | |||
| pxHigherPriorityTaskWoken ) |
Definition at line 2314 of file task.h.
Referenced by xStreamBufferReceiveCompletedFromISR(), and xStreamBufferSendCompletedFromISR().
| #define xTaskNotifyGive | ( | xTaskToNotify | ) |
| #define xTaskNotifyGiveIndexed | ( | xTaskToNotify, | |
| uxIndexToNotify ) |
| #define xTaskNotifyIndexed | ( | xTaskToNotify, | |
| uxIndexToNotify, | |||
| ulValue, | |||
| eAction ) |
| #define xTaskNotifyIndexedFromISR | ( | xTaskToNotify, | |
| uxIndexToNotify, | |||
| ulValue, | |||
| eAction, | |||
| pxHigherPriorityTaskWoken ) |
| #define xTaskNotifyStateClear | ( | xTask | ) |
Definition at line 2791 of file task.h.
Referenced by xStreamBufferReceive(), and xStreamBufferSend().
| #define xTaskNotifyStateClearIndexed | ( | xTask, | |
| uxIndexToClear ) |
| #define xTaskNotifyWait | ( | ulBitsToClearOnEntry, | |
| ulBitsToClearOnExit, | |||
| pulNotificationValue, | |||
| xTicksToWait ) |
Definition at line 2457 of file task.h.
Referenced by xStreamBufferReceive(), and xStreamBufferSend().
| #define xTaskNotifyWaitIndexed | ( | uxIndexToWaitOn, | |
| ulBitsToClearOnEntry, | |||
| ulBitsToClearOnExit, | |||
| pulNotificationValue, | |||
| xTicksToWait ) |
| typedef struct xMEMORY_REGION MemoryRegion_t |
| typedef struct tskTaskControlBlock* TaskHandle_t |
| typedef BaseType_t(* TaskHookFunction_t) (void *) |
| typedef struct xTASK_PARAMETERS TaskParameters_t |
| typedef struct xTASK_STATUS TaskStatus_t |
| enum eNotifyAction |
| enum eSleepModeStatus |
| enum eTaskState |
| eSleepModeStatus eTaskConfirmSleepModeStatus | ( | void | ) |
References PRIVILEGED_FUNCTION.
| eTaskState eTaskGetState | ( | TaskHandle_t | xTask | ) |
task.
h
INCLUDE_eTaskGetState must be defined as 1 for this function to be available. See the configuration section for more information.
Obtain the state of any task. States are encoded by the eTaskState enumerated type.
| xTask | Handle of the task to be queried. |
References PRIVILEGED_FUNCTION.
Referenced by osThreadGetState(), and osThreadTerminate().
| char * pcTaskGetName | ( | TaskHandle_t | xTaskToQuery | ) |
Definition at line 2353 of file tasks.c.
References configASSERT, tskTaskControlBlock::pcTaskName, and prvGetTCBFromHandle.
Referenced by osThreadGetName().
| TaskHandle_t pvTaskIncrementMutexHeldCount | ( | void | ) |
References PRIVILEGED_FUNCTION.
Referenced by xQueueSemaphoreTake().
| uint32_t ulTaskGenericNotifyTake | ( | UBaseType_t | uxIndexToWaitOn, |
| BaseType_t | xClearCountOnExit, | ||
| TickType_t | xTicksToWait ) |
References PRIVILEGED_FUNCTION.
| uint32_t ulTaskGenericNotifyValueClear | ( | TaskHandle_t | xTask, |
| UBaseType_t | uxIndexToClear, | ||
| uint32_t | ulBitsToClear ) |
References PRIVILEGED_FUNCTION.
| configRUN_TIME_COUNTER_TYPE ulTaskGetIdleRunTimeCounter | ( | void | ) |
References configRUN_TIME_COUNTER_TYPE, and PRIVILEGED_FUNCTION.
| configRUN_TIME_COUNTER_TYPE ulTaskGetIdleRunTimePercent | ( | void | ) |
References configRUN_TIME_COUNTER_TYPE, and PRIVILEGED_FUNCTION.
| configRUN_TIME_COUNTER_TYPE ulTaskGetRunTimeCounter | ( | const TaskHandle_t | xTask | ) |
References configRUN_TIME_COUNTER_TYPE, and PRIVILEGED_FUNCTION.
| configRUN_TIME_COUNTER_TYPE ulTaskGetRunTimePercent | ( | const TaskHandle_t | xTask | ) |
References configRUN_TIME_COUNTER_TYPE, and PRIVILEGED_FUNCTION.
| UBaseType_t uxTaskGetNumberOfTasks | ( | void | ) |
Definition at line 2345 of file tasks.c.
References uxCurrentNumberOfTasks.
Referenced by osThreadEnumerate(), and osThreadGetCount().
| UBaseType_t uxTaskGetStackHighWaterMark | ( | TaskHandle_t | xTask | ) |
INCLUDE_uxTaskGetStackHighWaterMark must be set to 1 in FreeRTOSConfig.h for this function to be available.
Returns the high water mark of the stack associated with xTask. That is, the minimum free stack space there has been (in words, so on a 32 bit machine a value of 1 means 4 bytes) since the task started. The smaller the returned number the closer the task has come to overflowing its stack.
uxTaskGetStackHighWaterMark() and uxTaskGetStackHighWaterMark2() are the same except for their return type. Using configSTACK_DEPTH_TYPE allows the user to determine the return type. It gets around the problem of the value overflowing on 8-bit types without breaking backward compatibility for applications that expect an 8-bit return type.
| xTask | Handle of the task associated with the stack to be checked. Set xTask to NULL to check the stack of the calling task. |
References PRIVILEGED_FUNCTION.
Referenced by osThreadGetStackSpace().
| configSTACK_DEPTH_TYPE uxTaskGetStackHighWaterMark2 | ( | TaskHandle_t | xTask | ) |
INCLUDE_uxTaskGetStackHighWaterMark2 must be set to 1 in FreeRTOSConfig.h for this function to be available.
Returns the high water mark of the stack associated with xTask. That is, the minimum free stack space there has been (in words, so on a 32 bit machine a value of 1 means 4 bytes) since the task started. The smaller the returned number the closer the task has come to overflowing its stack.
uxTaskGetStackHighWaterMark() and uxTaskGetStackHighWaterMark2() are the same except for their return type. Using configSTACK_DEPTH_TYPE allows the user to determine the return type. It gets around the problem of the value overflowing on 8-bit types without breaking backward compatibility for applications that expect an 8-bit return type.
| xTask | Handle of the task associated with the stack to be checked. Set xTask to NULL to check the stack of the calling task. |
References configSTACK_DEPTH_TYPE, and PRIVILEGED_FUNCTION.
| UBaseType_t uxTaskGetSystemState | ( | TaskStatus_t *const | pxTaskStatusArray, |
| const UBaseType_t | uxArraySize, | ||
| configRUN_TIME_COUNTER_TYPE *const | pulTotalRunTime ) |
configUSE_TRACE_FACILITY must be defined as 1 in FreeRTOSConfig.h for uxTaskGetSystemState() to be available.
uxTaskGetSystemState() populates an TaskStatus_t structure for each task in the system. TaskStatus_t structures contain, among other things, members for the task handle, task name, task priority, task state, and total amount of run time consumed by the task. See the TaskStatus_t structure definition in this file for the full member list.
NOTE: This function is intended for debugging use only as its use results in the scheduler remaining suspended for an extended period.
| pxTaskStatusArray | A pointer to an array of TaskStatus_t structures. The array must contain at least one TaskStatus_t structure for each task that is under the control of the RTOS. The number of tasks under the control of the RTOS can be determined using the uxTaskGetNumberOfTasks() API function. |
| uxArraySize | The size of the array pointed to by the pxTaskStatusArray parameter. The size is specified as the number of indexes in the array, or the number of TaskStatus_t structures contained in the array, not by the number of bytes in the array. |
| pulTotalRunTime | If configGENERATE_RUN_TIME_STATS is set to 1 in FreeRTOSConfig.h then *pulTotalRunTime is set by uxTaskGetSystemState() to the total run time (as defined by the run time stats clock, see https://www.FreeRTOS.org/rtos-run-time-stats.html) since the target booted. pulTotalRunTime can be set to NULL to omit the total run time information. |
Example usage:
References configRUN_TIME_COUNTER_TYPE, and PRIVILEGED_FUNCTION.
Referenced by osThreadEnumerate().
| UBaseType_t uxTaskGetTaskNumber | ( | TaskHandle_t | xTask | ) |
References PRIVILEGED_FUNCTION.
| UBaseType_t uxTaskPriorityGet | ( | const TaskHandle_t | xTask | ) |
References PRIVILEGED_FUNCTION.
Referenced by osThreadGetPriority().
| UBaseType_t uxTaskPriorityGetFromISR | ( | const TaskHandle_t | xTask | ) |
task.
h
A version of uxTaskPriorityGet() that can be used from an ISR.
References PRIVILEGED_FUNCTION.
| TickType_t uxTaskResetEventItemValue | ( | void | ) |
Definition at line 4725 of file tasks.c.
References configMAX_PRIORITIES, listGET_LIST_ITEM_VALUE, listSET_LIST_ITEM_VALUE, and pxCurrentTCB.
Referenced by xEventGroupSync(), and xEventGroupWaitBits().
| void vTaskAllocateMPURegions | ( | TaskHandle_t | xTask, |
| const MemoryRegion_t *const | pxRegions ) |
References PRIVILEGED_FUNCTION.
| void vTaskDelay | ( | const TickType_t | xTicksToDelay | ) |
References PRIVILEGED_FUNCTION.
Referenced by osDelay().
| void vTaskDelete | ( | TaskHandle_t | xTaskToDelete | ) |
References PRIVILEGED_FUNCTION.
Referenced by osThreadExit(), and osThreadTerminate().
| void vTaskEndScheduler | ( | void | ) |
Definition at line 2092 of file tasks.c.
References pdFALSE, portDISABLE_INTERRUPTS, vPortEndScheduler(), and xSchedulerRunning.
| void vTaskGenericNotifyGiveFromISR | ( | TaskHandle_t | xTaskToNotify, |
| UBaseType_t | uxIndexToNotify, | ||
| BaseType_t * | pxHigherPriorityTaskWoken ) |
References PRIVILEGED_FUNCTION.
| void vTaskGetInfo | ( | TaskHandle_t | xTask, |
| TaskStatus_t * | pxTaskStatus, | ||
| BaseType_t | xGetFreeStackSpace, | ||
| eTaskState | eState ) |
References PRIVILEGED_FUNCTION.
| void vTaskGetRunTimeStats | ( | char * | pcWriteBuffer | ) |
References PRIVILEGED_FUNCTION.
| void vTaskInternalSetTimeOutState | ( | TimeOut_t *const | pxTimeOut | ) |
Definition at line 3358 of file tasks.c.
References xNumOfOverflows, xTIME_OUT::xOverflowCount, xTickCount, and xTIME_OUT::xTimeOnEntering.
Referenced by xQueueGenericSend(), xQueuePeek(), xQueueReceive(), xQueueSemaphoreTake(), and xTaskCheckForTimeOut().
| void vTaskList | ( | char * | pcWriteBuffer | ) |
References PRIVILEGED_FUNCTION.
| void vTaskMissedYield | ( | void | ) |
Definition at line 3431 of file tasks.c.
References pdTRUE, and xYieldPending.
Referenced by prvUnlockQueue().
| void vTaskPlaceOnEventList | ( | List_t *const | pxEventList, |
| const TickType_t | xTicksToWait ) |
Definition at line 3143 of file tasks.c.
References configASSERT, pdTRUE, prvAddCurrentTaskToDelayedList(), pxCurrentTCB, and vListInsert().
Referenced by xQueueGenericSend(), xQueuePeek(), xQueueReceive(), and xQueueSemaphoreTake().
| void vTaskPlaceOnEventListRestricted | ( | List_t *const | pxEventList, |
| TickType_t | xTicksToWait, | ||
| const BaseType_t | xWaitIndefinitely ) |
References portDONT_DISCARD, and PRIVILEGED_FUNCTION.
| void vTaskPlaceOnUnorderedEventList | ( | List_t * | pxEventList, |
| const TickType_t | xItemValue, | ||
| const TickType_t | xTicksToWait ) |
Definition at line 3168 of file tasks.c.
References configASSERT, listINSERT_END, listSET_LIST_ITEM_VALUE, pdTRUE, prvAddCurrentTaskToDelayedList(), pxCurrentTCB, taskEVENT_LIST_ITEM_VALUE_IN_USE, and uxSchedulerSuspended.
Referenced by xEventGroupSync(), and xEventGroupWaitBits().
| void vTaskPriorityDisinheritAfterTimeout | ( | TaskHandle_t const | pxMutexHolder, |
| UBaseType_t | uxHighestPriorityWaitingTask ) |
References PRIVILEGED_FUNCTION.
Referenced by xQueueSemaphoreTake().
| void vTaskPrioritySet | ( | TaskHandle_t | xTask, |
| UBaseType_t | uxNewPriority ) |
References PRIVILEGED_FUNCTION.
Referenced by osThreadSetPriority().
| void vTaskRemoveFromUnorderedEventList | ( | ListItem_t * | pxEventListItem, |
| const TickType_t | xItemValue ) |
Definition at line 3297 of file tasks.c.
References configASSERT, listGET_LIST_ITEM_OWNER, listREMOVE_ITEM, listSET_LIST_ITEM_VALUE, pdTRUE, prvAddTaskToReadyList, prvResetNextTaskUnblockTime(), pxCurrentTCB, taskEVENT_LIST_ITEM_VALUE_IN_USE, tskTaskControlBlock::uxPriority, uxSchedulerSuspended, tskTaskControlBlock::xStateListItem, and xYieldPending.
Referenced by vEventGroupDelete(), and xEventGroupSetBits().
| void vTaskResume | ( | TaskHandle_t | xTaskToResume | ) |
References PRIVILEGED_FUNCTION.
Referenced by osThreadResume().
| void vTaskSetTaskNumber | ( | TaskHandle_t | xTask, |
| const UBaseType_t | uxHandle ) |
References PRIVILEGED_FUNCTION.
| void vTaskSetTimeOutState | ( | TimeOut_t *const | pxTimeOut | ) |
Definition at line 3346 of file tasks.c.
References configASSERT, taskENTER_CRITICAL, taskEXIT_CRITICAL, xNumOfOverflows, xTIME_OUT::xOverflowCount, xTickCount, and xTIME_OUT::xTimeOnEntering.
Referenced by xStreamBufferSend().
| void vTaskStartScheduler | ( | void | ) |
Definition at line 1967 of file tasks.c.
References configASSERT, configIDLE_TASK_NAME, configINITIAL_TICK_COUNT, configMINIMAL_STACK_SIZE, configSET_TLS_BLOCK, errCOULD_NOT_ALLOCATE_REQUIRED_MEMORY, mtCOVERAGE_TEST_MARKER, NULL, pdFAIL, pdPASS, pdTRUE, portCONFIGURE_TIMER_FOR_RUN_TIME_STATS, portDISABLE_INTERRUPTS, portMAX_DELAY, portPRIVILEGE_BIT, pxCurrentTCB, traceTASK_SWITCHED_IN, uxTopUsedPriority, xIdleTaskHandle, xNextTaskUnblockTime, xPortStartScheduler(), xSchedulerRunning, xTickCount, and xTimerCreateTimerTask().
Referenced by osKernelStart().
| void vTaskStepTick | ( | TickType_t | xTicksToJump | ) |
References PRIVILEGED_FUNCTION.
| void vTaskSuspend | ( | TaskHandle_t | xTaskToSuspend | ) |
References PRIVILEGED_FUNCTION.
Referenced by osThreadSuspend().
| void vTaskSuspendAll | ( | void | ) |
Definition at line 2103 of file tasks.c.
References portMEMORY_BARRIER, portSOFTWARE_BARRIER, and uxSchedulerSuspended.
Referenced by board_sleep(), osKernelLock(), osKernelRestoreLock(), osThreadEnumerate(), portTASK_FUNCTION(), prvHeapInit(), vEventGroupDelete(), vPortFree(), vPortGetHeapStats(), xEventGroupSetBits(), xEventGroupSync(), xEventGroupWaitBits(), xQueueGenericSend(), xQueuePeek(), xQueueReceive(), xQueueSemaphoreTake(), and xTaskCatchUpTicks().
| portDONT_DISCARD void vTaskSwitchContext | ( | void | ) |
Definition at line 3069 of file tasks.c.
References configRUN_TIME_COUNTER_TYPE, configSET_TLS_BLOCK, mtCOVERAGE_TEST_MARKER, pdFALSE, pdTRUE, pxCurrentTCB, taskCHECK_FOR_STACK_OVERFLOW, taskSELECT_HIGHEST_PRIORITY_TASK, traceTASK_SWITCHED_IN, traceTASK_SWITCHED_OUT, uxSchedulerSuspended, and xYieldPending.
Referenced by xPortStartScheduler().
| BaseType_t xTaskAbortDelay | ( | TaskHandle_t | xTask | ) |
References PRIVILEGED_FUNCTION.
| BaseType_t xTaskCallApplicationTaskHook | ( | TaskHandle_t | xTask, |
| void * | pvParameter ) |
Calls the hook function associated with xTask. Passing xTask as NULL has the effect of calling the Running tasks (the calling task) hook function.
pvParameter is passed to the hook function for the task to interpret as it wants. The return value is the value returned by the task hook function registered by the user.
References PRIVILEGED_FUNCTION.
| BaseType_t xTaskCatchUpTicks | ( | TickType_t | xTicksToCatchUp | ) |
Definition at line 2676 of file tasks.c.
References configASSERT, taskENTER_CRITICAL, taskEXIT_CRITICAL, uxSchedulerSuspended, vTaskSuspendAll(), xPendedTicks, and xTaskResumeAll().
Referenced by board_sleep().
| BaseType_t xTaskCheckForTimeOut | ( | TimeOut_t *const | pxTimeOut, |
| TickType_t *const | pxTicksToWait ) |
Definition at line 3366 of file tasks.c.
References configASSERT, pdFALSE, pdTRUE, portMAX_DELAY, pxCurrentTCB, taskENTER_CRITICAL, taskEXIT_CRITICAL, vTaskInternalSetTimeOutState(), xNumOfOverflows, xTIME_OUT::xOverflowCount, xTickCount, and xTIME_OUT::xTimeOnEntering.
Referenced by xQueueGenericSend(), xQueuePeek(), xQueueReceive(), xQueueSemaphoreTake(), and xStreamBufferSend().
| BaseType_t xTaskDelayUntil | ( | TickType_t *const | pxPreviousWakeTime, |
| const TickType_t | xTimeIncrement ) |
References PRIVILEGED_FUNCTION.
Referenced by osDelayUntil().
| BaseType_t xTaskGenericNotify | ( | TaskHandle_t | xTaskToNotify, |
| UBaseType_t | uxIndexToNotify, | ||
| uint32_t | ulValue, | ||
| eNotifyAction | eAction, | ||
| uint32_t * | pulPreviousNotificationValue ) |
References PRIVILEGED_FUNCTION.
| BaseType_t xTaskGenericNotifyFromISR | ( | TaskHandle_t | xTaskToNotify, |
| UBaseType_t | uxIndexToNotify, | ||
| uint32_t | ulValue, | ||
| eNotifyAction | eAction, | ||
| uint32_t * | pulPreviousNotificationValue, | ||
| BaseType_t * | pxHigherPriorityTaskWoken ) |
References PRIVILEGED_FUNCTION.
| BaseType_t xTaskGenericNotifyStateClear | ( | TaskHandle_t | xTask, |
| UBaseType_t | uxIndexToClear ) |
References PRIVILEGED_FUNCTION.
| BaseType_t xTaskGenericNotifyWait | ( | UBaseType_t | uxIndexToWaitOn, |
| uint32_t | ulBitsToClearOnEntry, | ||
| uint32_t | ulBitsToClearOnExit, | ||
| uint32_t * | pulNotificationValue, | ||
| TickType_t | xTicksToWait ) |
References PRIVILEGED_FUNCTION.
| TaskHandle_t xTaskGetCurrentTaskHandle | ( | void | ) |
References PRIVILEGED_FUNCTION.
Referenced by osThreadGetId(), xStreamBufferReceive(), and xStreamBufferSend().
| TaskHandle_t xTaskGetHandle | ( | const char * | pcNameToQuery | ) |
References PRIVILEGED_FUNCTION.
| TaskHandle_t xTaskGetIdleTaskHandle | ( | void | ) |
xTaskGetIdleTaskHandle() is only available if INCLUDE_xTaskGetIdleTaskHandle is set to 1 in FreeRTOSConfig.h.
Simply returns the handle of the idle task. It is not valid to call xTaskGetIdleTaskHandle() before the scheduler has been started.
References PRIVILEGED_FUNCTION.
| BaseType_t xTaskGetSchedulerState | ( | void | ) |
| TickType_t xTaskGetTickCount | ( | void | ) |
Definition at line 2299 of file tasks.c.
References portTICK_TYPE_ENTER_CRITICAL, portTICK_TYPE_EXIT_CRITICAL, and xTickCount.
Referenced by osDelayUntil(), osKernelGetSysTimerCount(), and osKernelGetTickCount().
| TickType_t xTaskGetTickCountFromISR | ( | void | ) |
Definition at line 2314 of file tasks.c.
References portTICK_TYPE_CLEAR_INTERRUPT_MASK_FROM_ISR, portTICK_TYPE_SET_INTERRUPT_MASK_FROM_ISR, and xTickCount.
Referenced by osKernelGetTickCount().
| BaseType_t xTaskIncrementTick | ( | void | ) |
Definition at line 2780 of file tasks.c.
References listCURRENT_LIST_LENGTH, listGET_LIST_ITEM_VALUE, listGET_OWNER_OF_HEAD_ENTRY, listLIST_IS_EMPTY, listLIST_ITEM_CONTAINER, listREMOVE_ITEM, mtCOVERAGE_TEST_MARKER, NULL, pdFALSE, pdTRUE, portMAX_DELAY, prvAddTaskToReadyList, pxCurrentTCB, pxDelayedTaskList, pxReadyTasksLists, taskSWITCH_DELAYED_LISTS, traceTASK_INCREMENT_TICK, tskTaskControlBlock::uxPriority, uxSchedulerSuspended, tskTaskControlBlock::xEventListItem, xNextTaskUnblockTime, xPendedTicks, tskTaskControlBlock::xStateListItem, xTickCount, and xYieldPending.
Referenced by xPortSysTickHandler(), and xTaskResumeAll().
| BaseType_t xTaskPriorityDisinherit | ( | TaskHandle_t const | pxMutexHolder | ) |
References PRIVILEGED_FUNCTION.
Referenced by prvCopyDataToQueue().
| BaseType_t xTaskPriorityInherit | ( | TaskHandle_t const | pxMutexHolder | ) |
References PRIVILEGED_FUNCTION.
Referenced by xQueueSemaphoreTake().
| BaseType_t xTaskRemoveFromEventList | ( | const List_t *const | pxEventList | ) |
Definition at line 3229 of file tasks.c.
References configASSERT, listGET_OWNER_OF_HEAD_ENTRY, listINSERT_END, listREMOVE_ITEM, pdFALSE, pdTRUE, prvAddTaskToReadyList, prvResetNextTaskUnblockTime(), pxCurrentTCB, tskTaskControlBlock::uxPriority, uxSchedulerSuspended, tskTaskControlBlock::xEventListItem, xPendingReadyList, tskTaskControlBlock::xStateListItem, and xYieldPending.
Referenced by prvUnlockQueue(), xQueueGenericReset(), xQueueGenericSend(), xQueueGenericSendFromISR(), xQueueGiveFromISR(), xQueuePeek(), xQueueReceive(), xQueueReceiveFromISR(), and xQueueSemaphoreTake().
| BaseType_t xTaskResumeAll | ( | void | ) |
Definition at line 2187 of file tasks.c.
References configASSERT, listGET_OWNER_OF_HEAD_ENTRY, listLIST_IS_EMPTY, listREMOVE_ITEM, mtCOVERAGE_TEST_MARKER, NULL, pdFALSE, pdTRUE, portMEMORY_BARRIER, prvAddTaskToReadyList, prvResetNextTaskUnblockTime(), pxCurrentTCB, taskENTER_CRITICAL, taskEXIT_CRITICAL, taskYIELD_IF_USING_PREEMPTION, uxCurrentNumberOfTasks, tskTaskControlBlock::uxPriority, uxSchedulerSuspended, tskTaskControlBlock::xEventListItem, xPendedTicks, xPendingReadyList, tskTaskControlBlock::xStateListItem, xTaskIncrementTick(), and xYieldPending.
Referenced by board_sleep(), osKernelRestoreLock(), osKernelUnlock(), osThreadEnumerate(), portTASK_FUNCTION(), prvHeapInit(), vEventGroupDelete(), vPortFree(), vPortGetHeapStats(), xEventGroupSetBits(), xEventGroupSync(), xEventGroupWaitBits(), xQueueGenericSend(), xQueuePeek(), xQueueReceive(), xQueueSemaphoreTake(), and xTaskCatchUpTicks().
| BaseType_t xTaskResumeFromISR | ( | TaskHandle_t | xTaskToResume | ) |
References PRIVILEGED_FUNCTION.