/*\r
- FreeRTOS.org V4.6.0 - Copyright (C) 2003-2007 Richard Barry.\r
+ FreeRTOS.org V5.1.1 - Copyright (C) 2003-2008 Richard Barry.\r
\r
This file is part of the FreeRTOS.org distribution.\r
\r
of http://www.FreeRTOS.org for full details of how and when the exception\r
can be applied.\r
\r
- ***************************************************************************\r
- See http://www.FreeRTOS.org for documentation, latest information, license \r
- and contact details. Please ensure to read the configuration and relevant \r
- port sections of the online documentation.\r
- ***************************************************************************\r
+ ***************************************************************************\r
+ ***************************************************************************\r
+ * *\r
+ * SAVE TIME AND MONEY! We can port FreeRTOS.org to your own hardware, *\r
+ * and even write all or part of your application on your behalf. *\r
+ * See http://www.OpenRTOS.com for details of the services we provide to *\r
+ * expedite your project. *\r
+ * *\r
+ ***************************************************************************\r
+ ***************************************************************************\r
+\r
+ Please ensure to read the configuration and relevant port sections of the\r
+ online documentation.\r
+\r
+ http://www.FreeRTOS.org - Documentation, latest information, license and \r
+ contact details.\r
+\r
+ http://www.SafeRTOS.com - A version that is certified for use in safety \r
+ critical systems.\r
+\r
+ http://www.OpenRTOS.com - Commercial support, development, porting, \r
+ licensing and training services.\r
*/\r
\r
/*\r
\r
/* Scheduler includes. */\r
#include "FreeRTOS.h"\r
-#include "Task.h"\r
+#include "task.h"\r
#include "queue.h"\r
#include "semphr.h"\r
\r
#define mainGEN_QUEUE_TASK_PRIORITY ( tskIDLE_PRIORITY ) \r
\r
/* Constants to setup the PLL. */\r
-#define mainPLL_MUL ( ( unsigned portLONG ) ( 12 - 1 ) )\r
+#define mainPLL_MUL ( ( unsigned portLONG ) ( 8 - 1 ) )\r
#define mainPLL_DIV ( ( unsigned portLONG ) 0x0000 )\r
-#define mainCPU_CLK_DIV ( ( unsigned portLONG ) 0x0004 )\r
+#define mainCPU_CLK_DIV ( ( unsigned portLONG ) 0x0003 )\r
#define mainPLL_ENABLE ( ( unsigned portLONG ) 0x0001 )\r
#define mainPLL_CONNECT ( ( ( unsigned portLONG ) 0x0002 ) | mainPLL_ENABLE )\r
#define mainPLL_FEED_BYTE1 ( ( unsigned portLONG ) 0xaa )\r
unsigned portBASE_TYPE uxColumn = 0;\r
static xLCDMessage xMessage = { 0, "PASS" };\r
static unsigned portLONG ulTicksSinceLastDisplay = 0;\r
+static portBASE_TYPE xHigherPriorityTaskWoken = pdFALSE;\r
\r
/* Called from every tick interrupt. Have enough ticks passed to make it\r
time to perform our health status check again? */\r
xMessage.xColumn++;\r
\r
/* Send the message to the LCD gatekeeper for display. */\r
- xQueueSendToBackFromISR( xLCDQueue, &xMessage, pdFALSE );\r
+ xHigherPriorityTaskWoken = pdFALSE;\r
+ xQueueSendToBackFromISR( xLCDQueue, &xMessage, &xHigherPriorityTaskWoken );\r
}\r
}\r
/*-----------------------------------------------------------*/\r
PLLFEED = mainPLL_FEED_BYTE2;\r
while( !( PLLSTAT & mainPLL_CONNECTED ) ); \r
\r
- /* Setup and turn on the MAM. Three cycle access is used due to the fast\r
+ /* \r
+ This code is commented out as the MAM does not work on the original revision\r
+ LPC2368 chips. If using Rev B chips then you can increase the speed though\r
+ the use of the MAM.\r
+ \r
+ Setup and turn on the MAM. Three cycle access is used due to the fast\r
PLL used. It is possible faster overall performance could be obtained by\r
- tuning the MAM and PLL settings. */\r
+ tuning the MAM and PLL settings.\r
MAMCR = 0;\r
MAMTIM = mainMAM_TIM_3;\r
MAMCR = mainMAM_MODE_FULL;\r
+ */\r
\r
/* Setup the led's on the MCB2300 board */\r
vParTestInitialise();\r