70 #ifndef INC_FREERTOS_H 71 #define INC_FREERTOS_H 98 #include "FreeRTOSConfig.h" 101 #include "projdefs.h" 104 #include "portable.h" 112 #ifndef configMINIMAL_STACK_SIZE 113 #error Missing definition: configMINIMAL_STACK_SIZE must be defined in FreeRTOSConfig.h. configMINIMAL_STACK_SIZE defines the size (in words) of the stack allocated to the idle task. Refer to the demo project provided for your port for a suitable value. 116 #ifndef configMAX_PRIORITIES 117 #error Missing definition: configMAX_PRIORITIES must be defined in FreeRTOSConfig.h. See the Configuration section of the FreeRTOS API documentation for details. 120 #ifndef configUSE_PREEMPTION 121 #error Missing definition: configUSE_PREEMPTION must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 124 #ifndef configUSE_IDLE_HOOK 125 #error Missing definition: configUSE_IDLE_HOOK must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 128 #ifndef configUSE_TICK_HOOK 129 #error Missing definition: configUSE_TICK_HOOK must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 132 #ifndef INCLUDE_vTaskPrioritySet 133 #error Missing definition: INCLUDE_vTaskPrioritySet must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 136 #ifndef INCLUDE_uxTaskPriorityGet 137 #error Missing definition: INCLUDE_uxTaskPriorityGet must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 140 #ifndef INCLUDE_vTaskDelete 141 #error Missing definition: INCLUDE_vTaskDelete must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 144 #ifndef INCLUDE_vTaskSuspend 145 #error Missing definition: INCLUDE_vTaskSuspend must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 148 #ifndef INCLUDE_vTaskDelayUntil 149 #error Missing definition: INCLUDE_vTaskDelayUntil must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 152 #ifndef INCLUDE_vTaskDelay 153 #error Missing definition: INCLUDE_vTaskDelay must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 156 #ifndef configUSE_16_BIT_TICKS 157 #error Missing definition: configUSE_16_BIT_TICKS must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. 160 #ifndef configMAX_PRIORITIES 161 #error configMAX_PRIORITIES must be defined to be greater than or equal to 1. 164 #ifndef configUSE_CO_ROUTINES 165 #define configUSE_CO_ROUTINES 0 168 #if configUSE_CO_ROUTINES != 0 169 #ifndef configMAX_CO_ROUTINE_PRIORITIES 170 #error configMAX_CO_ROUTINE_PRIORITIES must be greater than or equal to 1. 174 #ifndef INCLUDE_xTaskGetIdleTaskHandle 175 #define INCLUDE_xTaskGetIdleTaskHandle 0 178 #ifndef INCLUDE_xTimerGetTimerDaemonTaskHandle 179 #define INCLUDE_xTimerGetTimerDaemonTaskHandle 0 182 #ifndef INCLUDE_xQueueGetMutexHolder 183 #define INCLUDE_xQueueGetMutexHolder 0 186 #ifndef INCLUDE_xSemaphoreGetMutexHolder 187 #define INCLUDE_xSemaphoreGetMutexHolder INCLUDE_xQueueGetMutexHolder 190 #ifndef INCLUDE_pcTaskGetTaskName 191 #define INCLUDE_pcTaskGetTaskName 0 194 #ifndef configUSE_APPLICATION_TASK_TAG 195 #define configUSE_APPLICATION_TASK_TAG 0 198 #ifndef configNUM_THREAD_LOCAL_STORAGE_POINTERS 199 #define configNUM_THREAD_LOCAL_STORAGE_POINTERS 0 202 #ifndef INCLUDE_uxTaskGetStackHighWaterMark 203 #define INCLUDE_uxTaskGetStackHighWaterMark 0 206 #ifndef INCLUDE_eTaskGetState 207 #define INCLUDE_eTaskGetState 0 210 #ifndef configUSE_RECURSIVE_MUTEXES 211 #define configUSE_RECURSIVE_MUTEXES 0 214 #ifndef configUSE_MUTEXES 215 #define configUSE_MUTEXES 0 218 #ifndef configUSE_TIMERS 219 #define configUSE_TIMERS 0 222 #ifndef configUSE_COUNTING_SEMAPHORES 223 #define configUSE_COUNTING_SEMAPHORES 0 226 #ifndef configUSE_ALTERNATIVE_API 227 #define configUSE_ALTERNATIVE_API 0 230 #ifndef portCRITICAL_NESTING_IN_TCB 231 #define portCRITICAL_NESTING_IN_TCB 0 234 #ifndef configMAX_TASK_NAME_LEN 235 #define configMAX_TASK_NAME_LEN 16 238 #ifndef configIDLE_SHOULD_YIELD 239 #define configIDLE_SHOULD_YIELD 1 242 #if configMAX_TASK_NAME_LEN < 1 243 #error configMAX_TASK_NAME_LEN must be set to a minimum of 1 in FreeRTOSConfig.h 246 #ifndef INCLUDE_xTaskResumeFromISR 247 #define INCLUDE_xTaskResumeFromISR 1 250 #ifndef INCLUDE_xEventGroupSetBitFromISR 251 #define INCLUDE_xEventGroupSetBitFromISR 0 254 #ifndef INCLUDE_xTimerPendFunctionCall 255 #define INCLUDE_xTimerPendFunctionCall 0 259 #define configASSERT( x ) 260 #define configASSERT_DEFINED 0 262 #define configASSERT_DEFINED 1 266 #if configUSE_TIMERS == 1 268 #ifndef configTIMER_TASK_PRIORITY 269 #error If configUSE_TIMERS is set to 1 then configTIMER_TASK_PRIORITY must also be defined. 272 #ifndef configTIMER_QUEUE_LENGTH 273 #error If configUSE_TIMERS is set to 1 then configTIMER_QUEUE_LENGTH must also be defined. 276 #ifndef configTIMER_TASK_STACK_DEPTH 277 #error If configUSE_TIMERS is set to 1 then configTIMER_TASK_STACK_DEPTH must also be defined. 282 #ifndef INCLUDE_xTaskGetSchedulerState 283 #define INCLUDE_xTaskGetSchedulerState 0 286 #ifndef INCLUDE_xTaskGetCurrentTaskHandle 287 #define INCLUDE_xTaskGetCurrentTaskHandle 0 291 #ifndef portSET_INTERRUPT_MASK_FROM_ISR 292 #define portSET_INTERRUPT_MASK_FROM_ISR() 0 295 #ifndef portCLEAR_INTERRUPT_MASK_FROM_ISR 296 #define portCLEAR_INTERRUPT_MASK_FROM_ISR( uxSavedStatusValue ) ( void ) uxSavedStatusValue 299 #ifndef portCLEAN_UP_TCB 300 #define portCLEAN_UP_TCB( pxTCB ) ( void ) pxTCB 303 #ifndef portPRE_TASK_DELETE_HOOK 304 #define portPRE_TASK_DELETE_HOOK( pvTaskToDelete, pxYieldPending ) 307 #ifndef portSETUP_TCB 308 #define portSETUP_TCB( pxTCB ) ( void ) pxTCB 311 #ifndef configQUEUE_REGISTRY_SIZE 312 #define configQUEUE_REGISTRY_SIZE 0U 315 #if ( configQUEUE_REGISTRY_SIZE < 1 ) 316 #define vQueueAddToRegistry( xQueue, pcName ) 317 #define vQueueUnregisterQueue( xQueue ) 320 #ifndef portPOINTER_SIZE_TYPE 321 #define portPOINTER_SIZE_TYPE uint32_t 337 #ifndef traceTASK_SWITCHED_IN 340 #define traceTASK_SWITCHED_IN() 343 #ifndef traceINCREASE_TICK_COUNT 346 #define traceINCREASE_TICK_COUNT( x ) 349 #ifndef traceLOW_POWER_IDLE_BEGIN 351 #define traceLOW_POWER_IDLE_BEGIN() 354 #ifndef traceLOW_POWER_IDLE_END 356 #define traceLOW_POWER_IDLE_END() 359 #ifndef traceTASK_SWITCHED_OUT 362 #define traceTASK_SWITCHED_OUT() 365 #ifndef traceTASK_PRIORITY_INHERIT 371 #define traceTASK_PRIORITY_INHERIT( pxTCBOfMutexHolder, uxInheritedPriority ) 374 #ifndef traceTASK_PRIORITY_DISINHERIT 379 #define traceTASK_PRIORITY_DISINHERIT( pxTCBOfMutexHolder, uxOriginalPriority ) 382 #ifndef traceBLOCKING_ON_QUEUE_RECEIVE 387 #define traceBLOCKING_ON_QUEUE_RECEIVE( pxQueue ) 390 #ifndef traceBLOCKING_ON_QUEUE_SEND 395 #define traceBLOCKING_ON_QUEUE_SEND( pxQueue ) 398 #ifndef configCHECK_FOR_STACK_OVERFLOW 399 #define configCHECK_FOR_STACK_OVERFLOW 0 404 #ifndef traceMOVED_TASK_TO_READY_STATE 405 #define traceMOVED_TASK_TO_READY_STATE( pxTCB ) 408 #ifndef traceQUEUE_CREATE 409 #define traceQUEUE_CREATE( pxNewQueue ) 412 #ifndef traceQUEUE_CREATE_FAILED 413 #define traceQUEUE_CREATE_FAILED( ucQueueType ) 416 #ifndef traceCREATE_MUTEX 417 #define traceCREATE_MUTEX( pxNewQueue ) 420 #ifndef traceCREATE_MUTEX_FAILED 421 #define traceCREATE_MUTEX_FAILED() 424 #ifndef traceGIVE_MUTEX_RECURSIVE 425 #define traceGIVE_MUTEX_RECURSIVE( pxMutex ) 428 #ifndef traceGIVE_MUTEX_RECURSIVE_FAILED 429 #define traceGIVE_MUTEX_RECURSIVE_FAILED( pxMutex ) 432 #ifndef traceTAKE_MUTEX_RECURSIVE 433 #define traceTAKE_MUTEX_RECURSIVE( pxMutex ) 436 #ifndef traceTAKE_MUTEX_RECURSIVE_FAILED 437 #define traceTAKE_MUTEX_RECURSIVE_FAILED( pxMutex ) 440 #ifndef traceCREATE_COUNTING_SEMAPHORE 441 #define traceCREATE_COUNTING_SEMAPHORE() 444 #ifndef traceCREATE_COUNTING_SEMAPHORE_FAILED 445 #define traceCREATE_COUNTING_SEMAPHORE_FAILED() 448 #ifndef traceQUEUE_SEND 449 #define traceQUEUE_SEND( pxQueue ) 452 #ifndef traceQUEUE_SEND_FAILED 453 #define traceQUEUE_SEND_FAILED( pxQueue ) 456 #ifndef traceQUEUE_RECEIVE 457 #define traceQUEUE_RECEIVE( pxQueue ) 460 #ifndef traceQUEUE_PEEK 461 #define traceQUEUE_PEEK( pxQueue ) 464 #ifndef traceQUEUE_PEEK_FROM_ISR 465 #define traceQUEUE_PEEK_FROM_ISR( pxQueue ) 468 #ifndef traceQUEUE_RECEIVE_FAILED 469 #define traceQUEUE_RECEIVE_FAILED( pxQueue ) 472 #ifndef traceQUEUE_SEND_FROM_ISR 473 #define traceQUEUE_SEND_FROM_ISR( pxQueue ) 476 #ifndef traceQUEUE_SEND_FROM_ISR_FAILED 477 #define traceQUEUE_SEND_FROM_ISR_FAILED( pxQueue ) 480 #ifndef traceQUEUE_RECEIVE_FROM_ISR 481 #define traceQUEUE_RECEIVE_FROM_ISR( pxQueue ) 484 #ifndef traceQUEUE_RECEIVE_FROM_ISR_FAILED 485 #define traceQUEUE_RECEIVE_FROM_ISR_FAILED( pxQueue ) 488 #ifndef traceQUEUE_PEEK_FROM_ISR_FAILED 489 #define traceQUEUE_PEEK_FROM_ISR_FAILED( pxQueue ) 492 #ifndef traceQUEUE_DELETE 493 #define traceQUEUE_DELETE( pxQueue ) 496 #ifndef traceTASK_CREATE 497 #define traceTASK_CREATE( pxNewTCB ) 500 #ifndef traceTASK_CREATE_FAILED 501 #define traceTASK_CREATE_FAILED() 504 #ifndef traceTASK_DELETE 505 #define traceTASK_DELETE( pxTaskToDelete ) 508 #ifndef traceTASK_DELAY_UNTIL 509 #define traceTASK_DELAY_UNTIL() 512 #ifndef traceTASK_DELAY 513 #define traceTASK_DELAY() 516 #ifndef traceTASK_PRIORITY_SET 517 #define traceTASK_PRIORITY_SET( pxTask, uxNewPriority ) 520 #ifndef traceTASK_SUSPEND 521 #define traceTASK_SUSPEND( pxTaskToSuspend ) 524 #ifndef traceTASK_RESUME 525 #define traceTASK_RESUME( pxTaskToResume ) 528 #ifndef traceTASK_RESUME_FROM_ISR 529 #define traceTASK_RESUME_FROM_ISR( pxTaskToResume ) 532 #ifndef traceTASK_INCREMENT_TICK 533 #define traceTASK_INCREMENT_TICK( xTickCount ) 536 #ifndef traceTIMER_CREATE 537 #define traceTIMER_CREATE( pxNewTimer ) 540 #ifndef traceTIMER_CREATE_FAILED 541 #define traceTIMER_CREATE_FAILED() 544 #ifndef traceTIMER_COMMAND_SEND 545 #define traceTIMER_COMMAND_SEND( xTimer, xMessageID, xMessageValueValue, xReturn ) 548 #ifndef traceTIMER_EXPIRED 549 #define traceTIMER_EXPIRED( pxTimer ) 552 #ifndef traceTIMER_COMMAND_RECEIVED 553 #define traceTIMER_COMMAND_RECEIVED( pxTimer, xMessageID, xMessageValue ) 557 #define traceMALLOC( pvAddress, uiSize ) 561 #define traceFREE( pvAddress, uiSize ) 564 #ifndef traceEVENT_GROUP_CREATE 565 #define traceEVENT_GROUP_CREATE( xEventGroup ) 568 #ifndef traceEVENT_GROUP_CREATE_FAILED 569 #define traceEVENT_GROUP_CREATE_FAILED() 572 #ifndef traceEVENT_GROUP_SYNC_BLOCK 573 #define traceEVENT_GROUP_SYNC_BLOCK( xEventGroup, uxBitsToSet, uxBitsToWaitFor ) 576 #ifndef traceEVENT_GROUP_SYNC_END 577 #define traceEVENT_GROUP_SYNC_END( xEventGroup, uxBitsToSet, uxBitsToWaitFor, xTimeoutOccurred ) ( void ) xTimeoutOccurred 580 #ifndef traceEVENT_GROUP_WAIT_BITS_BLOCK 581 #define traceEVENT_GROUP_WAIT_BITS_BLOCK( xEventGroup, uxBitsToWaitFor ) 584 #ifndef traceEVENT_GROUP_WAIT_BITS_END 585 #define traceEVENT_GROUP_WAIT_BITS_END( xEventGroup, uxBitsToWaitFor, xTimeoutOccurred ) ( void ) xTimeoutOccurred 588 #ifndef traceEVENT_GROUP_CLEAR_BITS 589 #define traceEVENT_GROUP_CLEAR_BITS( xEventGroup, uxBitsToClear ) 592 #ifndef traceEVENT_GROUP_CLEAR_BITS_FROM_ISR 593 #define traceEVENT_GROUP_CLEAR_BITS_FROM_ISR( xEventGroup, uxBitsToClear ) 596 #ifndef traceEVENT_GROUP_SET_BITS 597 #define traceEVENT_GROUP_SET_BITS( xEventGroup, uxBitsToSet ) 600 #ifndef traceEVENT_GROUP_SET_BITS_FROM_ISR 601 #define traceEVENT_GROUP_SET_BITS_FROM_ISR( xEventGroup, uxBitsToSet ) 604 #ifndef traceEVENT_GROUP_DELETE 605 #define traceEVENT_GROUP_DELETE( xEventGroup ) 608 #ifndef tracePEND_FUNC_CALL 609 #define tracePEND_FUNC_CALL(xFunctionToPend, pvParameter1, ulParameter2, ret) 612 #ifndef tracePEND_FUNC_CALL_FROM_ISR 613 #define tracePEND_FUNC_CALL_FROM_ISR(xFunctionToPend, pvParameter1, ulParameter2, ret) 616 #ifndef traceQUEUE_REGISTRY_ADD 617 #define traceQUEUE_REGISTRY_ADD(xQueue, pcQueueName) 620 #ifndef traceTASK_NOTIFY_TAKE_BLOCK 621 #define traceTASK_NOTIFY_TAKE_BLOCK() 624 #ifndef traceTASK_NOTIFY_TAKE 625 #define traceTASK_NOTIFY_TAKE() 628 #ifndef traceTASK_NOTIFY_WAIT_BLOCK 629 #define traceTASK_NOTIFY_WAIT_BLOCK() 632 #ifndef traceTASK_NOTIFY_WAIT 633 #define traceTASK_NOTIFY_WAIT() 636 #ifndef traceTASK_NOTIFY 637 #define traceTASK_NOTIFY() 640 #ifndef traceTASK_NOTIFY_FROM_ISR 641 #define traceTASK_NOTIFY_FROM_ISR() 644 #ifndef traceTASK_NOTIFY_GIVE_FROM_ISR 645 #define traceTASK_NOTIFY_GIVE_FROM_ISR() 648 #ifndef configGENERATE_RUN_TIME_STATS 649 #define configGENERATE_RUN_TIME_STATS 0 652 #if ( configGENERATE_RUN_TIME_STATS == 1 ) 654 #ifndef portCONFIGURE_TIMER_FOR_RUN_TIME_STATS 655 #error If configGENERATE_RUN_TIME_STATS is defined then portCONFIGURE_TIMER_FOR_RUN_TIME_STATS must also be defined. portCONFIGURE_TIMER_FOR_RUN_TIME_STATS should call a port layer function to setup a peripheral timer/counter that can then be used as the run time counter time base. 658 #ifndef portGET_RUN_TIME_COUNTER_VALUE 659 #ifndef portALT_GET_RUN_TIME_COUNTER_VALUE 660 #error If configGENERATE_RUN_TIME_STATS is defined then either portGET_RUN_TIME_COUNTER_VALUE or portALT_GET_RUN_TIME_COUNTER_VALUE must also be defined. See the examples provided and the FreeRTOS web site for more information. 666 #ifndef portCONFIGURE_TIMER_FOR_RUN_TIME_STATS 667 #define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS() 670 #ifndef configUSE_MALLOC_FAILED_HOOK 671 #define configUSE_MALLOC_FAILED_HOOK 0 674 #ifndef portPRIVILEGE_BIT 675 #define portPRIVILEGE_BIT ( ( UBaseType_t ) 0x00 ) 678 #ifndef portYIELD_WITHIN_API 679 #define portYIELD_WITHIN_API portYIELD 682 #ifndef pvPortMallocAligned 683 #define pvPortMallocAligned( x, puxStackBuffer ) ( ( ( puxStackBuffer ) == NULL ) ? ( pvPortMalloc( ( x ) ) ) : ( puxStackBuffer ) ) 686 #ifndef vPortFreeAligned 687 #define vPortFreeAligned( pvBlockToFree ) vPortFree( pvBlockToFree ) 690 #ifndef portSUPPRESS_TICKS_AND_SLEEP 691 #define portSUPPRESS_TICKS_AND_SLEEP( xExpectedIdleTime ) 694 #ifndef configEXPECTED_IDLE_TIME_BEFORE_SLEEP 695 #define configEXPECTED_IDLE_TIME_BEFORE_SLEEP 2 698 #if configEXPECTED_IDLE_TIME_BEFORE_SLEEP < 2 699 #error configEXPECTED_IDLE_TIME_BEFORE_SLEEP must not be less than 2 702 #ifndef configUSE_TICKLESS_IDLE 703 #define configUSE_TICKLESS_IDLE 0 706 #ifndef configPRE_SLEEP_PROCESSING 707 #define configPRE_SLEEP_PROCESSING( x ) 710 #ifndef configPOST_SLEEP_PROCESSING 711 #define configPOST_SLEEP_PROCESSING( x ) 714 #ifndef configUSE_QUEUE_SETS 715 #define configUSE_QUEUE_SETS 0 718 #ifndef portTASK_USES_FLOATING_POINT 719 #define portTASK_USES_FLOATING_POINT() 722 #ifndef configUSE_TIME_SLICING 723 #define configUSE_TIME_SLICING 1 726 #ifndef configINCLUDE_APPLICATION_DEFINED_PRIVILEGED_FUNCTIONS 727 #define configINCLUDE_APPLICATION_DEFINED_PRIVILEGED_FUNCTIONS 0 730 #ifndef configUSE_NEWLIB_REENTRANT 731 #define configUSE_NEWLIB_REENTRANT 0 734 #ifndef configUSE_STATS_FORMATTING_FUNCTIONS 735 #define configUSE_STATS_FORMATTING_FUNCTIONS 0 738 #ifndef portASSERT_IF_INTERRUPT_PRIORITY_INVALID 739 #define portASSERT_IF_INTERRUPT_PRIORITY_INVALID() 742 #ifndef configUSE_TRACE_FACILITY 743 #define configUSE_TRACE_FACILITY 0 746 #ifndef mtCOVERAGE_TEST_MARKER 747 #define mtCOVERAGE_TEST_MARKER() 750 #ifndef mtCOVERAGE_TEST_DELAY 751 #define mtCOVERAGE_TEST_DELAY() 754 #ifndef portASSERT_IF_IN_ISR 755 #define portASSERT_IF_IN_ISR() 758 #ifndef configUSE_PORT_OPTIMISED_TASK_SELECTION 759 #define configUSE_PORT_OPTIMISED_TASK_SELECTION 0 762 #ifndef configAPPLICATION_ALLOCATED_HEAP 763 #define configAPPLICATION_ALLOCATED_HEAP 0 766 #ifndef configUSE_TASK_NOTIFICATIONS 767 #define configUSE_TASK_NOTIFICATIONS 1 770 #ifndef portTICK_TYPE_IS_ATOMIC 771 #define portTICK_TYPE_IS_ATOMIC 0 774 #if( portTICK_TYPE_IS_ATOMIC == 0 ) 778 #define portTICK_TYPE_ENTER_CRITICAL() portENTER_CRITICAL() 779 #define portTICK_TYPE_EXIT_CRITICAL() portEXIT_CRITICAL() 780 #define portTICK_TYPE_SET_INTERRUPT_MASK_FROM_ISR() portSET_INTERRUPT_MASK_FROM_ISR() 781 #define portTICK_TYPE_CLEAR_INTERRUPT_MASK_FROM_ISR( x ) portCLEAR_INTERRUPT_MASK_FROM_ISR( ( x ) ) 785 #define portTICK_TYPE_ENTER_CRITICAL() 786 #define portTICK_TYPE_EXIT_CRITICAL() 787 #define portTICK_TYPE_SET_INTERRUPT_MASK_FROM_ISR() 0 788 #define portTICK_TYPE_CLEAR_INTERRUPT_MASK_FROM_ISR( x ) ( void ) x 793 #ifndef configENABLE_BACKWARD_COMPATIBILITY 794 #define configENABLE_BACKWARD_COMPATIBILITY 1 797 #if configENABLE_BACKWARD_COMPATIBILITY == 1 798 #define eTaskStateGet eTaskGetState 799 #define portTickType TickType_t 800 #define xTaskHandle TaskHandle_t 801 #define xQueueHandle QueueHandle_t 802 #define xSemaphoreHandle SemaphoreHandle_t 803 #define xQueueSetHandle QueueSetHandle_t 804 #define xQueueSetMemberHandle QueueSetMemberHandle_t 805 #define xTimeOutType TimeOut_t 806 #define xMemoryRegion MemoryRegion_t 807 #define xTaskParameters TaskParameters_t 808 #define xTaskStatusType TaskStatus_t 809 #define xTimerHandle TimerHandle_t 810 #define xCoRoutineHandle CoRoutineHandle_t 811 #define pdTASK_HOOK_CODE TaskHookFunction_t 812 #define portTICK_RATE_MS portTICK_PERIOD_MS 816 #define tmrTIMER_CALLBACK TimerCallbackFunction_t 817 #define pdTASK_CODE TaskFunction_t 818 #define xListItem ListItem_t 826 #ifndef configUSE_TASK_FPU_SUPPORT 827 #define configUSE_TASK_FPU_SUPPORT 1