blob: d72c660235fa937c8815953c7a6cb6959d93aea4 [file] [log] [blame]
Richard Barry7a623472010-11-14 21:00:36 +00001/*
Richard Barrycc611262011-09-20 18:22:39 +00002 FreeRTOS V7.0.2 - Copyright (C) 2011 Real Time Engineers Ltd.
Richard Barry89bf1cf2011-04-08 18:30:58 +00003
Richard Barry7a623472010-11-14 21:00:36 +00004
5 ***************************************************************************
Richard Barry89bf1cf2011-04-08 18:30:58 +00006 * *
7 * FreeRTOS tutorial books are available in pdf and paperback. *
8 * Complete, revised, and edited pdf reference manuals are also *
9 * available. *
10 * *
11 * Purchasing FreeRTOS documentation will not only help you, by *
12 * ensuring you get running as quickly as possible and with an *
13 * in-depth knowledge of how to use FreeRTOS, it will also help *
14 * the FreeRTOS project to continue with its mission of providing *
15 * professional grade, cross platform, de facto standard solutions *
16 * for microcontrollers - completely free of charge! *
17 * *
18 * >>> See http://www.FreeRTOS.org/Documentation for details. <<< *
19 * *
20 * Thank you for using FreeRTOS, and thank you for your support! *
21 * *
Richard Barry7a623472010-11-14 21:00:36 +000022 ***************************************************************************
23
Richard Barry89bf1cf2011-04-08 18:30:58 +000024
Richard Barry7a623472010-11-14 21:00:36 +000025 This file is part of the FreeRTOS distribution.
26
27 FreeRTOS is free software; you can redistribute it and/or modify it under
28 the terms of the GNU General Public License (version 2) as published by the
29 Free Software Foundation AND MODIFIED BY the FreeRTOS exception.
Richard Barry89bf1cf2011-04-08 18:30:58 +000030 >>>NOTE<<< The modification to the GPL is included to allow you to
31 distribute a combined work that includes FreeRTOS without being obliged to
32 provide the source code for proprietary components outside of the FreeRTOS
33 kernel. FreeRTOS is distributed in the hope that it will be useful, but
34 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
35 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
36 more details. You should have received a copy of the GNU General Public
37 License and the FreeRTOS license exception along with FreeRTOS; if not it
38 can be viewed here: http://www.freertos.org/a00114.html and also obtained
Richard Barry7a623472010-11-14 21:00:36 +000039 by writing to Richard Barry, contact details for whom are available on the
40 FreeRTOS WEB site.
41
42 1 tab == 4 spaces!
43
44 http://www.FreeRTOS.org - Documentation, latest information, license and
45 contact details.
46
47 http://www.SafeRTOS.com - A version that is certified for use in safety
48 critical systems.
49
50 http://www.OpenRTOS.com - Commercial support, development, porting,
51 licensing and training services.
52*/
53
54
55#ifndef FREERTOS_CONFIG_H
56#define FREERTOS_CONFIG_H
57
58/*-----------------------------------------------------------
59 * Application specific definitions.
60 *
61 * These definitions should be adjusted for your particular hardware and
62 * application requirements.
63 *
64 * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE
65 * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.
66 *----------------------------------------------------------*/
Richard Barryabadea42010-11-21 14:35:36 +000067
Richard Barry0de50e32010-11-15 22:30:47 +000068#define configUSE_PREEMPTION 1
69#define configUSE_IDLE_HOOK 1
Richard Barry06899602011-02-28 17:52:14 +000070#define configUSE_TICK_HOOK 1
71#define configTICK_RATE_HZ ( 1000 ) /* In this non-real time simulated environment the tick frequency has to be at least a multiple of the Win32 tick frequency, and therefore very slow. */
Richard Barry8c9d8bc2011-02-09 19:29:46 +000072#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 50 ) /* In this simulated case, the stack only has to hold one small structure as the real stack is part of the win32 thread. */
Richard Barry0de50e32010-11-15 22:30:47 +000073#define configTOTAL_HEAP_SIZE ( ( size_t ) 0 ) /* This parameter has no effect when heap_3.c is included in the project. */
74#define configMAX_TASK_NAME_LEN ( 12 )
75#define configUSE_TRACE_FACILITY 1
Richard Barry605155c2011-02-28 17:58:09 +000076#define configUSE_16_BIT_TICKS 0
Richard Barry0de50e32010-11-15 22:30:47 +000077#define configIDLE_SHOULD_YIELD 1
78#define configUSE_CO_ROUTINES 0
79#define configUSE_MUTEXES 1
80#define configGENERATE_RUN_TIME_STATS 0
81#define configCHECK_FOR_STACK_OVERFLOW 0
82#define configUSE_RECURSIVE_MUTEXES 1
83#define configQUEUE_REGISTRY_SIZE 0
84#define configUSE_MALLOC_FAILED_HOOK 1
85#define configUSE_APPLICATION_TASK_TAG 0
Richard Barry06899602011-02-28 17:52:14 +000086#define configUSE_COUNTING_SEMAPHORES 1
87#define configUSE_ALTERNATIVE_API 1
Richard Barry7a623472010-11-14 21:00:36 +000088
Richard Barry8c9d8bc2011-02-09 19:29:46 +000089#define configUSE_TIMERS 1
90#define configTIMER_TASK_PRIORITY 2
Richard Barry06899602011-02-28 17:52:14 +000091#define configTIMER_QUEUE_LENGTH 20
Richard Barry8c9d8bc2011-02-09 19:29:46 +000092#define configTIMER_TASK_STACK_DEPTH ( configMINIMAL_STACK_SIZE * 2 )
93
Richard Barry0de50e32010-11-15 22:30:47 +000094#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 7 )
95#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
96
Richard Barry7a623472010-11-14 21:00:36 +000097
98/* Co-routine definitions. */
99#define configUSE_CO_ROUTINES 0
100#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
101
102/* Set the following definitions to 1 to include the API function, or zero
103to exclude the API function. */
104
Richard Barry0de50e32010-11-15 22:30:47 +0000105#define INCLUDE_vTaskPrioritySet 1
106#define INCLUDE_uxTaskPriorityGet 1
107#define INCLUDE_vTaskDelete 1
108#define INCLUDE_vTaskCleanUpResources 0
109#define INCLUDE_vTaskSuspend 1
110#define INCLUDE_vTaskDelayUntil 1
111#define INCLUDE_vTaskDelay 1
112#define INCLUDE_uxTaskGetStackHighWaterMark 1
113#define INCLUDE_xTaskGetSchedulerState 1
Richard Barrycc611262011-09-20 18:22:39 +0000114#define INCLUDE_xTimerGetTimerDaemonTaskHandle 1
Richard Barry42aed812011-07-27 14:16:24 +0000115#define INCLUDE_xTaskGetIdleTaskHandle 1
Richard Barry4d8e3642011-11-29 19:06:39 +0000116#define INCLUDE_pcTaskGetTaskName 1
Richard Barry7a623472010-11-14 21:00:36 +0000117
Richard Barry06899602011-02-28 17:52:14 +0000118extern void vAssertCalled( void );
119#define configASSERT( x ) if( ( x ) == 0 ) vAssertCalled()
120
Richard Barry7a623472010-11-14 21:00:36 +0000121#endif /* FREERTOS_CONFIG_H */