Go to the documentation of this file.
   33 #ifndef INC_FREERTOS_H 
   34 #error "include FreeRTOS.h must appear in source files before include task.h" 
   47 #define tskKERNEL_VERSION_NUMBER "V9.0.0" 
   48 #define tskKERNEL_VERSION_MAJOR 9 
   49 #define tskKERNEL_VERSION_MINOR 0 
   50 #define tskKERNEL_VERSION_BUILD 0 
  122 #if ( ( portUSING_MPU_WRAPPERS == 1 ) && ( configSUPPORT_STATIC_ALLOCATION == 1 ) ) 
  155 #define tskIDLE_PRIORITY            ( ( UBaseType_t ) 0U ) 
  165 #define taskYIELD()                 portYIELD() 
  179 #define taskENTER_CRITICAL()        portENTER_CRITICAL() 
  180 #define taskENTER_CRITICAL_FROM_ISR() portSET_INTERRUPT_MASK_FROM_ISR() 
  194 #define taskEXIT_CRITICAL()         portEXIT_CRITICAL() 
  195 #define taskEXIT_CRITICAL_FROM_ISR( x ) portCLEAR_INTERRUPT_MASK_FROM_ISR( x ) 
  204 #define taskDISABLE_INTERRUPTS()    portDISABLE_INTERRUPTS() 
  214 #define taskENABLE_INTERRUPTS()     portENABLE_INTERRUPTS() 
  219 #define taskSCHEDULER_SUSPENDED     ( ( BaseType_t ) 0 ) 
  220 #define taskSCHEDULER_NOT_STARTED   ( ( BaseType_t ) 1 ) 
  221 #define taskSCHEDULER_RUNNING       ( ( BaseType_t ) 2 ) 
  321 #if( configSUPPORT_DYNAMIC_ALLOCATION == 1 ) 
  323                         const char * 
const pcName,  
 
  325                         void * 
const pvParameters,
 
  437 #if( configSUPPORT_STATIC_ALLOCATION == 1 ) 
  439                                 const char * 
const pcName, 
 
  440                                 const uint32_t ulStackDepth,
 
  441                                 void * 
const pvParameters,
 
  519 #if( portUSING_MPU_WRAPPERS == 1 ) 
  607 #if( ( portUSING_MPU_WRAPPERS == 1 ) && ( configSUPPORT_STATIC_ALLOCATION == 1 ) ) 
 1431 #ifdef configUSE_APPLICATION_TASK_TAG 
 1432 #if configUSE_APPLICATION_TASK_TAG == 1 
 1453 #if( configNUM_THREAD_LOCAL_STORAGE_POINTERS > 0 ) 
 1767 #define xTaskNotify( xTaskToNotify, ulValue, eAction ) xTaskGenericNotify( ( xTaskToNotify ), ( ulValue ), ( eAction ), NULL ) 
 1768 #define xTaskNotifyAndQuery( xTaskToNotify, ulValue, eAction, pulPreviousNotifyValue ) xTaskGenericNotify( ( xTaskToNotify ), ( ulValue ), ( eAction ), ( pulPreviousNotifyValue ) ) 
 1858 #define xTaskNotifyFromISR( xTaskToNotify, ulValue, eAction, pxHigherPriorityTaskWoken ) xTaskGenericNotifyFromISR( ( xTaskToNotify ), ( ulValue ), ( eAction ), NULL, ( pxHigherPriorityTaskWoken ) ) 
 1859 #define xTaskNotifyAndQueryFromISR( xTaskToNotify, ulValue, eAction, pulPreviousNotificationValue, pxHigherPriorityTaskWoken ) xTaskGenericNotifyFromISR( ( xTaskToNotify ), ( ulValue ), ( eAction ), ( pulPreviousNotificationValue ), ( pxHigherPriorityTaskWoken ) ) 
 1980 #define xTaskNotifyGive( xTaskToNotify ) xTaskGenericNotify( ( xTaskToNotify ), ( 0 ), eIncrement, NULL ) 
  
 
