]> git.sur5r.net Git - freertos/blob - Demo/NEC_78K0R_IAR/FreeRTOSConfig.h
Continued development on NEC ports.
[freertos] / Demo / NEC_78K0R_IAR / 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.org distribution.\r
5 \r
6         FreeRTOS.org 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.org 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.org; 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.org, 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     ***************************************************************************\r
28     *                                                                         *\r
29     * SAVE TIME AND MONEY!  We can port FreeRTOS.org to your own hardware,    *\r
30     * and even write all or part of your application on your behalf.          *\r
31     * See http://www.OpenRTOS.com for details of the services we provide to   *\r
32     * expedite your project.                                                  *\r
33     *                                                                         *\r
34     ***************************************************************************\r
35     ***************************************************************************\r
36 \r
37         Please ensure to read the configuration and relevant port sections of the\r
38         online documentation.\r
39 \r
40         http://www.FreeRTOS.org - Documentation, latest information, license and\r
41         contact details.\r
42 \r
43         http://www.SafeRTOS.com - A version that is certified for use in safety\r
44         critical systems.\r
45 \r
46         http://www.OpenRTOS.com - Commercial support, development, porting,\r
47         licensing and training services.\r
48 */\r
49 \r
50 #ifndef FREERTOS_CONFIG_H\r
51 #define FREERTOS_CONFIG_H\r
52 \r
53 /*\r
54  * 78K0R Clock Source Configuration\r
55  * 1 = use internal High Speed Clock Source (typically 8Mhz on the 78K0R/Kx3)\r
56  * 0 = use external Clock Source\r
57  */\r
58 #define configCLOCK_SOURCE              0\r
59 \r
60 /*\r
61  * 78K0R Memory Model\r
62  * 1 = use far memory mode\r
63  * 0 = use near memory mode\r
64  *\r
65  * This setting must match the setting in the IAR project options.\r
66  */\r
67 #define configMEMORY_MODE               1\r
68 \r
69 /*\r
70  * Application specific definitions.\r
71  *\r
72  * These definitions should be adjusted for your particular hardware and\r
73  * application requirements.\r
74  *\r
75  * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE\r
76  * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.\r
77  */\r
78 \r
79 #define configUSE_PREEMPTION            1\r
80 \r
81         /* Only use following section for C files */\r
82         #ifdef __IAR_SYSTEMS_ICC__\r
83         \r
84                 #pragma language=extended\r
85                 #pragma system_include\r
86         \r
87                 #include <intrinsics.h>\r
88         \r
89                 #define configUSE_IDLE_HOOK                             0\r
90                 #define configUSE_TICK_HOOK                             0\r
91                 #define configTICK_RATE_HZ                              ( ( portTickType ) 1000 )\r
92                 #define configMAX_PRIORITIES                    ( ( unsigned portBASE_TYPE ) 4 )\r
93                 #define configMINIMAL_STACK_SIZE                ( ( unsigned portSHORT ) 100 )\r
94                 #define configMAX_TASK_NAME_LEN                 ( 10 )\r
95                 #define configUSE_TRACE_FACILITY                0\r
96                 #define configUSE_16_BIT_TICKS                  1\r
97                 #define configIDLE_SHOULD_YIELD                 1\r
98                 #define configCHECK_FOR_STACK_OVERFLOW  2\r
99                 #define configUSE_MUTEXES                               1\r
100         \r
101                 /* Co-routine definitions. */\r
102                 #define configUSE_CO_ROUTINES                   0\r
103                 #define configMAX_CO_ROUTINE_PRIORITIES ( 2 )\r
104         \r
105                 /* Set the following definitions to 1 to include the API function, or zero\r
106                 to exclude the API function. */\r
107                 #define INCLUDE_vTaskPrioritySet                1\r
108                 #define INCLUDE_uxTaskPriorityGet               1\r
109                 #define INCLUDE_vTaskDelete                             1\r
110                 #define INCLUDE_vTaskCleanUpResources   0\r
111                 #define INCLUDE_vTaskSuspend                    1\r
112                 #define INCLUDE_vTaskDelayUntil                 1\r
113                 #define INCLUDE_vTaskDelay                              1\r
114         \r
115                 #if configCLOCK_SOURCE == 0\r
116                         #define configCPU_CLOCK_HZ                      ( ( unsigned portLONG ) 20000000 )  /* using the external clock source */\r
117                 #else\r
118                         #define configCPU_CLOCK_HZ                      ( ( unsigned portLONG ) 8000000 )   /* using the internal high speed clock */\r
119                 #endif /* configCLOCK_SOURCE */\r
120         \r
121                 /* Definitions that are specific to the project being used. */\r
122                 #ifdef __IAR_78K0R_Kx3__\r
123                 \r
124                         /* Device specific includes. */\r
125                         #include <io78f1166_a0.h>\r
126                         #include <io78f1166_a0_ext.h>\r
127                 \r
128                         #define configTOTAL_HEAP_SIZE                   ( (size_t ) ( 7000 ) )\r
129                 \r
130                 #endif /* __IAR_78K0R_Kx3__ */\r
131                 \r
132                 #ifdef __IAR_78K0R_Kx3L__\r
133                 \r
134                         /* Device specific includes. */\r
135                         #include <io78f1009_64.h>\r
136                         #include <io78f1009_64_ext.h>\r
137                 \r
138                         #define configTOTAL_HEAP_SIZE                   ( (size_t ) ( 2400 ) )\r
139                 \r
140                 #endif /* _IAR_78K0R_Kx3L__ */\r
141         \r
142         #endif /* __IAR_SYSTEMS_ICC__ */\r
143 \r
144 #endif /* FREERTOS_CONFIG_H */\r
145 \r