]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Demo/Common/Minimal/AbortDelay.c
Update version number to 9.0.0rc2.
[freertos] / FreeRTOS / Demo / Common / Minimal / AbortDelay.c
index 9ddba7c0f5773f29d5695b157e5055d28d3bccbd..2a9fd82e24d9ffd53f4c46f33b81b94ccc0b9fb8 100644 (file)
@@ -1,5 +1,5 @@
 /*\r
-    FreeRTOS V8.2.3 - Copyright (C) 2015 Real Time Engineers Ltd.\r
+    FreeRTOS V9.0.0rc2 - Copyright (C) 2016 Real Time Engineers Ltd.\r
     All rights reserved\r
 \r
     VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.\r
@@ -366,7 +366,7 @@ uint32_t ulReturn;
        ulReturn = ulTaskNotifyTake( pdFALSE, xMaxBlockTime );\r
        if( ulReturn != 0 )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 \r
@@ -378,7 +378,7 @@ uint32_t ulReturn;
        ulReturn = ulTaskNotifyTake( pdFALSE, xMaxBlockTime );\r
        if( ulReturn != 0 )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xHalfMaxBlockTime );\r
 \r
@@ -389,7 +389,7 @@ uint32_t ulReturn;
        ulReturn = ulTaskNotifyTake( pdFALSE, xMaxBlockTime );\r
        if( ulReturn != 0 )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 }\r
@@ -398,13 +398,23 @@ uint32_t ulReturn;
 static void prvTestAbortingEventGroupWait( void )\r
 {\r
 TickType_t xTimeAtStart;\r
-static StaticEventGroup_t xEventGroupBuffer;\r
 EventGroupHandle_t xEventGroup;\r
 EventBits_t xBitsToWaitFor = ( EventBits_t ) 0x01, xReturn;\r
 \r
-       /* Create the event group.  Statically allocated memory is used so the\r
-       creation cannot fail. */\r
-       xEventGroup = xEventGroupCreateStatic( &xEventGroupBuffer );\r
+       #if( configSUPPORT_STATIC_ALLOCATION == 1 )\r
+       {\r
+               static StaticEventGroup_t xEventGroupBuffer;\r
+\r
+               /* Create the event group.  Statically allocated memory is used so the\r
+               creation cannot fail. */\r
+               xEventGroup = xEventGroupCreateStatic( &xEventGroupBuffer );\r
+       }\r
+       #else\r
+       {\r
+               xEventGroup = xEventGroupCreate();\r
+               configASSERT( xEventGroup );\r
+       }\r
+       #endif\r
 \r
        /* Note the time before the delay so the length of the delay is known. */\r
        xTimeAtStart = xTaskGetTickCount();\r
@@ -413,7 +423,7 @@ EventBits_t xBitsToWaitFor = ( EventBits_t ) 0x01, xReturn;
        xReturn = xEventGroupWaitBits( xEventGroup, xBitsToWaitFor, pdTRUE, pdTRUE, xMaxBlockTime );\r
        if( xReturn != 0x00 )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 \r
@@ -425,7 +435,7 @@ EventBits_t xBitsToWaitFor = ( EventBits_t ) 0x01, xReturn;
        xReturn = xEventGroupWaitBits( xEventGroup, xBitsToWaitFor, pdTRUE, pdTRUE, xMaxBlockTime );\r
        if( xReturn != 0x00 )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xHalfMaxBlockTime );\r
 \r
@@ -436,7 +446,7 @@ EventBits_t xBitsToWaitFor = ( EventBits_t ) 0x01, xReturn;
        xReturn = xEventGroupWaitBits( xEventGroup, xBitsToWaitFor, pdTRUE, pdTRUE, xMaxBlockTime );\r
        if( xReturn != 0x00 )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 \r
@@ -449,21 +459,32 @@ static void prvTestAbortingQueueSend( void )
 {\r
 TickType_t xTimeAtStart;\r
 BaseType_t xReturn;\r
-static StaticQueue_t xQueueBuffer;\r
-static uint8_t ucQueueStorage[ sizeof( uint8_t ) ], ucItemToQueue;\r
 const UBaseType_t xQueueLength = ( UBaseType_t ) 1;\r
 QueueHandle_t xQueue;\r
+uint8_t ucItemToQueue;\r
 \r
-       /* Create the queue.  Statically allocated memory is used so the\r
-       creation cannot fail. */\r
-       xQueue = xQueueCreateStatic( xQueueLength, sizeof( uint8_t ), ucQueueStorage, &xQueueBuffer );\r
+       #if( configSUPPORT_STATIC_ALLOCATION == 1 )\r
+       {\r
+               static StaticQueue_t xQueueBuffer;\r
+               static uint8_t ucQueueStorage[ sizeof( uint8_t ) ];\r
+\r
+               /* Create the queue.  Statically allocated memory is used so the\r
+               creation cannot fail. */\r
+               xQueue = xQueueCreateStatic( xQueueLength, sizeof( uint8_t ), ucQueueStorage, &xQueueBuffer );\r
+       }\r
+       #else\r
+       {\r
+               xQueue = xQueueCreate( xQueueLength, sizeof( uint8_t ) );\r
+               configASSERT( xQueue );\r
+       }\r
+       #endif\r
 \r
        /* This function tests aborting when in the blocked state waiting to send,\r
        so the queue must be full.  There is only one space in the queue. */\r
        xReturn = xQueueSend( xQueue, &ucItemToQueue, xMaxBlockTime );\r
        if( xReturn != pdPASS )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
 \r
        /* Note the time before the delay so the length of the delay is known. */\r
@@ -473,7 +494,7 @@ QueueHandle_t xQueue;
        xReturn = xQueueSend( xQueue, &ucItemToQueue, xMaxBlockTime );\r
        if( xReturn != pdFALSE )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 \r
@@ -485,7 +506,7 @@ QueueHandle_t xQueue;
        xReturn = xQueueSend( xQueue, &ucItemToQueue, xMaxBlockTime );\r
        if( xReturn != pdFALSE )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xHalfMaxBlockTime );\r
 \r
