foxBMS
1.0.0
The foxBMS Battery Management System API Documentation
|
Diagnostic module configuration header. More...
Go to the source code of this file.
Data Structures | |
struct | DIAG_DATABASE_SHIM |
struct | DIAG_CH_CFG |
struct | DIAG_DEV |
Typedefs | |
typedef struct DIAG_DATABASE_SHIM | DIAG_DATABASE_SHIM_s |
typedef enum DIAG_ID | DIAG_ID_e |
typedef enum DIAG_EVENT | DIAG_EVENT_e |
typedef enum DIAG_EVALUATE | DIAG_EVALUATE_e |
typedef enum DIAG_IMPACT_LEVEL | DIAG_IMPACT_LEVEL_e |
typedef enum DIAG_RECORDING | DIAG_RECORDING_e |
typedef void | DIAG_CALLBACK_FUNCTION_f(DIAG_ID_e ch_id, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data) |
function type for diag callbacks More... | |
typedef struct DIAG_CH_CFG | DIAG_ID_CFG_s |
typedef struct DIAG_DEV | DIAG_DEV_s |
Functions | |
void | DIAG_UpdateFlags (void) |
update function for diagnosis flags More... | |
Variables | |
const DIAG_DATABASE_SHIM_s | diag_kDatabaseShim |
DIAG_DEV_s | diag_device |
DIAG_ID_CFG_s | DIAG_ID_cfg [DIAG_ID_MAX] |
Diagnostic module configuration header.
BSD 3-Clause License 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:
″This product uses parts of foxBMS®″
″This product includes parts of foxBMS®″
″This product is derived from foxBMS®″
In this header filer are the different diagnosis channel defines assigned to different diagnosis IDs. Furthermore are the diagnosis error log settings be configured here.
Definition in file diag_cfg.h.
#define DIAG_CAN_SENSOR_PRESENT (DIAG_EVALUATION_ENABLED) |
Value that is written into the field that describes whether current sensor diag entries should be generated if it is not present.
Definition at line 235 of file diag_cfg.h.
#define DIAG_CAN_TIMING (DIAG_EVALUATION_ENABLED) |
Value that is written into the field that describes whether CAN timing diag entries should be generated.
Definition at line 224 of file diag_cfg.h.
#define DIAG_DESCRIPTION_LENGTH (40) |
length of the entry DIAG_ID_CFG_s::description
Definition at line 67 of file diag_cfg.h.
#define DIAG_ERROR_CAN_SENSOR_SENSITIVITY (100) |
logging level of CAN errors on the current sensor
Definition at line 104 of file diag_cfg.h.
#define DIAG_ERROR_CAN_TIMING_CC_SENSITIVITY (100) |
logging level of CAN timing errors on the current sensor
Definition at line 103 of file diag_cfg.h.
#define DIAG_ERROR_CAN_TIMING_SENSITIVITY (100) |
logging level of CAN timing errors
Definition at line 102 of file diag_cfg.h.
#define DIAG_ERROR_CONTACTOR_FEEDBACK_SENSITIVITY (20) |
logging level of errors connected with the contactor feedback
Definition at line 107 of file diag_cfg.h.
#define DIAG_ERROR_CURRENT_SENSITIVITY_MOL (500) |
MOL level for event occurrence if over/under current event
Definition at line 96 of file diag_cfg.h.
#define DIAG_ERROR_CURRENT_SENSITIVITY_MSL (500) |
MSL level for event occurrence if over/under current event
Definition at line 92 of file diag_cfg.h.
#define DIAG_ERROR_CURRENT_SENSITIVITY_RSL (500) |
RSL level for event occurrence if over/under current event
Definition at line 94 of file diag_cfg.h.
#define DIAG_ERROR_INTERLOCK_SENSITIVITY (10) |
logging level of interlock
Definition at line 78 of file diag_cfg.h.
#define DIAG_ERROR_LTC_MUX_SENSITIVITY (5) |
logging level of LTC MUX errors
Definition at line 99 of file diag_cfg.h.
#define DIAG_ERROR_LTC_PEC_SENSITIVITY (5) |
logging level of LTC PEC errors
Definition at line 98 of file diag_cfg.h.
#define DIAG_ERROR_LTC_SPI_SENSITIVITY (5) |
logging level of LTC SPI errors
Definition at line 100 of file diag_cfg.h.
#define DIAG_ERROR_SENSITIVITY_FIFTH_EVENT (4) |
logging at first event
Definition at line 71 of file diag_cfg.h.
#define DIAG_ERROR_SENSITIVITY_FIRST_EVENT (0) |
logging at first event
Definition at line 69 of file diag_cfg.h.
#define DIAG_ERROR_SENSITIVITY_HIGH (0) |
logging at first event
Definition at line 74 of file diag_cfg.h.
#define DIAG_ERROR_SENSITIVITY_LOW (10) |
logging at tenth event
Definition at line 76 of file diag_cfg.h.
#define DIAG_ERROR_SENSITIVITY_MID (5) |
logging at fifth event
Definition at line 75 of file diag_cfg.h.
#define DIAG_ERROR_SENSITIVITY_TENTH_EVENT (9) |
logging at tenth event
Definition at line 72 of file diag_cfg.h.
#define DIAG_ERROR_SENSITIVITY_THIRD_EVENT (2) |
logging at first event
Definition at line 70 of file diag_cfg.h.
#define DIAG_ERROR_TEMPERATURE_SENSITIVITY_MOL (500) |
MOL level for event occurrence if over/under temperature event
Definition at line 89 of file diag_cfg.h.
#define DIAG_ERROR_TEMPERATURE_SENSITIVITY_MSL (500) |
MSL level for event occurrence if over/under temperature event
Definition at line 85 of file diag_cfg.h.
#define DIAG_ERROR_TEMPERATURE_SENSITIVITY_RSL (500) |
RSL level for event occurrence if over/under temperature event
Definition at line 87 of file diag_cfg.h.
#define DIAG_ERROR_VOLTAGE_SENSITIVITY_MOL (500) |
MOL level for event occurrence if over/under voltage event
Definition at line 82 of file diag_cfg.h.
#define DIAG_ERROR_VOLTAGE_SENSITIVITY_MSL (500) |
MSL level for event occurrence if over/under voltage event
Definition at line 80 of file diag_cfg.h.
#define DIAG_ERROR_VOLTAGE_SENSITIVITY_RSL (500) |
RSL level for event occurrence if over/under voltage event
Definition at line 81 of file diag_cfg.h.
#define DIAG_MAX_ENTRIES_OF_ERROR (5) |
Maximum number of the same errors that are logged
Definition at line 110 of file diag_cfg.h.
typedef void DIAG_CALLBACK_FUNCTION_f(DIAG_ID_e ch_id, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data) |
function type for diag callbacks
[in] | ch_id | ID of diag entry |
[in] | event | DIAG_EVENT_e |
[in] | kpkDiagShim | shim to the database entries |
[in] | data | data |
Definition at line 253 of file diag_cfg.h.
typedef struct DIAG_DATABASE_SHIM DIAG_DATABASE_SHIM_s |
composite type for storing and passing on the local database table handles
typedef struct DIAG_DEV DIAG_DEV_s |
struct for device Configuration of diag module
typedef enum DIAG_EVALUATE DIAG_EVALUATE_e |
enable or disable the diagnosis handling for an event
typedef enum DIAG_EVENT DIAG_EVENT_e |
diagnosis check result (event)
typedef struct DIAG_CH_CFG DIAG_ID_CFG_s |
Channel configuration of one diag channel
typedef enum DIAG_IMPACT_LEVEL DIAG_IMPACT_LEVEL_e |
impact level of diagnosis event, e.g., influences the event the whole system or only a string
typedef enum DIAG_RECORDING DIAG_RECORDING_e |
diagnosis recording activation
enum DIAG_EVALUATE |
enable or disable the diagnosis handling for an event
Enumerator | |
---|---|
DIAG_EVALUATION_ENABLED | enables evaluation of diagnosis handling |
DIAG_EVALUATION_DISABLED | disables evaluation of diagnosis handling |
Definition at line 207 of file diag_cfg.h.
enum DIAG_EVENT |
diagnosis check result (event)
Enumerator | |
---|---|
DIAG_EVENT_OK | diag channel event OK |
DIAG_EVENT_NOT_OK | diag channel event NOK |
DIAG_EVENT_RESET | reset diag channel eventcounter to 0 |
Definition at line 200 of file diag_cfg.h.
enum DIAG_ID |
list of diag IDs
Definition at line 124 of file diag_cfg.h.
enum DIAG_IMPACT_LEVEL |
impact level of diagnosis event, e.g., influences the event the whole system or only a string
Enumerator | |
---|---|
DIAG_SYSTEM | diag event impact is system related e.g., can timing |
DIAG_STRING | diag event impact is string related e.g., overvoltage in string x |
Definition at line 213 of file diag_cfg.h.
enum DIAG_RECORDING |
diagnosis recording activation
Enumerator | |
---|---|
DIAG_RECORDING_ENABLED | enable diagnosis event recording |
DIAG_RECORDING_DISABLED | disable diagnosis event recording |
Definition at line 241 of file diag_cfg.h.
void DIAG_UpdateFlags | ( | void | ) |
|
extern |
diag device configuration struct
Definition at line 207 of file diag_cfg.c.
|
extern |
variable tracking the state of the diag channels
Definition at line 110 of file diag_cfg.c.
|
extern |
variable for storing and passing on the local database table handles
Definition at line 99 of file diag_cfg.c.