/*\r
- FreeRTOS V7.5.2 - Copyright (C) 2013 Real Time Engineers Ltd.\r
+ FreeRTOS V8.1.2 - Copyright (C) 2014 Real Time Engineers Ltd.\r
+ All rights reserved\r
\r
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.\r
\r
the terms of the GNU General Public License (version 2) as published by the\r
Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.\r
\r
- >>! NOTE: The modification to the GPL is included to allow you to distribute\r
- >>! a combined work that includes FreeRTOS without being obliged to provide\r
- >>! the source code for proprietary components outside of the FreeRTOS\r
- >>! kernel.\r
+ >>! NOTE: The modification to the GPL is included to allow you to !<<\r
+ >>! distribute a combined work that includes FreeRTOS without being !<<\r
+ >>! obliged to provide the source code for proprietary components !<<\r
+ >>! outside of the FreeRTOS kernel. !<<\r
\r
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY\r
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS\r
#define mainQUEUE_SEND_TASK_PRIORITY ( tskIDLE_PRIORITY + 1 )\r
\r
/* The rate at which data is sent to the queue, specified in milliseconds, and\r
-converted to ticks using the portTICK_RATE_MS constant. */\r
-#define mainQUEUE_SEND_FREQUENCY_MS ( 200 / portTICK_RATE_MS )\r
+converted to ticks using the portTICK_PERIOD_MS constant. */\r
+#define mainQUEUE_SEND_FREQUENCY_MS ( 200 / portTICK_PERIOD_MS )\r
\r
/* The number of items the queue can hold. This is 1 as the receive task\r
will remove items as they are added because it has the higher priority, meaning\r
#define mainQUEUE_LENGTH ( 1 )\r
\r
/* A block time of 0 simply means, "don't block". */\r
-#define mainDONT_BLOCK ( portTickType ) 0\r
+#define mainDONT_BLOCK ( TickType_t ) 0\r
\r
/* The following constants describe the timer instance used in this application.\r
They are defined here such that a user can easily change all the needed parameters\r
* The LED timer callback function. This does nothing but increment the\r
* ulCallback variable each time it executes.\r
*/\r
-static void vSoftwareTimerCallback( xTimerHandle xTimer );\r
+static void vSoftwareTimerCallback( TimerHandle_t xTimer );\r
\r
/*-----------------------------------------------------------*/\r
\r
/* The queue used by the queue send and queue receive tasks. */\r
-static xQueueHandle xQueue = NULL;\r
+static QueueHandle_t xQueue = NULL;\r
\r
/* The LED software timer. This uses vSoftwareTimerCallback() as its callback\r
function. */\r
-static xTimerHandle xExampleSoftwareTimer = NULL;\r
+static TimerHandle_t xExampleSoftwareTimer = NULL;\r
\r
/*-----------------------------------------------------------*/\r
\r
\r
/* Start the two tasks as described in the comments at the top of this\r
file. */\r
- xTaskCreate( prvQueueReceiveTask, ( signed char * ) "Rx", configMINIMAL_STACK_SIZE, NULL, mainQUEUE_RECEIVE_TASK_PRIORITY, NULL );\r
- xTaskCreate( prvQueueSendTask, ( signed char * ) "TX", configMINIMAL_STACK_SIZE, NULL, mainQUEUE_SEND_TASK_PRIORITY, NULL );\r
+ xTaskCreate( prvQueueReceiveTask, "Rx", configMINIMAL_STACK_SIZE, NULL, mainQUEUE_RECEIVE_TASK_PRIORITY, NULL );\r
+ xTaskCreate( prvQueueSendTask, "TX", configMINIMAL_STACK_SIZE, NULL, mainQUEUE_SEND_TASK_PRIORITY, NULL );\r
\r
/* Create the software timer */\r
- xExampleSoftwareTimer = xTimerCreate( ( const signed char * ) "SoftwareTimer", /* A text name, purely to help debugging. */\r
- ( 5000 / portTICK_RATE_MS ), /* The timer period, in this case 5000ms (5s). */\r
- pdTRUE, /* This is an auto-reload timer, so xAutoReload is set to pdTRUE. */\r
- ( void * ) 0, /* The ID is not used, so can be set to anything. */\r
- vSoftwareTimerCallback /* The callback function that switches the LED off. */\r
+ xExampleSoftwareTimer = xTimerCreate( "SoftwareTimer", /* A text name, purely to help debugging. */\r
+ ( 5000 / portTICK_PERIOD_MS ),/* The timer period, in this case 5000ms (5s). */\r
+ pdTRUE, /* This is an auto-reload timer, so xAutoReload is set to pdTRUE. */\r
+ ( void * ) 0, /* The ID is not used, so can be set to anything. */\r
+ vSoftwareTimerCallback /* The callback function that switches the LED off. */\r
);\r
\r
/* Start the software timer. */\r
/*-----------------------------------------------------------*/\r
\r
/* The callback is executed when the software timer expires. */\r
-static void vSoftwareTimerCallback( xTimerHandle xTimer )\r
+static void vSoftwareTimerCallback( TimerHandle_t xTimer )\r
{\r
/* Just increment the ulCallbac variable. */\r
ulCallback++;\r
\r
static void prvQueueSendTask( void *pvParameters )\r
{\r
-portTickType xNextWakeTime;\r
+TickType_t xNextWakeTime;\r
const unsigned long ulValueToSend = 100UL;\r
\r
/* Initialise xNextWakeTime - this only needs to be done once. */\r
}\r
/*-----------------------------------------------------------*/\r
\r
-void vApplicationStackOverflowHook( xTaskHandle *pxTask, signed char *pcTaskName )\r
+void vApplicationStackOverflowHook( TaskHandle_t *pxTask, signed char *pcTaskName )\r
{\r
( void ) pcTaskName;\r
( void ) pxTask;\r