@@ -496,7 +517,7 @@ QueueHandle_t xQueue;
        xReturn = xQueueSend( xQueue, &ucItemToQueue, xMaxBlockTime );\r
        if( xReturn != pdFALSE )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 \r
@@ -509,12 +530,21 @@ static void prvTestAbortingSemaphoreTake( void )
 {\r
 TickType_t xTimeAtStart;\r
 BaseType_t xReturn;\r
-static StaticSemaphore_t xSemaphoreBuffer;\r
 SemaphoreHandle_t xSemaphore;\r
 \r
-       /* Create the semaphore.  Statically allocated memory is used so the\r
-       creation cannot fail. */\r
-       xSemaphore = xSemaphoreCreateBinaryStatic( &xSemaphoreBuffer );\r
+       #if( configSUPPORT_STATIC_ALLOCATION == 1 )\r
+       {\r
+               static StaticSemaphore_t xSemaphoreBuffer;\r
+\r
+               /* Create the semaphore.  Statically allocated memory is used so the\r
+               creation cannot fail. */\r
+               xSemaphore = xSemaphoreCreateBinaryStatic( &xSemaphoreBuffer );\r
+       }\r
+       #else\r
+       {\r
+               xSemaphore = xSemaphoreCreateBinary();\r
+       }\r
+       #endif\r
 \r
        /* Note the time before the delay so the length of the delay is known. */\r
        xTimeAtStart = xTaskGetTickCount();\r
@@ -523,7 +553,7 @@ SemaphoreHandle_t xSemaphore;
        xReturn = xSemaphoreTake( xSemaphore, xMaxBlockTime );\r
        if( xReturn != pdFALSE )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 \r
@@ -535,7 +565,7 @@ SemaphoreHandle_t xSemaphore;
        xReturn = xSemaphoreTake( xSemaphore, xMaxBlockTime );\r
        if( xReturn != pdFALSE )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xHalfMaxBlockTime );\r
 \r
@@ -546,7 +576,7 @@ SemaphoreHandle_t xSemaphore;
        xReturn = xSemaphoreTake( xSemaphore, xMaxBlockTime );\r
        if( xReturn != pdFALSE )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 \r
@@ -567,7 +597,7 @@ BaseType_t xReturn;
        xReturn = xTaskNotifyWait( 0, 0, NULL, xMaxBlockTime );\r
        if( xReturn != pdFALSE )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 \r
@@ -579,7 +609,7 @@ BaseType_t xReturn;
        xReturn = xTaskNotifyWait( 0, 0, NULL, xMaxBlockTime );\r
        if( xReturn != pdFALSE )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xHalfMaxBlockTime );\r
 \r
@@ -590,7 +620,7 @@ BaseType_t xReturn;
        xReturn = xTaskNotifyWait( 0, 0, NULL, xMaxBlockTime );\r
        if( xReturn != pdFALSE )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
        prvCheckExpectedTimeIsWithinAnAcceptableMargin( xTimeAtStart, xMaxBlockTime );\r
 }\r
@@ -606,7 +636,7 @@ TickType_t xTimeNow, xActualBlockTime;
        /* The actual block time should not be less than the expected block time. */\r
        if( xActualBlockTime < xExpectedBlockTime )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d, actual block time %d, expected %d", __LINE__, xActualBlockTime, xExpectedBlockTime );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
 \r
        /* The actual block time can be greater than the expected block time, as it\r
@@ -614,7 +644,7 @@ TickType_t xTimeNow, xActualBlockTime;
        acceptable margin. */\r
        if( xActualBlockTime > ( xExpectedBlockTime + xAllowableMargin ) )\r
        {\r
-               xErrorOccurred = pdTRUE; printf( "Line %d", __LINE__ );taskDISABLE_INTERRUPTS();for(;;){Sleep( 1000 );}\r
+               xErrorOccurred = pdTRUE;\r
        }\r
 }\r
 /*-----------------------------------------------------------*/\r