foxBMS
1.6.0
The foxBMS Battery Management System API Documentation
|
Task configuration. More...
#include "ftask_cfg.h"
#include "HL_gio.h"
#include "HL_het.h"
#include "adc.h"
#include "algorithm.h"
#include "bal.h"
#include "bms.h"
#include "can.h"
#include "contactor.h"
#include "database.h"
#include "diag.h"
#include "dma.h"
#include "fram.h"
#include "htsensor.h"
#include "i2c.h"
#include "imd.h"
#include "interlock.h"
#include "led.h"
#include "meas.h"
#include "pex.h"
#include "redundancy.h"
#include "rtc.h"
#include "sbc.h"
#include "sof_trapezoid.h"
#include "spi.h"
#include "sps.h"
#include "state_estimation.h"
#include "sys.h"
#include "sys_mon.h"
#include <stdint.h>
Go to the source code of this file.
Macros | |
#define | TASK_10MS_COUNTER_FOR_50MS (5u) |
#define | TASK_100MS_COUNTER_FOR_1S (10u) |
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 |
Definition 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... | |
Task configuration.
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:
Definition in file ftask_cfg.c.
#define TASK_100MS_COUNTER_FOR_1S (10u) |
counter value for 1s in 100ms task
Definition at line 96 of file ftask_cfg.c.
#define TASK_10MS_COUNTER_FOR_50MS (5u) |
counter value for 50ms in 10ms task
Definition at line 93 of file ftask_cfg.c.
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 193 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 301 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 263 of file ftask_cfg.c.
void FTSK_RunUserCodeCyclic10ms | ( | void | ) |
Cyclic 10 ms task.
TODO
Definition at line 237 of file ftask_cfg.c.
void FTSK_RunUserCodeCyclic1ms | ( | void | ) |
Cyclic 1 ms task.
TODO
Definition at line 225 of file ftask_cfg.c.
void FTSK_RunUserCodeCyclicAlgorithm100ms | ( | void | ) |
Cyclic 100 ms task for algorithms.
TODO
Definition at line 283 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 184 of file ftask_cfg.c.
void FTSK_RunUserCodeI2c | ( | void | ) |
Continuously running task for I2C.
Implements the MCU communication over I2C
Definition at line 292 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 308 of file ftask_cfg.c.
OS_TASK_DEFINITION_s ftsk_taskDefinitionAfe |
Task configuration of the continuously running task for AFEs.
Continuously running task for AFEs
Definition at line 145 of file ftask_cfg.c.
OS_TASK_DEFINITION_s ftsk_taskDefinitionCyclic100ms |
Task configuration of the cyclic 100 ms task.
Cyclic 100 ms task
Definition at line 127 of file ftask_cfg.c.
OS_TASK_DEFINITION_s ftsk_taskDefinitionCyclic10ms |
Task configuration of the cyclic 10 ms task.
Cyclic 10 ms task
Definition at line 121 of file ftask_cfg.c.
OS_TASK_DEFINITION_s ftsk_taskDefinitionCyclic1ms |
Task configuration of the cyclic 1 ms task.
Cyclic 1 ms task
Definition at line 115 of file ftask_cfg.c.
OS_TASK_DEFINITION_s ftsk_taskDefinitionCyclicAlgorithm100ms |
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.
OS_TASK_DEFINITION_s ftsk_taskDefinitionEngine |
Definition of the engine task.
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.
OS_TASK_DEFINITION_s ftsk_taskDefinitionI2c |
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.