David Fletcher
/
cc3100_Test_mqtt_CM4F
TI's MQTT Demo with freertos CM4F
FreeRTOS/FreeRTOSConfig.h@0:1e7b5dd9edb4, 2015-09-03 (annotated)
- Committer:
- dflet
- Date:
- Thu Sep 03 14:07:01 2015 +0000
- Revision:
- 0:1e7b5dd9edb4
First commit, it's been hanging around for a while. Updated SPI mode change 1 to 0.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dflet | 0:1e7b5dd9edb4 | 1 | /* |
dflet | 0:1e7b5dd9edb4 | 2 | FreeRTOS V7.6.0 - Copyright (C) 2013 Real Time Engineers Ltd. |
dflet | 0:1e7b5dd9edb4 | 3 | All rights reserved |
dflet | 0:1e7b5dd9edb4 | 4 | |
dflet | 0:1e7b5dd9edb4 | 5 | VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION. |
dflet | 0:1e7b5dd9edb4 | 6 | |
dflet | 0:1e7b5dd9edb4 | 7 | *************************************************************************** |
dflet | 0:1e7b5dd9edb4 | 8 | * * |
dflet | 0:1e7b5dd9edb4 | 9 | * FreeRTOS provides completely free yet professionally developed, * |
dflet | 0:1e7b5dd9edb4 | 10 | * robust, strictly quality controlled, supported, and cross * |
dflet | 0:1e7b5dd9edb4 | 11 | * platform software that has become a de facto standard. * |
dflet | 0:1e7b5dd9edb4 | 12 | * * |
dflet | 0:1e7b5dd9edb4 | 13 | * Help yourself get started quickly and support the FreeRTOS * |
dflet | 0:1e7b5dd9edb4 | 14 | * project by purchasing a FreeRTOS tutorial book, reference * |
dflet | 0:1e7b5dd9edb4 | 15 | * manual, or both from: http://www.FreeRTOS.org/Documentation * |
dflet | 0:1e7b5dd9edb4 | 16 | * * |
dflet | 0:1e7b5dd9edb4 | 17 | * Thank you! * |
dflet | 0:1e7b5dd9edb4 | 18 | * * |
dflet | 0:1e7b5dd9edb4 | 19 | *************************************************************************** |
dflet | 0:1e7b5dd9edb4 | 20 | |
dflet | 0:1e7b5dd9edb4 | 21 | This file is part of the FreeRTOS distribution. |
dflet | 0:1e7b5dd9edb4 | 22 | |
dflet | 0:1e7b5dd9edb4 | 23 | FreeRTOS is free software; you can redistribute it and/or modify it under |
dflet | 0:1e7b5dd9edb4 | 24 | the terms of the GNU General Public License (version 2) as published by the |
dflet | 0:1e7b5dd9edb4 | 25 | Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception. |
dflet | 0:1e7b5dd9edb4 | 26 | |
dflet | 0:1e7b5dd9edb4 | 27 | >>! NOTE: The modification to the GPL is included to allow you to distribute |
dflet | 0:1e7b5dd9edb4 | 28 | >>! a combined work that includes FreeRTOS without being obliged to provide |
dflet | 0:1e7b5dd9edb4 | 29 | >>! the source code for proprietary components outside of the FreeRTOS |
dflet | 0:1e7b5dd9edb4 | 30 | >>! kernel. |
dflet | 0:1e7b5dd9edb4 | 31 | |
dflet | 0:1e7b5dd9edb4 | 32 | FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY |
dflet | 0:1e7b5dd9edb4 | 33 | WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS |
dflet | 0:1e7b5dd9edb4 | 34 | FOR A PARTICULAR PURPOSE. Full license text is available from the following |
dflet | 0:1e7b5dd9edb4 | 35 | link: http://www.freertos.org/a00114.html |
dflet | 0:1e7b5dd9edb4 | 36 | |
dflet | 0:1e7b5dd9edb4 | 37 | 1 tab == 4 spaces! |
dflet | 0:1e7b5dd9edb4 | 38 | |
dflet | 0:1e7b5dd9edb4 | 39 | *************************************************************************** |
dflet | 0:1e7b5dd9edb4 | 40 | * * |
dflet | 0:1e7b5dd9edb4 | 41 | * Having a problem? Start by reading the FAQ "My application does * |
dflet | 0:1e7b5dd9edb4 | 42 | * not run, what could be wrong?" * |
dflet | 0:1e7b5dd9edb4 | 43 | * * |
dflet | 0:1e7b5dd9edb4 | 44 | * http://www.FreeRTOS.org/FAQHelp.html * |
dflet | 0:1e7b5dd9edb4 | 45 | * * |
dflet | 0:1e7b5dd9edb4 | 46 | *************************************************************************** |
dflet | 0:1e7b5dd9edb4 | 47 | |
dflet | 0:1e7b5dd9edb4 | 48 | http://www.FreeRTOS.org - Documentation, books, training, latest versions, |
dflet | 0:1e7b5dd9edb4 | 49 | license and Real Time Engineers Ltd. contact details. |
dflet | 0:1e7b5dd9edb4 | 50 | |
dflet | 0:1e7b5dd9edb4 | 51 | http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products, |
dflet | 0:1e7b5dd9edb4 | 52 | including FreeRTOS+Trace - an indispensable productivity tool, a DOS |
dflet | 0:1e7b5dd9edb4 | 53 | compatible FAT file system, and our tiny thread aware UDP/IP stack. |
dflet | 0:1e7b5dd9edb4 | 54 | |
dflet | 0:1e7b5dd9edb4 | 55 | http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High |
dflet | 0:1e7b5dd9edb4 | 56 | Integrity Systems to sell under the OpenRTOS brand. Low cost OpenRTOS |
dflet | 0:1e7b5dd9edb4 | 57 | licenses offer ticketed support, indemnification and middleware. |
dflet | 0:1e7b5dd9edb4 | 58 | |
dflet | 0:1e7b5dd9edb4 | 59 | http://www.SafeRTOS.com - High Integrity Systems also provide a safety |
dflet | 0:1e7b5dd9edb4 | 60 | engineered and independently SIL3 certified version for use in safety and |
dflet | 0:1e7b5dd9edb4 | 61 | mission critical applications that require provable dependability. |
dflet | 0:1e7b5dd9edb4 | 62 | |
dflet | 0:1e7b5dd9edb4 | 63 | 1 tab == 4 spaces! |
dflet | 0:1e7b5dd9edb4 | 64 | */ |
dflet | 0:1e7b5dd9edb4 | 65 | |
dflet | 0:1e7b5dd9edb4 | 66 | #ifndef FREERTOS_CONFIG_H |
dflet | 0:1e7b5dd9edb4 | 67 | #define FREERTOS_CONFIG_H |
dflet | 0:1e7b5dd9edb4 | 68 | |
dflet | 0:1e7b5dd9edb4 | 69 | /*----------------------------------------------------------- |
dflet | 0:1e7b5dd9edb4 | 70 | * Application specific definitions. |
dflet | 0:1e7b5dd9edb4 | 71 | * |
dflet | 0:1e7b5dd9edb4 | 72 | * These definitions should be adjusted for your particular hardware and |
dflet | 0:1e7b5dd9edb4 | 73 | * application requirements. |
dflet | 0:1e7b5dd9edb4 | 74 | * |
dflet | 0:1e7b5dd9edb4 | 75 | * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE |
dflet | 0:1e7b5dd9edb4 | 76 | * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE. |
dflet | 0:1e7b5dd9edb4 | 77 | *----------------------------------------------------------*/ |
dflet | 0:1e7b5dd9edb4 | 78 | |
dflet | 0:1e7b5dd9edb4 | 79 | //#include <stdint.h> |
dflet | 0:1e7b5dd9edb4 | 80 | extern uint32_t SystemCoreClock; |
dflet | 0:1e7b5dd9edb4 | 81 | |
dflet | 0:1e7b5dd9edb4 | 82 | #define configUSE_PREEMPTION 1 |
dflet | 0:1e7b5dd9edb4 | 83 | #define configUSE_IDLE_HOOK 0 |
dflet | 0:1e7b5dd9edb4 | 84 | #define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 5 ) |
dflet | 0:1e7b5dd9edb4 | 85 | #define configUSE_TICK_HOOK 0 |
dflet | 0:1e7b5dd9edb4 | 86 | #define configCPU_CLOCK_HZ ( ( unsigned long ) SystemCoreClock ) |
dflet | 0:1e7b5dd9edb4 | 87 | #define configTICK_RATE_HZ ( ( portTickType ) 1000 ) |
dflet | 0:1e7b5dd9edb4 | 88 | #define configMINIMAL_STACK_SIZE ( ( unsigned short ) 130 ) |
dflet | 0:1e7b5dd9edb4 | 89 | #define configTOTAL_HEAP_SIZE ( ( size_t ) ( 5 * 1024 ) ) |
dflet | 0:1e7b5dd9edb4 | 90 | #define configMAX_TASK_NAME_LEN ( 16 ) |
dflet | 0:1e7b5dd9edb4 | 91 | #define configUSE_TRACE_FACILITY 1 |
dflet | 0:1e7b5dd9edb4 | 92 | #define configUSE_16_BIT_TICKS 0 |
dflet | 0:1e7b5dd9edb4 | 93 | #define configIDLE_SHOULD_YIELD 1//0 |
dflet | 0:1e7b5dd9edb4 | 94 | #define configUSE_MUTEXES 1 |
dflet | 0:1e7b5dd9edb4 | 95 | |
dflet | 0:1e7b5dd9edb4 | 96 | /* Co-routine definitions. */ |
dflet | 0:1e7b5dd9edb4 | 97 | #define configUSE_CO_ROUTINES 0 |
dflet | 0:1e7b5dd9edb4 | 98 | #define configMAX_CO_ROUTINE_PRIORITIES ( 2 ) |
dflet | 0:1e7b5dd9edb4 | 99 | |
dflet | 0:1e7b5dd9edb4 | 100 | #define configUSE_COUNTING_SEMAPHORES 1//0 |
dflet | 0:1e7b5dd9edb4 | 101 | #define configUSE_ALTERNATIVE_API 1//0 |
dflet | 0:1e7b5dd9edb4 | 102 | #define configCHECK_FOR_STACK_OVERFLOW 0 |
dflet | 0:1e7b5dd9edb4 | 103 | #define configUSE_RECURSIVE_MUTEXES 1 |
dflet | 0:1e7b5dd9edb4 | 104 | #define configQUEUE_REGISTRY_SIZE 10 |
dflet | 0:1e7b5dd9edb4 | 105 | #define configGENERATE_RUN_TIME_STATS 0 |
dflet | 0:1e7b5dd9edb4 | 106 | |
dflet | 0:1e7b5dd9edb4 | 107 | /* Timer related defines. */ |
dflet | 0:1e7b5dd9edb4 | 108 | #define configUSE_TIMERS 0 |
dflet | 0:1e7b5dd9edb4 | 109 | #define configTIMER_TASK_PRIORITY 2 |
dflet | 0:1e7b5dd9edb4 | 110 | #define configTIMER_QUEUE_LENGTH 20 |
dflet | 0:1e7b5dd9edb4 | 111 | #define configTIMER_TASK_STACK_DEPTH ( configMINIMAL_STACK_SIZE * 2 ) |
dflet | 0:1e7b5dd9edb4 | 112 | #define configUSE_MALLOC_FAILED_HOOK 0//1 |
dflet | 0:1e7b5dd9edb4 | 113 | #define configENABLE_BACKWARD_COMPATIBILITY 1//0 |
dflet | 0:1e7b5dd9edb4 | 114 | |
dflet | 0:1e7b5dd9edb4 | 115 | /* Set the following definitions to 1 to include the API function, or zero |
dflet | 0:1e7b5dd9edb4 | 116 | to exclude the API function. */ |
dflet | 0:1e7b5dd9edb4 | 117 | |
dflet | 0:1e7b5dd9edb4 | 118 | #define INCLUDE_vTaskPrioritySet 1 |
dflet | 0:1e7b5dd9edb4 | 119 | #define INCLUDE_uxTaskPriorityGet 1 |
dflet | 0:1e7b5dd9edb4 | 120 | #define INCLUDE_vTaskDelete 1 |
dflet | 0:1e7b5dd9edb4 | 121 | #define INCLUDE_vTaskCleanUpResources 1 |
dflet | 0:1e7b5dd9edb4 | 122 | #define INCLUDE_vTaskSuspend 1 |
dflet | 0:1e7b5dd9edb4 | 123 | #define INCLUDE_vTaskDelayUntil 1 |
dflet | 0:1e7b5dd9edb4 | 124 | #define INCLUDE_vTaskDelay 1 |
dflet | 0:1e7b5dd9edb4 | 125 | #define INCLUDE_uxTaskGetStackHighWaterMark 0 |
dflet | 0:1e7b5dd9edb4 | 126 | #define INCLUDE_xTaskGetSchedulerState 1 |
dflet | 0:1e7b5dd9edb4 | 127 | #define INCLUDE_xTimerGetTimerDaemonTaskHandle 0 |
dflet | 0:1e7b5dd9edb4 | 128 | #define INCLUDE_xTaskGetIdleTaskHandle 1 |
dflet | 0:1e7b5dd9edb4 | 129 | #define INCLUDE_pcTaskGetTaskName 1 |
dflet | 0:1e7b5dd9edb4 | 130 | #define INCLUDE_eTaskGetState 1 |
dflet | 0:1e7b5dd9edb4 | 131 | #define INCLUDE_xSemaphoreGetMutexHolder 0 |
dflet | 0:1e7b5dd9edb4 | 132 | |
dflet | 0:1e7b5dd9edb4 | 133 | |
dflet | 0:1e7b5dd9edb4 | 134 | /* Use the system definition, if there is one */ |
dflet | 0:1e7b5dd9edb4 | 135 | #ifdef __NVIC_PRIO_BITS |
dflet | 0:1e7b5dd9edb4 | 136 | #define configPRIO_BITS __NVIC_PRIO_BITS |
dflet | 0:1e7b5dd9edb4 | 137 | #else |
dflet | 0:1e7b5dd9edb4 | 138 | #if (THIS_BOARD == Seeed_Arch_Max) |
dflet | 0:1e7b5dd9edb4 | 139 | #define configPRIO_BITS 4 /* 15 priority levels */ |
dflet | 0:1e7b5dd9edb4 | 140 | #else |
dflet | 0:1e7b5dd9edb4 | 141 | #define configPRIO_BITS 5 /* 32 priority levels */ |
dflet | 0:1e7b5dd9edb4 | 142 | #endif |
dflet | 0:1e7b5dd9edb4 | 143 | #endif |
dflet | 0:1e7b5dd9edb4 | 144 | |
dflet | 0:1e7b5dd9edb4 | 145 | #if (THIS_BOARD == Seeed_Arch_Max) |
dflet | 0:1e7b5dd9edb4 | 146 | |
dflet | 0:1e7b5dd9edb4 | 147 | /* The lowest interrupt priority that can be used in a call to a "set priority" |
dflet | 0:1e7b5dd9edb4 | 148 | function. */ |
dflet | 0:1e7b5dd9edb4 | 149 | #define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 0xf |
dflet | 0:1e7b5dd9edb4 | 150 | |
dflet | 0:1e7b5dd9edb4 | 151 | /* The highest interrupt priority that can be used by any interrupt service |
dflet | 0:1e7b5dd9edb4 | 152 | routine that makes calls to interrupt safe FreeRTOS API functions. DO NOT CALL |
dflet | 0:1e7b5dd9edb4 | 153 | INTERRUPT SAFE FREERTOS API FUNCTIONS FROM ANY INTERRUPT THAT HAS A HIGHER |
dflet | 0:1e7b5dd9edb4 | 154 | PRIORITY THAN THIS! (higher priorities are lower numeric values. */ |
dflet | 0:1e7b5dd9edb4 | 155 | #define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 5 |
dflet | 0:1e7b5dd9edb4 | 156 | |
dflet | 0:1e7b5dd9edb4 | 157 | /* Interrupt priorities used by the kernel port layer itself. These are generic |
dflet | 0:1e7b5dd9edb4 | 158 | to all Cortex-M ports, and do not rely on any particular library functions. */ |
dflet | 0:1e7b5dd9edb4 | 159 | #define configKERNEL_INTERRUPT_PRIORITY ( configLIBRARY_LOWEST_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) ) |
dflet | 0:1e7b5dd9edb4 | 160 | /* !!!! configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to zero !!!! |
dflet | 0:1e7b5dd9edb4 | 161 | See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */ |
dflet | 0:1e7b5dd9edb4 | 162 | #define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) ) |
dflet | 0:1e7b5dd9edb4 | 163 | #else |
dflet | 0:1e7b5dd9edb4 | 164 | |
dflet | 0:1e7b5dd9edb4 | 165 | /* Define to trap errors during development. */ |
dflet | 0:1e7b5dd9edb4 | 166 | //void vAssertCalled( const char *pcFile, unsigned long ulLine ); |
dflet | 0:1e7b5dd9edb4 | 167 | // #define configASSERT( x ) if( x == 0 ) vAssertCalled( __FILE__, __LINE__ ); |
dflet | 0:1e7b5dd9edb4 | 168 | |
dflet | 0:1e7b5dd9edb4 | 169 | /* The lowest priority. */ |
dflet | 0:1e7b5dd9edb4 | 170 | #define configKERNEL_INTERRUPT_PRIORITY ( 31 << (8 - configPRIO_BITS) ) |
dflet | 0:1e7b5dd9edb4 | 171 | /* Priority 5, or 160 as only the top three bits are implemented. */ |
dflet | 0:1e7b5dd9edb4 | 172 | /* !!!! configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to zero !!!! |
dflet | 0:1e7b5dd9edb4 | 173 | See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */ |
dflet | 0:1e7b5dd9edb4 | 174 | #define configMAX_SYSCALL_INTERRUPT_PRIORITY ( 5 << (8 - configPRIO_BITS) ) |
dflet | 0:1e7b5dd9edb4 | 175 | #endif |
dflet | 0:1e7b5dd9edb4 | 176 | |
dflet | 0:1e7b5dd9edb4 | 177 | /* Definitions that map the FreeRTOS port interrupt handlers to their CMSIS |
dflet | 0:1e7b5dd9edb4 | 178 | standard names - or at least those used in the unmodified vector table. */ |
dflet | 0:1e7b5dd9edb4 | 179 | #define vPortSVCHandler SVC_Handler |
dflet | 0:1e7b5dd9edb4 | 180 | #define xPortPendSVHandler PendSV_Handler |
dflet | 0:1e7b5dd9edb4 | 181 | #define xPortSysTickHandler SysTick_Handler |
dflet | 0:1e7b5dd9edb4 | 182 | |
dflet | 0:1e7b5dd9edb4 | 183 | |
dflet | 0:1e7b5dd9edb4 | 184 | #endif /* FREERTOS_CONFIG_H */ |