@ eIncrement
Definition: task.h:86
 
#define configSTACK_DEPTH_TYPE
Definition: FreeRTOS.h:827
 
UBaseType_t uxTaskGetNumberOfTasks(void) PRIVILEGED_FUNCTION
Definition: tasks.c:2260
 
TickType_t uxTaskResetEventItemValue(void) PRIVILEGED_FUNCTION
Definition: tasks.c:4382
 
BaseType_t xTaskCallApplicationTaskHook(TaskHandle_t xTask, void *pvParameter) PRIVILEGED_FUNCTION
 
UBaseType_t uxTaskGetSystemState(TaskStatus_t *const pxTaskStatusArray, const UBaseType_t uxArraySize, uint32_t *const pulTotalRunTime) PRIVILEGED_FUNCTION
 
#define portNUM_CONFIGURABLE_REGIONS
Definition: portable.h:85
 
BaseType_t(* TaskHookFunction_t)(void *)
Definition: task.h:68
 
UBaseType_t uxCurrentPriority
Definition: task.h:135
 
void vTaskAllocateMPURegions(TaskHandle_t xTask, const MemoryRegion_t *const pxRegions) PRIVILEGED_FUNCTION
 
eNotifyAction
Definition: task.h:83
 
void * pvParameters
Definition: task.h:118
 
#define pxMutexHolder
Definition: queue.c:67
 
void * pvBaseAddress
Definition: task.h:105
 
BaseType_t xTaskRemoveFromEventList(const List_t *const pxEventList) PRIVILEGED_FUNCTION
Definition: tasks.c:2983
 
void vTaskPlaceOnEventList(List_t *const pxEventList, const TickType_t xTicksToWait) PRIVILEGED_FUNCTION
Definition: tasks.c:2909
 
char * pcTaskGetName(TaskHandle_t xTaskToQuery) PRIVILEGED_FUNCTION
Definition: tasks.c:2268
 
void vTaskStepTick(const TickType_t xTicksToJump) PRIVILEGED_FUNCTION
 
MemoryRegion_t xRegions[portNUM_CONFIGURABLE_REGIONS]
Definition: task.h:121
 
UBaseType_t uxTaskPriorityGet(TaskHandle_t xTask) PRIVILEGED_FUNCTION
Definition: tasks.c:1403
 
void vTaskSetTimeOutState(TimeOut_t *const pxTimeOut) PRIVILEGED_FUNCTION
Definition: tasks.c:3085
 
eTaskState
Definition: task.h:72
 
uint16_t usStackDepth
Definition: task.h:117
 
void vTaskSuspend(TaskHandle_t xTaskToSuspend) PRIVILEGED_FUNCTION
Definition: tasks.c:1629
 
BaseType_t xTaskAbortDelay(TaskHandle_t xTask) PRIVILEGED_FUNCTION
 
TaskHandle_t xHandle
Definition: task.h:131
 
void vTaskInternalSetTimeOutState(TimeOut_t *const pxTimeOut) PRIVILEGED_FUNCTION
Definition: tasks.c:3097
 
@ eNoAction
Definition: task.h:84
 
UBaseType_t xTaskNumber
Definition: task.h:133
 
struct xTASK_PARAMETERS TaskParameters_t
 
void vTaskStartScheduler(void) PRIVILEGED_FUNCTION
Definition: tasks.c:1900
 
BaseType_t xTaskCheckForTimeOut(TimeOut_t *const pxTimeOut, TickType_t *const pxTicksToWait) PRIVILEGED_FUNCTION
Definition: tasks.c:3105
 
BaseType_t xTaskNotifyWait(uint32_t ulBitsToClearOnEntry, uint32_t ulBitsToClearOnExit, uint32_t *pulNotificationValue, TickType_t xTicksToWait) PRIVILEGED_FUNCTION
Definition: tasks.c:4483
 
TaskHandle_t xTaskGetIdleTaskHandle(void) PRIVILEGED_FUNCTION
 
