]> git.sur5r.net Git - freertos/blob - Demo/ARM7_LPC2368_Rowley/FreeRTOSConfig.h
Ready for V5.1.1 release.
[freertos] / Demo / ARM7_LPC2368_Rowley / FreeRTOSConfig.h
1 /*\r
2         FreeRTOS.org V5.1.1 - Copyright (C) 2003-2008 Richard Barry.\r
3 \r
4         This file is part of the FreeRTOS distribution.\r
5 \r
6         FreeRTOS is free software; you can redistribute it and/or modify\r
7         it under the terms of the GNU General Public License as published by\r
8         the Free Software Foundation; either version 2 of the License, or\r
9         (at your option) any later version.\r
10 \r
11         FreeRTOS is distributed in the hope that it will be useful,\r
12         but WITHOUT ANY WARRANTY; without even the implied warranty of\r
13         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
14         GNU General Public License for more details.\r
15 \r
16         You should have received a copy of the GNU General Public License\r
17         along with FreeRTOS; if not, write to the Free Software\r
18         Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r
19 \r
20         A special exception to the GPL can be applied should you wish to distribute\r
21         a combined work that includes FreeRTOS, without being obliged to provide\r
22         the source code for any proprietary components.  See the licensing section \r
23         of http://www.FreeRTOS.org for full details of how and when the exception\r
24         can be applied.\r
25 \r
26         ***************************************************************************\r
27         See http://www.FreeRTOS.org for documentation, latest information, license \r
28         and contact details.  Please ensure to read the configuration and relevant \r
29         port sections of the online documentation.\r
30         ***************************************************************************\r
31 */\r
32 \r
33 #ifndef FREERTOS_CONFIG_H\r
34 #define FREERTOS_CONFIG_H\r
35 \r
36 #include <stdio.h>\r
37 #include <targets/LPC2368.h>\r
38 #define vPortYieldProcessor swi_handler\r
39 \r
40 /*-----------------------------------------------------------\r
41  * Application specific definitions.\r
42  *\r
43  * These definitions should be adjusted for your particular hardware and\r
44  * application requirements.\r
45  *\r
46  * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE\r
47  * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE. \r
48  *\r
49  * See http://www.freertos.org/a00110.html.\r
50  *----------------------------------------------------------*/\r
51 \r
52 \r
53 /* Value to use on old rev '-' devices. */\r
54 //#define configPINSEL2_VALUE   0x50151105\r
55 \r
56 /* Value to use on rev 'A' and newer devices. */\r
57 //#define configPINSEL2_VALUE   0x50150105\r
58 \r
59 #ifndef configPINSEL2_VALUE\r
60         #error Please uncomment one of the two configPINSEL2_VALUE definitions above, depending on the revision of the LPC2000 device being used.\r
61 #endif\r
62 \r
63 #define configUSE_PREEMPTION            1\r
64 #define configUSE_IDLE_HOOK         0\r
65 #define configUSE_TICK_HOOK         0\r
66 #define configCPU_CLOCK_HZ          ( ( unsigned portLONG ) 57600000 )  \r
67 #define configTICK_RATE_HZ          ( ( portTickType ) 1000 )\r
68 #define configMAX_PRIORITIES            ( ( unsigned portBASE_TYPE ) 4 )\r
69 #define configMINIMAL_STACK_SIZE        ( ( unsigned portSHORT ) 120 )\r
70 #define configTOTAL_HEAP_SIZE           ( ( size_t ) ( 18 * 1024 ) )\r
71 #define configMAX_TASK_NAME_LEN         ( 16 )\r
72 #define configUSE_TRACE_FACILITY        1\r
73 #define configUSE_16_BIT_TICKS          0\r
74 #define configIDLE_SHOULD_YIELD         1\r
75 \r
76 /* Co-routine definitions. */\r
77 #define configUSE_CO_ROUTINES           0\r
78 #define configMAX_CO_ROUTINE_PRIORITIES ( 2 )\r
79 \r
80 \r
81 /* Set the following definitions to 1 to include the API function, or zero\r
82 to exclude the API function. */\r
83 \r
84 #define INCLUDE_vTaskPrioritySet            1\r
85 #define INCLUDE_uxTaskPriorityGet           1\r
86 #define INCLUDE_vTaskDelete                 1\r
87 #define INCLUDE_vTaskCleanUpResources       0\r
88 #define INCLUDE_vTaskSuspend                1\r
89 #define INCLUDE_vTaskDelayUntil             1\r
90 #define INCLUDE_vTaskDelay                  1\r
91 #define INCLUDE_xTaskGetCurrentTaskHandle       1\r
92 \r
93 \r
94 #endif /* FREERTOS_CONFIG_H */\r
95 \r
96 \r
97 #ifndef sbi\r
98 #define sbi(x,y)        x|=(1 << (y))\r
99 #endif\r
100 \r
101 #ifndef cbi \r
102 #define cbi(x,y)        x&=~(1 << (y))\r
103 #endif\r
104 \r
105 #ifndef tstb\r
106 #define tstb(x,y)       (x & (1 << (y)) ? 1 : 0)\r
107 #endif\r
108 \r
109 #ifndef toggle \r
110 #define toggle(x,y)     x^=(1 << (y))\r
111 #endif\r
112 \r
113 #ifndef BIT\r
114 #define BIT(x)  (1 << (x))\r
115 \r
116 \r
117 #define VICVectAddr    VICAddress\r
118 #define VICVectCntl4 VICVectPriority4\r
119 typedef struct\r
120 {\r
121         long xColumn;\r
122         signed char *pcMessage;\r
123 } xLCDMessage;\r
124 \r
125 #endif\r