foxBMS - Unit Tests
1.5.0
The foxBMS Unit Tests API Documentation
|
Task configuration header. More...
Go to the source code of this file.
Macros | |
#define | FTSK_TASK_ENGINE_STACK_SIZE_IN_BYTES (1024u) |
Stack size of engine task. More... | |
#define | FTSK_TASK_ENGINE_PRIORITY (OS_PRIORITY_REAL_TIME) |
Phase of engine task. More... | |
#define | FTSK_TASK_ENGINE_PHASE (0u) |
Phase of engine task. More... | |
#define | FTSK_TASK_ENGINE_CYCLE_TIME (1u) |
Cycle time of engine task. More... | |
#define | FTSK_TASK_ENGINE_MAXIMUM_JITTER (1u) |
Maximum allowed jitter of engine task. More... | |
#define | FTSK_TASK_ENGINE_PV_PARAMETERS (NULL_PTR) |
pvParameters of the engine task More... | |
#define | FTSK_TASK_CYCLIC_1MS_STACK_SIZE_IN_BYTES (1024u) |
Stack size of cyclic 1 ms task. More... | |
#define | FTSK_TASK_CYCLIC_1MS_PRIORITY (OS_PRIORITY_VERY_HIGH) |
Priority of cyclic 1ms task. More... | |
#define | FTSK_TASK_CYCLIC_1MS_PHASE (0u) |
Phase of cyclic 1ms task. More... | |
#define | FTSK_TASK_CYCLIC_1MS_CYCLE_TIME (1u) |
Cycle time of 1ms task. More... | |
#define | FTSK_TASK_CYCLIC_1MS_MAXIMUM_JITTER (1u) |
Maximum allowed jitter of 1ms task. More... | |
#define | FTSK_TASK_CYCLIC_1MS_PV_PARAMETERS (NULL_PTR) |
pvParameters of the 1ms task More... | |
#define | FTSK_TASK_CYCLIC_10MS_STACK_SIZE_IN_BYTES (5120u) |
Stack size of cyclic 10 ms task. More... | |
#define | FTSK_TASK_CYCLIC_10MS_PRIORITY (OS_PRIORITY_HIGH) |
Priority of cyclic 10 ms task. More... | |
#define | FTSK_TASK_CYCLIC_10MS_PHASE (2u) |
Phase of cyclic 10 ms task. More... | |
#define | FTSK_TASK_CYCLIC_10MS_CYCLE_TIME (10u) |
Cycle time of 10 ms task. More... | |
#define | FTSK_TASK_CYCLIC_10MS_MAXIMUM_JITTER (2u) |
Maximum allowed jitter of 10ms task. More... | |
#define | FTSK_TASK_CYCLIC_10MS_PV_PARAMETERS (NULL_PTR) |
pvParameters of the 10ms task More... | |
#define | FTSK_TASK_CYCLIC_100MS_STACK_SIZE_IN_BYTES (1024u) |
Stack size of cyclic 100 ms task. More... | |
#define | FTSK_TASK_CYCLIC_100MS_PRIORITY (OS_PRIORITY_ABOVE_NORMAL) |
Priority of cyclic 100 ms task. More... | |
#define | FTSK_TASK_CYCLIC_100MS_PHASE (56u) |
Phase of cyclic 100 ms task. More... | |
#define | FTSK_TASK_CYCLIC_100MS_CYCLE_TIME (100u) |
Cycle time of 100ms task. More... | |
#define | FTSK_TASK_CYCLIC_100MS_MAXIMUM_JITTER (5u) |
Maximum allowed jitter of 100ms task. More... | |
#define | FTSK_TASK_CYCLIC_100MS_PV_PARAMETERS (NULL_PTR) |
pvParameters of the 100ms task More... | |
#define | FTSK_TASK_CYCLIC_ALGORITHM_100MS_STACK_SIZE_IN_BYTES (1024u) |
Stack size of cyclic 100 ms task for algorithms. More... | |
#define | FTSK_TASK_CYCLIC_ALGORITHM_100MS_PRIORITY (OS_PRIORITY_NORMAL) |
Priority of cyclic 100 ms task for algorithms. More... | |
#define | FTSK_TASK_CYCLIC_ALGORITHM_100MS_PHASE (64u) |
Phase of cyclic 100 ms task for algorithms. More... | |
#define | FTSK_TASK_CYCLIC_ALGORITHM_100MS_CYCLE_TIME (100u) |
Cycle time of 100ms task for algorithms. More... | |
#define | FTSK_TASK_CYCLIC_ALGORITHM_100MS_MAXIMUM_JITTER (5u) |
Maximum allowed jitter of 100ms task for algorithms. More... | |
#define | FTSK_TASK_CYCLIC_ALGORITHM_100MS_PV_PARAMETERS (NULL_PTR) |
pvParameters of the 100ms task for algorithms More... | |
#define | FTSK_TASK_I2C_STACK_SIZE_IN_BYTES (2048u / 4u) |
Stack size of continuously running task for I2C. More... | |
#define | FTSK_TASK_I2C_PRIORITY (FTSK_TASK_CYCLIC_10MS_PRIORITY) |
Priority of continuously running task for I2C. More... | |
#define | FTSK_TASK_I2C_PHASE (0u) |
Phase of continuously running task for I2C. More... | |
#define | FTSK_TASK_I2C_CYCLE_TIME (0u) |
Cycle time of continuously running task for I2C. More... | |
#define | FTSK_TASK_AFE_MAXIMUM_JITTER (5u) |
Maximum allowed jitter of continuously running task for I2C. More... | |
#define | FTSK_TASK_I2C_PV_PARAMETERS (NULL_PTR) |
pvParameters of the continuously running task for I2C More... | |
#define | FTSK_TASK_AFE_STACK_SIZE_IN_BYTES (2048u / 4u) |
Stack size of continuously running task for AFEs. More... | |
#define | FTSK_TASK_AFE_PRIORITY (OS_PRIORITY_ABOVE_HIGH) |
Priority of continuously running task for AFEs. More... | |
#define | FTSK_TASK_AFE_PHASE (0u) |
Phase of continuously running task for AFEs. More... | |
#define | FTSK_TASK_AFE_CYCLE_TIME (0u) |
Cycle time of continuously running task for AFEs. More... | |
#define | FTSK_TASK_AFE_MAXIMUM_JITTER (5u) |
Maximum allowed jitter of continuously running task for I2C. More... | |
#define | FTSK_TASK_AFE_PV_PARAMETERS (NULL_PTR) |
pvParameters of the continuously running task for AFEs More... | |
Functions | |
void | FTSK_InitializeUserCodeEngine (void) |
Initializes the database. More... | |
void | FTSK_RunUserCodeEngine (void) |
Engine task for the database and the system monitoring module. More... | |
void | FTSK_InitializeUserCodePreCyclicTasks (void) |
Initialization function before all tasks started. More... | |
void | FTSK_RunUserCodeCyclic1ms (void) |
Cyclic 1 ms task. More... | |
void | FTSK_RunUserCodeCyclic10ms (void) |
Cyclic 10 ms task. More... | |
void | FTSK_RunUserCodeCyclic100ms (void) |
Cyclic 100 ms task. More... | |
void | FTSK_RunUserCodeCyclicAlgorithm100ms (void) |
Cyclic 100 ms task for algorithms. More... | |
void | FTSK_RunUserCodeI2c (void) |
Continuously running task for I2C. More... | |
void | FTSK_RunUserCodeAfe (void) |
Continuously running task for AFEs. More... | |
void | FTSK_RunUserCodeIdle (void) |
Idle task. More... | |
Variables | |
OS_TASK_DEFINITION_s | ftsk_taskDefinitionEngine |
Task configuration of the engine task. More... | |
OS_TASK_DEFINITION_s | ftsk_taskDefinitionCyclic1ms |
Task configuration of the cyclic 1 ms task. More... | |
OS_TASK_DEFINITION_s | ftsk_taskDefinitionCyclic10ms |
Task configuration of the cyclic 10 ms task. More... | |
OS_TASK_DEFINITION_s | ftsk_taskDefinitionCyclic100ms |
Task configuration of the cyclic 100 ms task. More... | |
OS_TASK_DEFINITION_s | ftsk_taskDefinitionCyclicAlgorithm100ms |
Task configuration of the cyclic 100 ms task for algorithms. More... | |
OS_TASK_DEFINITION_s | ftsk_taskDefinitionI2c |
Task configuration of the continuously running task for MCU I2C communication. More... | |
OS_TASK_DEFINITION_s | ftsk_taskDefinitionAfe |
Task configuration of the continuously running task for AFEs. More... | |
TaskHandle_t | ftsk_taskHandleI2c |
Definition of task handles. More... | |
OS_TASK_HANDLE | ftsk_taskHandleAfe |
Definition of task handles. More... | |
Task configuration header.
SPDX-License-Identifier: BSD-3-Clause
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
We kindly request you to use one or more of the following phrases to refer to foxBMS in your hardware, software, documentation or advertising materials:
TODO
Definition in file ftask_cfg.h.
#define FTSK_TASK_AFE_CYCLE_TIME (0u) |
Cycle time of continuously running task for AFEs.
Definition at line 183 of file ftask_cfg.h.
#define FTSK_TASK_AFE_MAXIMUM_JITTER (5u) |
Maximum allowed jitter of continuously running task for I2C.
Maximum allowed jitter of continuously running task for AFEs.
Definition at line 186 of file ftask_cfg.h.
#define FTSK_TASK_AFE_MAXIMUM_JITTER (5u) |
Maximum allowed jitter of continuously running task for I2C.
Maximum allowed jitter of continuously running task for AFEs.
Definition at line 186 of file ftask_cfg.h.
#define FTSK_TASK_AFE_PHASE (0u) |
Phase of continuously running task for AFEs.
Definition at line 180 of file ftask_cfg.h.
#define FTSK_TASK_AFE_PRIORITY (OS_PRIORITY_ABOVE_HIGH) |
Priority of continuously running task for AFEs.
Definition at line 177 of file ftask_cfg.h.
#define FTSK_TASK_AFE_PV_PARAMETERS (NULL_PTR) |
pvParameters of the continuously running task for AFEs
Definition at line 189 of file ftask_cfg.h.
#define FTSK_TASK_AFE_STACK_SIZE_IN_BYTES (2048u / 4u) |
Stack size of continuously running task for AFEs.
Definition at line 174 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_100MS_CYCLE_TIME (100u) |
Cycle time of 100ms task.
Definition at line 129 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_100MS_MAXIMUM_JITTER (5u) |
Maximum allowed jitter of 100ms task.
Definition at line 132 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_100MS_PHASE (56u) |
Phase of cyclic 100 ms task.
Definition at line 126 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_100MS_PRIORITY (OS_PRIORITY_ABOVE_NORMAL) |
Priority of cyclic 100 ms task.
Definition at line 123 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_100MS_PV_PARAMETERS (NULL_PTR) |
pvParameters of the 100ms task
Definition at line 135 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_100MS_STACK_SIZE_IN_BYTES (1024u) |
Stack size of cyclic 100 ms task.
Definition at line 120 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_10MS_CYCLE_TIME (10u) |
Cycle time of 10 ms task.
Definition at line 111 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_10MS_MAXIMUM_JITTER (2u) |
Maximum allowed jitter of 10ms task.
Definition at line 114 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_10MS_PHASE (2u) |
Phase of cyclic 10 ms task.
Definition at line 108 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_10MS_PRIORITY (OS_PRIORITY_HIGH) |
Priority of cyclic 10 ms task.
Definition at line 105 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_10MS_PV_PARAMETERS (NULL_PTR) |
pvParameters of the 10ms task
Definition at line 117 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_10MS_STACK_SIZE_IN_BYTES (5120u) |
Stack size of cyclic 10 ms task.
Definition at line 102 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_1MS_CYCLE_TIME (1u) |
Cycle time of 1ms task.
Definition at line 93 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_1MS_MAXIMUM_JITTER (1u) |
Maximum allowed jitter of 1ms task.
Definition at line 96 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_1MS_PHASE (0u) |
Phase of cyclic 1ms task.
Definition at line 90 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_1MS_PRIORITY (OS_PRIORITY_VERY_HIGH) |
Priority of cyclic 1ms task.
Definition at line 87 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_1MS_PV_PARAMETERS (NULL_PTR) |
pvParameters of the 1ms task
Definition at line 99 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_1MS_STACK_SIZE_IN_BYTES (1024u) |
Stack size of cyclic 1 ms task.
Definition at line 84 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_ALGORITHM_100MS_CYCLE_TIME (100u) |
Cycle time of 100ms task for algorithms.
Definition at line 147 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_ALGORITHM_100MS_MAXIMUM_JITTER (5u) |
Maximum allowed jitter of 100ms task for algorithms.
Definition at line 150 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_ALGORITHM_100MS_PHASE (64u) |
Phase of cyclic 100 ms task for algorithms.
Definition at line 144 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_ALGORITHM_100MS_PRIORITY (OS_PRIORITY_NORMAL) |
Priority of cyclic 100 ms task for algorithms.
Definition at line 141 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_ALGORITHM_100MS_PV_PARAMETERS (NULL_PTR) |
pvParameters of the 100ms task for algorithms
Definition at line 153 of file ftask_cfg.h.
#define FTSK_TASK_CYCLIC_ALGORITHM_100MS_STACK_SIZE_IN_BYTES (1024u) |
Stack size of cyclic 100 ms task for algorithms.
Definition at line 138 of file ftask_cfg.h.
#define FTSK_TASK_ENGINE_CYCLE_TIME (1u) |
Cycle time of engine task.
Definition at line 75 of file ftask_cfg.h.
#define FTSK_TASK_ENGINE_MAXIMUM_JITTER (1u) |
Maximum allowed jitter of engine task.
Definition at line 78 of file ftask_cfg.h.
#define FTSK_TASK_ENGINE_PHASE (0u) |
Phase of engine task.
Definition at line 72 of file ftask_cfg.h.
#define FTSK_TASK_ENGINE_PRIORITY (OS_PRIORITY_REAL_TIME) |
Phase of engine task.
Definition at line 69 of file ftask_cfg.h.
#define FTSK_TASK_ENGINE_PV_PARAMETERS (NULL_PTR) |
pvParameters of the engine task
Definition at line 81 of file ftask_cfg.h.
#define FTSK_TASK_ENGINE_STACK_SIZE_IN_BYTES (1024u) |
Stack size of engine task.
Definition at line 66 of file ftask_cfg.h.
#define FTSK_TASK_I2C_CYCLE_TIME (0u) |
Cycle time of continuously running task for I2C.
Definition at line 165 of file ftask_cfg.h.
#define FTSK_TASK_I2C_PHASE (0u) |
Phase of continuously running task for I2C.
Definition at line 162 of file ftask_cfg.h.
#define FTSK_TASK_I2C_PRIORITY (FTSK_TASK_CYCLIC_10MS_PRIORITY) |
Priority of continuously running task for I2C.
Definition at line 159 of file ftask_cfg.h.
#define FTSK_TASK_I2C_PV_PARAMETERS (NULL_PTR) |
pvParameters of the continuously running task for I2C
Definition at line 171 of file ftask_cfg.h.
#define FTSK_TASK_I2C_STACK_SIZE_IN_BYTES (2048u / 4u) |
Stack size of continuously running task for I2C.
Definition at line 156 of file ftask_cfg.h.
void FTSK_InitializeUserCodeEngine | ( | void | ) |
Initializes the database.
Start up after scheduler starts
Definition at line 157 of file ftask_cfg.c.
void FTSK_InitializeUserCodePreCyclicTasks | ( | void | ) |
Initialization function before all tasks started.
This function is called after the scheduler started but before any cyclic task runs. Here modules get initialized that are not used during the startup process.
Definition at line 195 of file ftask_cfg.c.
void FTSK_RunUserCodeAfe | ( | void | ) |
Continuously running task for AFEs.
Implements the communications with AFEs without state machine.
Definition at line 303 of file ftask_cfg.c.
void FTSK_RunUserCodeCyclic100ms | ( | void | ) |
Cyclic 100 ms task.
TODO
Perform SOC and SOE calculations only every 1s. Not suited if analog integration of current sensor is NOT used. Manual integration of current requires a higher frequency.
Definition at line 265 of file ftask_cfg.c.
void FTSK_RunUserCodeCyclic10ms | ( | void | ) |
Cyclic 10 ms task.
TODO
Definition at line 239 of file ftask_cfg.c.
void FTSK_RunUserCodeCyclic1ms | ( | void | ) |
Cyclic 1 ms task.
TODO
Definition at line 227 of file ftask_cfg.c.
void FTSK_RunUserCodeCyclicAlgorithm100ms | ( | void | ) |
Cyclic 100 ms task for algorithms.
TODO
Definition at line 285 of file ftask_cfg.c.
void FTSK_RunUserCodeEngine | ( | void | ) |
Engine task for the database and the system monitoring module.
Start up after scheduler start. First task to be run, all other tasks only starts when this task has started
Definition at line 186 of file ftask_cfg.c.
void FTSK_RunUserCodeI2c | ( | void | ) |
Continuously running task for I2C.
Implements the MCU communication over I2C
Definition at line 294 of file ftask_cfg.c.
void FTSK_RunUserCodeIdle | ( | void | ) |
Idle task.
Called by vApplicationIdleHook() if configUSE_IDLE_HOOK in FreeRTOSConfig.h is enabled. If you do not need this hook, you can disable it in the FreeRTOS configuration.
Definition at line 310 of file ftask_cfg.c.
|
extern |
Task configuration of the continuously running task for AFEs.
Continuously running task for AFEs
Definition at line 145 of file ftask_cfg.c.
|
extern |
Task configuration of the cyclic 100 ms task.
Cyclic 100 ms task
Definition at line 127 of file ftask_cfg.c.
|
extern |
Task configuration of the cyclic 10 ms task.
Cyclic 10 ms task
Definition at line 121 of file ftask_cfg.c.
|
extern |
Task configuration of the cyclic 1 ms task.
Cyclic 1 ms task
Definition at line 115 of file ftask_cfg.c.
|
extern |
Task configuration of the cyclic 100 ms task for algorithms.
Cyclic 100 ms task for algorithms
Definition at line 133 of file ftask_cfg.c.
|
extern |
Task configuration of the engine task.
Task for database and system monitoring
Task configuration of the engine task.
Task is not delayed after the scheduler starts. This task must have the highest priority.
Definition at line 109 of file ftask_cfg.c.
|
extern |
Task configuration of the continuously running task for MCU I2C communication.
Continuously running task for MCU I2C communication
Definition at line 139 of file ftask_cfg.c.
|
extern |
Definition of task handles.
Definition of task handles.
Definition at line 105 of file ftask_freertos.c.
|
extern |
Definition of task handles.
Definition at line 106 of file ftask_freertos.c.