summaryrefslogtreecommitdiff
path: root/Demo/NEC_V850ES_IAR/ParTest/ParTest_Generic_Target_Board.c
diff options
context:
space:
mode:
Diffstat (limited to 'Demo/NEC_V850ES_IAR/ParTest/ParTest_Generic_Target_Board.c')
-rw-r--r--Demo/NEC_V850ES_IAR/ParTest/ParTest_Generic_Target_Board.c123
1 files changed, 123 insertions, 0 deletions
diff --git a/Demo/NEC_V850ES_IAR/ParTest/ParTest_Generic_Target_Board.c b/Demo/NEC_V850ES_IAR/ParTest/ParTest_Generic_Target_Board.c
new file mode 100644
index 00000000..4d89cdce
--- /dev/null
+++ b/Demo/NEC_V850ES_IAR/ParTest/ParTest_Generic_Target_Board.c
@@ -0,0 +1,123 @@
+/*
+ FreeRTOS.org V5.1.1 - Copyright (C) 2003-2008 Richard Barry.
+
+ This file is part of the FreeRTOS.org distribution.
+
+ FreeRTOS.org is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ FreeRTOS.org is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with FreeRTOS.org; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ A special exception to the GPL can be applied should you wish to distribute
+ a combined work that includes FreeRTOS.org, without being obliged to provide
+ the source code for any proprietary components. See the licensing section
+ of http://www.FreeRTOS.org for full details of how and when the exception
+ can be applied.
+
+ ***************************************************************************
+ ***************************************************************************
+ * *
+ * SAVE TIME AND MONEY! We can port FreeRTOS.org to your own hardware, *
+ * and even write all or part of your application on your behalf. *
+ * See http://www.OpenRTOS.com for details of the services we provide to *
+ * expedite your project. *
+ * *
+ ***************************************************************************
+ ***************************************************************************
+
+ Please ensure to read the configuration and relevant port sections of the
+ online documentation.
+
+ http://www.FreeRTOS.org - Documentation, latest information, license and
+ contact details.
+
+ http://www.SafeRTOS.com - A version that is certified for use in safety
+ critical systems.
+
+ http://www.OpenRTOS.com - Commercial support, development, porting,
+ licensing and training services.
+*/
+
+/*-----------------------------------------------------------
+ * Simple parallel port IO routines.
+ *-----------------------------------------------------------*/
+
+/* FreeRTOS includes. */
+#include "FreeRTOS.h"
+#include "task.h"
+
+/* Demo includes. */
+#include "partest.h"
+
+#define partstNUM_LEDs 2
+
+#define LED0_MASK ( ( unsigned short ) 0x04 )
+#define LED1_MASK ( ( unsigned short ) 0x08 )
+
+static const unsigned short xLEDs[ partstNUM_LEDs ] = { LED0_MASK, LED1_MASK };
+
+/*-----------------------------------------------------------*/
+
+void vParTestInitialise( void )
+{
+ /* LED Port Initialization */
+ PMCM &= ~( LED0_MASK | LED1_MASK );
+}
+/*-----------------------------------------------------------*/
+
+void vParTestSetLED( unsigned portBASE_TYPE uxLED, signed portBASE_TYPE xValue )
+{
+unsigned portBASE_TYPE uxLEDMask;
+
+ if( uxLED < partstNUM_LEDs )
+ {
+ uxLEDMask = xLEDs[ uxLED ];
+
+ taskENTER_CRITICAL();
+ {
+ if( xValue )
+ {
+ PCM &= ~uxLEDMask;
+ }
+ else
+ {
+ PCM |= uxLEDMask;
+ }
+ }
+ taskEXIT_CRITICAL();
+ }
+}
+/*-----------------------------------------------------------*/
+
+void vParTestToggleLED( unsigned portBASE_TYPE uxLED )
+{
+unsigned portBASE_TYPE uxLEDMask;
+
+ if( uxLED < partstNUM_LEDs )
+ {
+ uxLEDMask = xLEDs[ uxLED ];
+
+ taskENTER_CRITICAL();
+ {
+ if( PCM & uxLEDMask )
+ {
+ PCM &= ~uxLEDMask;
+ }
+ else
+ {
+ PCM |= uxLEDMask;
+ }
+ }
+ taskEXIT_CRITICAL();
+ }
+}
+