summaryrefslogtreecommitdiff
path: root/Demo/ColdFire_MCF52233_Eclipse/RTOSDemo/ParTest/ParTest.c
diff options
context:
space:
mode:
authorrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>2008-11-19 22:13:03 +0000
committerrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>2008-11-19 22:13:03 +0000
commit4be00af97a2fdfe4811e65241f33125b5e886052 (patch)
treeb4c6946b51aba4807eae4a6acc70cd6cdb3d7ebf /Demo/ColdFire_MCF52233_Eclipse/RTOSDemo/ParTest/ParTest.c
parent2ba48aae9ba17c7e5e3153a6d8805ebea01b1d69 (diff)
downloadfreertos-4be00af97a2fdfe4811e65241f33125b5e886052.tar.gz
freertos-4be00af97a2fdfe4811e65241f33125b5e886052.tar.bz2
freertos-4be00af97a2fdfe4811e65241f33125b5e886052.tar.xz
Still messing around trying to get the workspace to be distributable.
git-svn-id: https://freertos.svn.sourceforge.net/svnroot/freertos/trunk@564 1d2547de-c912-0410-9cb9-b8ca96c0e9e2
Diffstat (limited to 'Demo/ColdFire_MCF52233_Eclipse/RTOSDemo/ParTest/ParTest.c')
-rw-r--r--Demo/ColdFire_MCF52233_Eclipse/RTOSDemo/ParTest/ParTest.c129
1 files changed, 129 insertions, 0 deletions
diff --git a/Demo/ColdFire_MCF52233_Eclipse/RTOSDemo/ParTest/ParTest.c b/Demo/ColdFire_MCF52233_Eclipse/RTOSDemo/ParTest/ParTest.c
new file mode 100644
index 00000000..0ac101c8
--- /dev/null
+++ b/Demo/ColdFire_MCF52233_Eclipse/RTOSDemo/ParTest/ParTest.c
@@ -0,0 +1,129 @@
+/*
+ FreeRTOS.org V5.1.0 - 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.
+*/
+
+#include "FreeRTOS.h"
+#include "task.h"
+#include "partest.h"
+
+#define partstNUM_LEDs 4
+
+/*-----------------------------------------------------------
+ * Simple parallel port IO routines.
+ *-----------------------------------------------------------*/
+
+void vParTestInitialise( void )
+{
+ /* Ensure LED outputs are set to GPIO */
+ MCF_GPIO_PTCPAR = MCF_GPIO_PTCPAR_DTIN3_GPIO | MCF_GPIO_PTCPAR_DTIN2_GPIO | MCF_GPIO_PTCPAR_DTIN1_GPIO | MCF_GPIO_PTCPAR_DTIN0_GPIO;
+
+ /* Set GPIO to outputs. */
+ MCF_GPIO_DDRTC = MCF_GPIO_DDRTC_DDRTC3 | MCF_GPIO_DDRTC_DDRTC2 | MCF_GPIO_DDRTC_DDRTC1 | MCF_GPIO_DDRTC_DDRTC0;
+
+ /* Start with all LEDs off. */
+ MCF_GPIO_PORTTC = 0x00;
+}
+/*-----------------------------------------------------------*/
+
+void vParTestSetLED( unsigned portBASE_TYPE uxLED, signed portBASE_TYPE xValue )
+{
+ if( uxLED < partstNUM_LEDs )
+ {
+ if( xValue != 0 )
+ {
+ taskENTER_CRITICAL();
+ MCF_GPIO_PORTTC |= ( 1 << uxLED );
+ taskEXIT_CRITICAL();
+ }
+ else
+ {
+ taskENTER_CRITICAL();
+ MCF_GPIO_PORTTC &= ~( 1 << uxLED );
+ taskEXIT_CRITICAL();
+ }
+ }
+}
+/*-----------------------------------------------------------*/
+
+void vParTestToggleLED( unsigned portBASE_TYPE uxLED )
+{
+ if( uxLED < partstNUM_LEDs )
+ {
+ taskENTER_CRITICAL();
+ {
+ if( ( MCF_GPIO_PORTTC & ( 1 << uxLED ) ) == ( unsigned portCHAR ) 0 )
+ {
+ MCF_GPIO_PORTTC |= ( 1 << uxLED );
+ }
+ else
+ {
+ MCF_GPIO_PORTTC &= ~( 1 << uxLED );
+ }
+ }
+ taskEXIT_CRITICAL();
+ }
+}
+/*-----------------------------------------------------------*/
+
+unsigned portBASE_TYPE uxParTestGetLED( unsigned portBASE_TYPE uxLED )
+{
+unsigned portBASE_TYPE uxReturn = pdFALSE;
+
+ if( uxLED < partstNUM_LEDs )
+ {
+ if( ( MCF_GPIO_PORTTC & ( 1 << uxLED ) ) != 0 )
+ {
+ uxReturn = pdTRUE;
+ }
+ }
+
+ return uxReturn;
+}
+
+
+