Demo tasks:

- Complete the demo projects for the RX113 using IAR, GCC and Renesas compilers by including a basic UART CLI.

Standard demo tasks:
- Add some volatile qualifiers to variables in IntQueue.c.
This commit is contained in:
Richard Barry 2015-10-05 15:23:09 +00:00
parent cd42d2c215
commit f218cf5680
41 changed files with 1304 additions and 1355 deletions

View file

@ -195,7 +195,7 @@ an interrupt. */
static QueueHandle_t xNormallyEmptyQueue, xNormallyFullQueue;
/* Variables used to detect a stall in one of the tasks. */
static UBaseType_t uxHighPriorityLoops1 = 0, uxHighPriorityLoops2 = 0, uxLowPriorityLoops1 = 0, uxLowPriorityLoops2 = 0;
static volatile UBaseType_t uxHighPriorityLoops1 = 0, uxHighPriorityLoops2 = 0, uxLowPriorityLoops1 = 0, uxLowPriorityLoops2 = 0;
/* Any unexpected behaviour sets xErrorStatus to fail and log the line that
caused the error in xErrorLine. */
@ -207,7 +207,7 @@ static BaseType_t xWasSuspended = pdFALSE;
/* The values that are sent to the queues. An incremented value is sent each
time to each queue. */
volatile UBaseType_t uxValueForNormallyEmptyQueue = 0, uxValueForNormallyFullQueue = 0;
static volatile UBaseType_t uxValueForNormallyEmptyQueue = 0, uxValueForNormallyFullQueue = 0;
/* A handle to some of the tasks is required so they can be suspended/resumed. */
TaskHandle_t xHighPriorityNormallyEmptyTask1, xHighPriorityNormallyEmptyTask2, xHighPriorityNormallyFullTask1, xHighPriorityNormallyFullTask2;
@ -718,7 +718,6 @@ static UBaseType_t uxNextOperation = 0;
timerNORMALLY_FULL_TX();
timerNORMALLY_FULL_TX();
timerNORMALLY_FULL_TX();
timerNORMALLY_FULL_TX();
}
return xHigherPriorityTaskWoken;

View file

@ -123,7 +123,7 @@ be overridden by a definition in FreeRTOSConfig.h. */
#define recmuMAX_COUNT ( 10 )
/* Misc. */
#define recmuSHORT_DELAY ( 20 / portTICK_PERIOD_MS )
#define recmuSHORT_DELAY ( pdMS_TO_TICKS( 20 ) )
#define recmuNO_DELAY ( ( TickType_t ) 0 )
#define recmuEIGHT_TICK_DELAY ( ( TickType_t ) 8 )
@ -227,6 +227,10 @@ UBaseType_t ux;
{
xErrorOccurred = pdTRUE;
}
#if( configUSE_PREEMPTION == 0 )
taskYIELD();
#endif
}
/* Having given it back the same number of times as it was taken, we
@ -344,7 +348,14 @@ static void prvRecursiveMutexPollingTask( void *pvParameters )
error will be latched if the polling task has not returned the
mutex by the time this fixed period has expired. */
vTaskResume( xBlockingTaskHandle );
vTaskResume( xControllingTaskHandle );
#if( configUSE_PREEMPTION == 0 )
taskYIELD();
#endif
vTaskResume( xControllingTaskHandle );
#if( configUSE_PREEMPTION == 0 )
taskYIELD();
#endif
/* The other two tasks should now have executed and no longer
be suspended. */
@ -433,7 +444,7 @@ static UBaseType_t uxLastControllingCycles = 0, uxLastBlockingCycles = 0, uxLast
}
else
{
xReturn = pdTRUE;
xReturn = pdPASS;
}
return xReturn;