STM32F769IDiscovery  1.00
uDANTE Audio Networking with STM32F7 DISCO board
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
tasks.c File Reference
#include <stdlib.h>
#include <string.h>
#include "FreeRTOS.h"
#include "task.h"
#include "timers.h"
#include "StackMacros.h"

Go to the source code of this file.

Data Structures

struct  tskTaskControlBlock
 

Macros

#define MPU_WRAPPERS_INCLUDED_FROM_API_FILE
 
#define tskIDLE_STACK_SIZE   configMINIMAL_STACK_SIZE
 
#define taskYIELD_IF_USING_PREEMPTION()
 
#define tskSTACK_FILL_BYTE   ( 0xa5U )
 
#define tskBLOCKED_CHAR   ( 'B' )
 
#define tskREADY_CHAR   ( 'R' )
 
#define tskDELETED_CHAR   ( 'D' )
 
#define tskSUSPENDED_CHAR   ( 'S' )
 
#define taskRECORD_READY_PRIORITY(uxPriority)
 
#define taskSELECT_HIGHEST_PRIORITY_TASK()
 
#define taskRESET_READY_PRIORITY(uxPriority)
 
#define portRESET_READY_PRIORITY(uxPriority, uxTopReadyPriority)
 
#define taskSWITCH_DELAYED_LISTS()
 
#define prvAddTaskToReadyList(pxTCB)
 
#define prvGetTCBFromHandle(pxHandle)   ( ( ( pxHandle ) == NULL ) ? ( TCB_t * ) pxCurrentTCB : ( TCB_t * ) ( pxHandle ) )
 
#define taskEVENT_LIST_ITEM_VALUE_IN_USE   0x80000000UL
 

Typedefs

typedef struct tskTaskControlBlock tskTCB
 
typedef tskTCB TCB_t
 

Enumerations

enum  eNotifyValue { eNotWaitingNotification = 0, eWaitingNotification, eNotified }
 

Functions

void vTaskStartScheduler (void)
 
void vTaskEndScheduler (void)
 
void vTaskSuspendAll (void)
 
BaseType_t xTaskResumeAll (void)
 
TickType_t xTaskGetTickCount (void)
 
TickType_t xTaskGetTickCountFromISR (void)
 
UBaseType_t uxTaskGetNumberOfTasks (void)
 
BaseType_t xTaskIncrementTick (void)
 
void vTaskSwitchContext (void)
 
void vTaskPlaceOnEventList (List_t *const pxEventList, const TickType_t xTicksToWait)
 
void vTaskPlaceOnUnorderedEventList (List_t *pxEventList, const TickType_t xItemValue, const TickType_t xTicksToWait)
 
BaseType_t xTaskRemoveFromEventList (const List_t *const pxEventList)
 
BaseType_t xTaskRemoveFromUnorderedEventList (ListItem_t *pxEventListItem, const TickType_t xItemValue)
 
void vTaskSetTimeOutState (TimeOut_t *const pxTimeOut)
 
BaseType_t xTaskCheckForTimeOut (TimeOut_t *const pxTimeOut, TickType_t *const pxTicksToWait)
 
void vTaskMissedYield (void)
 
TickType_t uxTaskResetEventItemValue (void)
 

Variables

PRIVILEGED_DATA TCB_t *volatile pxCurrentTCB = NULL
 

Macro Definition Documentation

#define MPU_WRAPPERS_INCLUDED_FROM_API_FILE

Definition at line 77 of file tasks.c.

#define portRESET_READY_PRIORITY (   uxPriority,
  uxTopReadyPriority 
)

Definition at line 327 of file tasks.c.

#define prvAddTaskToReadyList (   pxTCB)
Value:
taskRECORD_READY_PRIORITY( ( pxTCB )->uxPriority ); \
vListInsertEnd( &( pxReadyTasksLists[ ( pxTCB )->uxPriority ] ), &( ( pxTCB )->xGenericListItem ) )
void vListInsertEnd(List_t *const pxList, ListItem_t *const pxNewListItem) PRIVILEGED_FUNCTION
Definition: list.c:116
#define traceMOVED_TASK_TO_READY_STATE(pxTCB)
Definition: FreeRTOS.h:410
#define taskRECORD_READY_PRIORITY(uxPriority)
Definition: tasks.c:297

Definition at line 389 of file tasks.c.

#define prvGetTCBFromHandle (   pxHandle)    ( ( ( pxHandle ) == NULL ) ? ( TCB_t * ) pxCurrentTCB : ( TCB_t * ) ( pxHandle ) )

Definition at line 401 of file tasks.c.

#define taskEVENT_LIST_ITEM_VALUE_IN_USE   0x80000000UL

Definition at line 414 of file tasks.c.

#define taskRECORD_READY_PRIORITY (   uxPriority)
Value:
{ \
if( ( uxPriority ) > uxTopReadyPriority ) \
{ \
uxTopReadyPriority = ( uxPriority ); \
} \
} /* taskRECORD_READY_PRIORITY */
if(LCD_Lock==DISABLE)
Definition: lcd_log.c:249

Definition at line 297 of file tasks.c.

#define taskRESET_READY_PRIORITY (   uxPriority)