void vTaskDelayUntil(TickType_t *const pxPreviousWakeTime, const TickType_t xTimeIncrement) PRIVILEGED_FUNCTION
Definition: tasks.c:1203
 
BaseType_t xTaskGenericNotify(TaskHandle_t xTaskToNotify, uint32_t ulValue, eNotifyAction eAction, uint32_t *pulPreviousNotificationValue) PRIVILEGED_FUNCTION
Definition: tasks.c:4563
 
@ eInvalid
Definition: task.h:78
 
TaskFunction_t pvTaskCode
Definition: task.h:115
 
void vTaskSuspendAll(void) PRIVILEGED_FUNCTION
Definition: tasks.c:2031
 
@ eSetBits
Definition: task.h:85
 
void vTaskRemoveFromUnorderedEventList(ListItem_t *pxEventListItem, const TickType_t xItemValue) PRIVILEGED_FUNCTION
Definition: tasks.c:3051
 
@ eRunning
Definition: task.h:73
 
eTaskState eTaskGetState(TaskHandle_t xTask) PRIVILEGED_FUNCTION
Definition: tasks.c:1332
 
#define PRIVILEGED_FUNCTION
Definition: mpu_wrappers.h:174
 
@ eDeleted
Definition: task.h:77
 
uint32_t TickType_t
Definition: portmacro.h:64
 
UBaseType_t uxTaskGetStackHighWaterMark(TaskHandle_t xTask) PRIVILEGED_FUNCTION
 
void vTaskPrioritySet(TaskHandle_t xTask, UBaseType_t uxNewPriority) PRIVILEGED_FUNCTION
Definition: tasks.c:1465
 
void * pvTaskIncrementMutexHeldCount(void) PRIVILEGED_FUNCTION
 
@ eSetValueWithOverwrite
Definition: task.h:87
 
@ eStandardSleep
Definition: task.h:146
 
void * TaskHandle_t
Definition: task.h:62
 
@ eReady
Definition: task.h:74
 
void vTaskPlaceOnUnorderedEventList(List_t *pxEventList, const TickType_t xItemValue, const TickType_t xTicksToWait) PRIVILEGED_FUNCTION
Definition: tasks.c:2926
 
StackType_t * puxStackBuffer
Definition: task.h:120
 
unsigned long UBaseType_t
Definition: portmacro.h:58
 
void vTaskGetInfo(TaskHandle_t xTask, TaskStatus_t *pxTaskStatus, BaseType_t xGetFreeStackSpace, eTaskState eState) PRIVILEGED_FUNCTION
 
@ eAbortSleep
Definition: task.h:145
 
eTaskState eCurrentState
Definition: task.h:134
 
eSleepModeStatus
Definition: task.h:144
 
uint32_t ulParameters
Definition: task.h:107
 
void vTaskDelay(const TickType_t xTicksToDelay) PRIVILEGED_FUNCTION
Definition: tasks.c:1287
 
void vTaskList(char *pcWriteBuffer) PRIVILEGED_FUNCTION
 
UBaseType_t uxPriority
Definition: task.h:119
 
@ eNoTasksWaitingTimeout
Definition: task.h:147
 
StackType_t * pxStackBase
Definition: task.h:138
 
portSTACK_TYPE StackType_t
Definition: portmacro.h:56
 
const char * pcTaskName
Definition: task.h:132
 
uint16_t usStackHighWaterMark
Definition: task.h:139
 
eSleepModeStatus eTaskConfirmSleepModeStatus(void) PRIVILEGED_FUNCTION
 
void vTaskPriorityDisinheritAfterTimeout(TaskHandle_t const pxMutexHolder, UBaseType_t uxHighestPriorityWaitingTask) PRIVILEGED_FUNCTION
 
Definition: FreeRTOS.h:986
 
void vTaskEndScheduler(void) PRIVILEGED_FUNCTION
Definition: tasks.c:2020
 
void(* TaskFunction_t)(void *)
Definition: projdefs.h:36
 
