]> git.sur5r.net Git - freertos/blobdiff - Demo/CORTEX_LM3S811_GCC/main.c
Update to V5.1.2.
[freertos] / Demo / CORTEX_LM3S811_GCC / main.c
index dea2278779903a047666d3a99e93af74227dd838..089c35dd03e4fad5081be7e1140393f1d2c065f9 100644 (file)
@@ -1,5 +1,5 @@
 /*\r
-       FreeRTOS.org V4.3.1 - Copyright (C) 2003-2007 Richard Barry.\r
+       FreeRTOS.org V5.1.2 - Copyright (C) 2003-2009 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
-       Also see http://www.SafeRTOS.com for an IEC 61508 compliant version along\r
-       with commercial development and support options.\r
-       ***************************************************************************\r
+    ***************************************************************************\r
+    ***************************************************************************\r
+    *                                                                         *\r
+    * Get the FreeRTOS eBook!  See http://www.FreeRTOS.org/Documentation      *\r
+       *                                                                         *\r
+       * This is a concise, step by step, 'hands on' guide that describes both   *\r
+       * general multitasking concepts and FreeRTOS specifics. It presents and   *\r
+       * explains numerous examples that are written using the FreeRTOS API.     *\r
+       * Full source code for all the examples is provided in an accompanying    *\r
+       * .zip file.                                                              *\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
@@ -239,6 +256,7 @@ static void prvSetupHardware( void )
        SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC);\r
     GPIODirModeSet(GPIO_PORTC_BASE, mainPUSH_BUTTON, GPIO_DIR_MODE_IN);\r
        GPIOIntTypeSet( GPIO_PORTC_BASE, mainPUSH_BUTTON,GPIO_FALLING_EDGE );\r
+       IntPrioritySet( INT_GPIOC, configKERNEL_INTERRUPT_PRIORITY );\r
        GPIOPinIntEnable( GPIO_PORTC_BASE, mainPUSH_BUTTON );\r
        IntEnable( INT_GPIOC );\r
 \r
@@ -261,6 +279,7 @@ static void prvSetupHardware( void )
 \r
        /* Enable Tx interrupts. */\r
        HWREG( UART0_BASE + UART_O_IM ) |= UART_INT_TX;\r
+       IntPrioritySet( INT_UART0, configKERNEL_INTERRUPT_PRIORITY );\r
        IntEnable( INT_UART0 );\r
 \r
 \r
@@ -334,14 +353,15 @@ unsigned portLONG ulStatus;
 \r
 void vGPIO_ISR( void )\r
 {\r
+portBASE_TYPE xHigherPriorityTaskWoken = pdFALSE;\r
+\r
        /* Clear the interrupt. */\r
        GPIOPinIntClear(GPIO_PORTC_BASE, mainPUSH_BUTTON);\r
 \r
        /* Wake the button handler task. */\r
-       if( xSemaphoreGiveFromISR( xButtonSemaphore, pdFALSE ) )\r
-       {\r
-               portEND_SWITCHING_ISR( pdTRUE );\r
-       }\r
+       xSemaphoreGiveFromISR( xButtonSemaphore, &xHigherPriorityTaskWoken );\r
+\r
+       portEND_SWITCHING_ISR( xHigherPriorityTaskWoken );\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r