Definition at line 326 of file tasks.c.

#define taskSELECT_HIGHEST_PRIORITY_TASK ( )
Value:
{ \
/* Find the highest priority queue that contains ready tasks. */ \
while( listLIST_IS_EMPTY( &( pxReadyTasksLists[ uxTopReadyPriority ] ) ) ) \
{ \
configASSERT( uxTopReadyPriority ); \
--uxTopReadyPriority; \
} \
\
/* listGET_OWNER_OF_NEXT_ENTRY indexes through the list, so the tasks of \
the same priority get an equal share of the processor time. */ \
listGET_OWNER_OF_NEXT_ENTRY( pxCurrentTCB, &( pxReadyTasksLists[ uxTopReadyPriority ] ) ); \
} /* taskSELECT_HIGHEST_PRIORITY_TASK */
#define listGET_OWNER_OF_NEXT_ENTRY(pxTCB, pxList)
Definition: list.h:318
PRIVILEGED_DATA TCB_t *volatile pxCurrentTCB
Definition: tasks.c:212
#define configASSERT(x)
#define listLIST_IS_EMPTY(pxList)
Definition: list.h:291

Definition at line 307 of file tasks.c.

#define taskSWITCH_DELAYED_LISTS ( )
Value:
{ \
List_t *pxTemp; \
\
/* The delayed tasks list should be empty when the lists are switched. */ \
configASSERT( ( listLIST_IS_EMPTY( pxDelayedTaskList ) ) ); \
\
pxTemp = pxDelayedTaskList; \
pxDelayedTaskList = pxOverflowDelayedTaskList; \
pxOverflowDelayedTaskList = pxTemp; \
xNumOfOverflows++; \
prvResetNextTaskUnblockTime(); \
}
#define configASSERT(x)
#define listLIST_IS_EMPTY(pxList)
Definition: list.h:291
struct xLIST List_t

Definition at line 369 of file tasks.c.

#define taskYIELD_IF_USING_PREEMPTION ( )

Definition at line 116 of file tasks.c.

#define tskBLOCKED_CHAR   ( 'B' )

Definition at line 282 of file tasks.c.

#define tskDELETED_CHAR   ( 'D' )

Definition at line 284 of file tasks.c.

#define tskIDLE_STACK_SIZE   configMINIMAL_STACK_SIZE

Definition at line 111 of file tasks.c.

#define tskREADY_CHAR   ( 'R' )

Definition at line 283 of file tasks.c.

#define tskSTACK_FILL_BYTE   ( 0xa5U )

Definition at line 277 of file tasks.c.

#define tskSUSPENDED_CHAR   ( 'S' )

Definition at line 285 of file tasks.c.

Typedef Documentation

typedef tskTCB TCB_t

Definition at line 199 of file tasks.c.

typedef struct tskTaskControlBlock tskTCB

Enumeration Type Documentation

Enumerator
eNotWaitingNotification 
eWaitingNotification 
eNotified 

Definition at line 122 of file tasks.c.

Function Documentation

UBaseType_t uxTaskGetNumberOfTasks ( void  )

Definition at line 1810 of file tasks.c.

TickType_t uxTaskResetEventItemValue ( void  )

Definition at line 3868 of file tasks.c.

void vTaskEndScheduler ( void  )

Definition at line 1622 of file tasks.c.

void vTaskMissedYield ( void  )

Definition at line 2635 of file tasks.c.

void vTaskPlaceOnEventList ( List_t *const  pxEventList,
const TickType_t  xTicksToWait 
)

Definition at line 2262 of file tasks.c.

void vTaskPlaceOnUnorderedEventList ( List_t pxEventList,
const TickType_t  xItemValue,
const TickType_t  xTicksToWait 
)

Definition at line 2321 of file tasks.c.

void vTaskSetTimeOutState ( TimeOut_t *const  pxTimeOut)

Definition at line 2578 of file tasks.c.

void vTaskStartScheduler ( void  )

Definition at line 1543 of file tasks.c.

void vTaskSuspendAll ( void  )

Definition at line 1633 of file tasks.c.

void vTaskSwitchContext ( void  )

Definition at line 2203 of file tasks.c.

BaseType_t xTaskCheckForTimeOut ( TimeOut_t *const  pxTimeOut,
TickType_t *const  pxTicksToWait 
)

Definition at line 2586 of file tasks.c.

TickType_t xTaskGetTickCount ( void  )

Definition at line 1764 of file tasks.c.

TickType_t xTaskGetTickCountFromISR ( void  )

Definition at line 1779 of file tasks.c.

BaseType_t xTaskIncrementTick ( void  )

Definition at line 1939 of file tasks.c.

BaseType_t xTaskRemoveFromEventList ( const List_t *const  pxEventList)

Definition at line 2465 of file tasks.c.

BaseType_t xTaskRemoveFromUnorderedEventList ( ListItem_t pxEventListItem,
const TickType_t  xItemValue 
)

Definition at line 2533 of file tasks.c.

BaseType_t xTaskResumeAll ( void  )

Definition at line 1671 of file tasks.c.

Variable Documentation

PRIVILEGED_DATA TCB_t* volatile pxCurrentTCB = NULL

Definition at line 212 of file tasks.c.