BaseType_t xTaskResumeFromISR(TaskHandle_t xTaskToResume) PRIVILEGED_FUNCTION
 
uint32_t ulRunTimeCounter
Definition: task.h:137
 
void vTaskGetRunTimeStats(char *pcWriteBuffer) PRIVILEGED_FUNCTION
 
struct xTIME_OUT TimeOut_t
 
uint32_t ulLengthInBytes
Definition: task.h:106
 
TickType_t xTaskGetTickCountFromISR(void) PRIVILEGED_FUNCTION
Definition: tasks.c:2229
 
BaseType_t xTaskGenericNotifyFromISR(TaskHandle_t xTaskToNotify, uint32_t ulValue, eNotifyAction eAction, uint32_t *pulPreviousNotificationValue, BaseType_t *pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
Definition: tasks.c:4669
 
struct xTASK_STATUS TaskStatus_t
 
@ eSuspended
Definition: task.h:76
 
BaseType_t xOverflowCount
Definition: task.h:96
 
long BaseType_t
Definition: portmacro.h:57
 
TickType_t xTaskGetTickCount(void) PRIVILEGED_FUNCTION
Definition: tasks.c:2214
 
void vTaskSetTaskNumber(TaskHandle_t xTask, const UBaseType_t uxHandle) PRIVILEGED_FUNCTION
 
UBaseType_t uxTaskGetTaskNumber(TaskHandle_t xTask) PRIVILEGED_FUNCTION
 
void vTaskMissedYield(void) PRIVILEGED_FUNCTION
Definition: tasks.c:3168
 
TaskHandle_t xTaskGetCurrentTaskHandle(void) PRIVILEGED_FUNCTION
Definition: tasks.c:3755
 
void vTaskDelete(TaskHandle_t xTaskToDelete) PRIVILEGED_FUNCTION
Definition: tasks.c:1111
 
BaseType_t xTaskPriorityInherit(TaskHandle_t const pxMutexHolder) PRIVILEGED_FUNCTION
 
BaseType_t xTaskIncrementTick(void) PRIVILEGED_FUNCTION
Definition: tasks.c:2588
 
BaseType_t xTaskResumeAll(void) PRIVILEGED_FUNCTION
Definition: tasks.c:2104
 
void vTaskSwitchContext(void) PRIVILEGED_FUNCTION
Definition: tasks.c:2850
 
TaskHandle_t xTaskGetHandle(const char *pcNameToQuery) PRIVILEGED_FUNCTION
 
BaseType_t xTaskGetSchedulerState(void) PRIVILEGED_FUNCTION
 
UBaseType_t uxTaskPriorityGetFromISR(TaskHandle_t xTask) PRIVILEGED_FUNCTION
Definition: tasks.c:1425
 
struct xMEMORY_REGION MemoryRegion_t
 
BaseType_t xTaskPriorityDisinherit(TaskHandle_t const pxMutexHolder) PRIVILEGED_FUNCTION
 
TickType_t xTimeOnEntering
Definition: task.h:97
 
uint32_t ulTaskNotifyTake(BaseType_t xClearCountOnExit, TickType_t xTicksToWait) PRIVILEGED_FUNCTION
Definition: tasks.c:4415
 
UBaseType_t uxBasePriority
Definition: task.h:136
 
const char *const pcName
Definition: task.h:116
 
void vTaskNotifyGiveFromISR(TaskHandle_t xTaskToNotify, BaseType_t *pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
Definition: tasks.c:4793
 
void vTaskResume(TaskHandle_t xTaskToResume) PRIVILEGED_FUNCTION
Definition: tasks.c:1776
 
@ eSetValueWithoutOverwrite
Definition: task.h:88
 
BaseType_t xTaskNotifyStateClear(TaskHandle_t xTask)
Definition: tasks.c:4882
 
void vTaskPlaceOnEventListRestricted(List_t *const pxEventList, TickType_t xTicksToWait, const BaseType_t xWaitIndefinitely) PRIVILEGED_FUNCTION
 
@ eBlocked
Definition: task.h:75