/*\r
- FreeRTOS.org V4.2.1 - Copyright (C) 2003-2007 Richard Barry.\r
+ FreeRTOS.org V4.8.0 - 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
+ * 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
- Also see http://www.SafeRTOS.com for an IEC 61508 compliant version along\r
- with commercial development and support options.\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
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
\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
\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