mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-04-19 21:11:57 -04:00
Update example cmake project path (#851)
* fix build on 64 bit platform * moving sample cmake project to a separate root level dir * moving sample cmake project to a separate root level dir * updating paths for the sample cmake project * rename example folder * use configKERNEL_PROVIDED_STATIC_MEMORY * update comments * update comments * rename folder to examples * fix formatting
This commit is contained in:
parent
fc7aca7ff2
commit
a8650b99a3
|
@ -125,7 +125,7 @@ See the readme file in the ```./portable``` directory for more information.
|
||||||
- The ```./include``` directory contains the real time kernel header files.
|
- The ```./include``` directory contains the real time kernel header files.
|
||||||
|
|
||||||
- The ```./sample_configuration``` directory contains a sample `FreeRTOSConfig.h` to help jumpstart a new project.
|
- The ```./sample_configuration``` directory contains a sample `FreeRTOSConfig.h` to help jumpstart a new project.
|
||||||
See the [FreeRTOSConfig.h](sample_configuration/FreeRTOSConfig.h) file for instructions.
|
See the [FreeRTOSConfig.h](examples/sample_configuration/FreeRTOSConfig.h) file for instructions.
|
||||||
|
|
||||||
### Code Formatting
|
### Code Formatting
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.15)
|
||||||
|
|
||||||
project(example)
|
project(example)
|
||||||
|
|
||||||
set(FREERTOS_KERNEL_PATH "../")
|
set(FREERTOS_KERNEL_PATH "../../")
|
||||||
|
|
||||||
# Add the freertos_config for FreeRTOS-Kernel
|
# Add the freertos_config for FreeRTOS-Kernel
|
||||||
add_library(freertos_config INTERFACE)
|
add_library(freertos_config INTERFACE)
|
||||||
|
@ -13,7 +13,7 @@ target_include_directories(freertos_config
|
||||||
)
|
)
|
||||||
|
|
||||||
# Select the heap port. values between 1-4 will pick a heap.
|
# Select the heap port. values between 1-4 will pick a heap.
|
||||||
# set(FREERTOS_HEAP "4" CACHE STRING "" FORCE)
|
set(FREERTOS_HEAP "4" CACHE STRING "" FORCE)
|
||||||
|
|
||||||
# Select the native compile PORT
|
# Select the native compile PORT
|
||||||
set(FREERTOS_PORT "TEMPLATE" CACHE STRING "" FORCE)
|
set(FREERTOS_PORT "TEMPLATE" CACHE STRING "" FORCE)
|
|
@ -44,12 +44,6 @@
|
||||||
static StaticTask_t exampleTaskTCB;
|
static StaticTask_t exampleTaskTCB;
|
||||||
static StackType_t exampleTaskStack[ configMINIMAL_STACK_SIZE ];
|
static StackType_t exampleTaskStack[ configMINIMAL_STACK_SIZE ];
|
||||||
|
|
||||||
static StaticTask_t xTimerTaskTCB;
|
|
||||||
static StackType_t uxTimerTaskStack[ configTIMER_TASK_STACK_DEPTH ];
|
|
||||||
|
|
||||||
static StaticTask_t xIdleTaskTCB;
|
|
||||||
static StackType_t uxIdleTaskStack[ configMINIMAL_STACK_SIZE ];
|
|
||||||
|
|
||||||
void exampleTask( void * parameters )
|
void exampleTask( void * parameters )
|
||||||
{
|
{
|
||||||
/* Unused parameters. */
|
/* Unused parameters. */
|
||||||
|
@ -91,21 +85,3 @@ void vApplicationStackOverflowHook( TaskHandle_t xTask,
|
||||||
( void ) xTask;
|
( void ) xTask;
|
||||||
( void ) pcTaskName;
|
( void ) pcTaskName;
|
||||||
}
|
}
|
||||||
|
|
||||||
void vApplicationGetTimerTaskMemory( StaticTask_t ** ppxTimerTaskTCBBuffer,
|
|
||||||
StackType_t ** ppxTimerTaskStackBuffer,
|
|
||||||
uint32_t * pulTimerTaskStackSize )
|
|
||||||
{
|
|
||||||
*ppxTimerTaskTCBBuffer = &xTimerTaskTCB;
|
|
||||||
*ppxTimerTaskStackBuffer = uxTimerTaskStack;
|
|
||||||
*pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH;
|
|
||||||
}
|
|
||||||
|
|
||||||
void vApplicationGetIdleTaskMemory( StaticTask_t ** ppxIdleTaskTCBBuffer,
|
|
||||||
StackType_t ** ppxIdleTaskStackBuffer,
|
|
||||||
uint32_t * pulIdleTaskStackSize )
|
|
||||||
{
|
|
||||||
*ppxIdleTaskTCBBuffer = &xIdleTaskTCB;
|
|
||||||
*ppxIdleTaskStackBuffer = uxIdleTaskStack;
|
|
||||||
*pulIdleTaskStackSize = configMINIMAL_STACK_SIZE;
|
|
||||||
}
|
|
|
@ -118,13 +118,21 @@
|
||||||
* human readable name. Includes the NULL terminator. */
|
* human readable name. Includes the NULL terminator. */
|
||||||
#define configMAX_TASK_NAME_LEN 16
|
#define configMAX_TASK_NAME_LEN 16
|
||||||
|
|
||||||
/* The tick count is held in a variable of type TickType_t. Set
|
/* Time is measured in 'ticks' - which is the number of times the tick interrupt
|
||||||
* configUSE_16_BIT_TICKS to 1 to make TickType_t a 16-bit type. Set
|
* has executed since the RTOS kernel was started.
|
||||||
* configUSE_16_BIT_TICKS to 0 to make TickType_t either a 32 or 64-bit type
|
* The tick count is held in a variable of type TickType_t.
|
||||||
* depending on the architecture. Using a 16-bit type can greatly improve
|
*
|
||||||
* efficiency on 8-bit and 16-bit microcontrollers, but at the cost of limiting the
|
* configTICK_TYPE_WIDTH_IN_BITS controls the type (and therefore bit-width) of TickType_t:
|
||||||
* maximum specifiable block time to 0xffff. */
|
*
|
||||||
#define configUSE_16_BIT_TICKS 0
|
* Defining configTICK_TYPE_WIDTH_IN_BITS as TICK_TYPE_WIDTH_16_BITS causes
|
||||||
|
* TickType_t to be defined (typedef'ed) as an unsigned 16-bit type.
|
||||||
|
*
|
||||||
|
* Defining configTICK_TYPE_WIDTH_IN_BITS as TICK_TYPE_WIDTH_32_BITS causes
|
||||||
|
* TickType_t to be defined (typedef'ed) as an unsigned 32-bit type.
|
||||||
|
*
|
||||||
|
* Defining configTICK_TYPE_WIDTH_IN_BITS as TICK_TYPE_WIDTH_64_BITS causes
|
||||||
|
* TickType_t to be defined (typedef'ed) as an unsigned 64-bit type. */
|
||||||
|
#define configTICK_TYPE_WIDTH_IN_BITS TICK_TYPE_WIDTH_64_BITS
|
||||||
|
|
||||||
/* Set configIDLE_SHOULD_YIELD to 1 to have the Idle task yield to an
|
/* Set configIDLE_SHOULD_YIELD to 1 to have the Idle task yield to an
|
||||||
* application task if there is an Idle priority (priority 0) application task that
|
* application task if there is an Idle priority (priority 0) application task that
|
||||||
|
@ -390,6 +398,14 @@
|
||||||
* call into the secure side of an ARMv8-M chip. Not used by any other ports. */
|
* call into the secure side of an ARMv8-M chip. Not used by any other ports. */
|
||||||
#define secureconfigMAX_SECURE_CONTEXTS 5
|
#define secureconfigMAX_SECURE_CONTEXTS 5
|
||||||
|
|
||||||
|
/* Defines the kernel provided implementation of
|
||||||
|
* vApplicationGetIdleTaskMemory() and vApplicationGetTimerTaskMemory()
|
||||||
|
* to provide the memory that is used by the Idle task and Timer task respectively.
|
||||||
|
* The application can provide it's own implementation of
|
||||||
|
* vApplicationGetIdleTaskMemory() and vApplicationGetTimerTaskMemory() by
|
||||||
|
* setting configKERNEL_PROVIDED_STATIC_MEMORY to 0 or leaving it undefined. */
|
||||||
|
#define configKERNEL_PROVIDED_STATIC_MEMORY 1
|
||||||
|
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
/* Definitions that include or exclude functionality. *************************/
|
/* Definitions that include or exclude functionality. *************************/
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
|
@ -38,6 +38,9 @@ typedef unsigned char UBaseType_t;
|
||||||
#elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_32_BITS )
|
#elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_32_BITS )
|
||||||
typedef uint32_t TickType_t;
|
typedef uint32_t TickType_t;
|
||||||
#define portMAX_DELAY ( TickType_t ) 0xffffffffUL
|
#define portMAX_DELAY ( TickType_t ) 0xffffffffUL
|
||||||
|
#elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_64_BITS )
|
||||||
|
typedef uint64_t TickType_t;
|
||||||
|
#define portMAX_DELAY ( TickType_t ) 0xffffffffffffffffULL
|
||||||
#else
|
#else
|
||||||
#error configTICK_TYPE_WIDTH_IN_BITS set to unsupported tick type width.
|
#error configTICK_TYPE_WIDTH_IN_BITS set to unsupported tick type width.
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue