foxBMS - Unit Tests
1.3.0
The foxBMS Unit Tests API Documentation
|
Driver for the LTC monitoring chip. More...
#include "ltc_6813-1_cfg.h"
#include "ltc.h"
#include "HL_spi.h"
#include "HL_system.h"
#include "afe_plausibility.h"
#include "database.h"
#include "diag.h"
#include "io.h"
#include "ltc_pec.h"
#include "os.h"
#include "pex.h"
Go to the source code of this file.
Macros | |
#define | LTC_MAX_SUPPORTED_CELLS (12u) |
#define | TEST_LTC_DEFINE_GET(VARIABLE) |
#define | LTC_PORT_EXPANDER_TI_INPUT_REG_ADR (0x00u) |
#define | LTC_PORT_EXPANDER_TI_OUTPUT_REG_ADR (0x01u) |
#define | LTC_PORT_EXPANDER_TI_CONFIG_REG_ADR (0x03u) |
#define | LTC_ICOM_START (0x60u) |
#define | LTC_ICOM_STOP (0x10u) |
#define | LTC_ICOM_BLANK (0x00u) |
#define | LTC_ICOM_NO_TRANSMIT (0x70u) |
#define | LTC_FCOM_MASTER_ACK (0x00u) |
#define | LTC_FCOM_MASTER_NACK (0x08u) |
#define | LTC_FCOM_MASTER_NACK_STOP (0x09u) |
Functions | |
static void | LTC_SetFirstMeasurementCycleFinished (LTC_STATE_s *ltc_state) |
sets the measurement initialization status. More... | |
static void | LTC_InitializeDatabase (LTC_STATE_s *ltc_state) |
in the database, initializes the fields related to the LTC drivers. More... | |
static void | LTC_SaveBalancingFeedback (LTC_STATE_s *ltc_state, uint16_t *DataBufferSPI_RX, uint8_t stringNumber) |
stores the measured balancing feedback values in the database. More... | |
static void | LTC_GetBalancingControlValues (LTC_STATE_s *ltc_state) |
gets the balancing orders from the database. More... | |
static void | LTC_SaveLastStates (LTC_STATE_s *ltc_state) |
Saves the last state and the last substate. More... | |
static void | LTC_StateTransition (LTC_STATE_s *ltc_state, LTC_STATEMACH_e state, uint8_t substate, uint16_t timer_ms) |
function for setting LTC_Trigger state transitions More... | |
static void | LTC_CondBasedStateTransition (LTC_STATE_s *ltc_state, STD_RETURN_TYPE_e retVal, DIAG_ID_e diagCode, LTC_STATEMACH_e state_ok, uint8_t substate_ok, uint16_t timer_ms_ok, LTC_STATEMACH_e state_nok, uint8_t substate_nok, uint16_t timer_ms_nok) |
condition-based state transition depending on retVal More... | |
static STD_RETURN_TYPE_e | LTC_BalanceControl (LTC_STATE_s *ltc_state, SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength, uint8_t registerSet, uint8_t stringNumber) |
sets the balancing according to the control values read in the database. More... | |
static void | LTC_ResetErrorTable (LTC_STATE_s *ltc_state) |
resets the error table. More... | |
static STD_RETURN_TYPE_e | LTC_Init (SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength) |
initialize the daisy-chain. More... | |
static STD_RETURN_TYPE_e | LTC_StartVoltageMeasurement (SPI_INTERFACE_CONFIG_s *pSpiInterface, LTC_ADCMODE_e adcMode, LTC_ADCMEAS_CHAN_e adcMeasCh) |
tells the LTC daisy-chain to start measuring the voltage on all cells. More... | |
static STD_RETURN_TYPE_e | LTC_StartGpioMeasurement (SPI_INTERFACE_CONFIG_s *pSpiInterface, LTC_ADCMODE_e adcMode, LTC_ADCMEAS_CHAN_e adcMeasCh) |
tells LTC daisy-chain to start measuring the voltage on GPIOS. More... | |
static STD_RETURN_TYPE_e | LTC_StartOpenWireMeasurement (SPI_INTERFACE_CONFIG_s *pSpiInterface, LTC_ADCMODE_e adcMode, uint8_t PUP) |
tells LTC daisy-chain to start measuring the voltage on GPIOS. More... | |
static uint16_t | LTC_GetMeasurementTimeCycle (LTC_ADCMODE_e adcMode, LTC_ADCMEAS_CHAN_e adcMeasCh) |
brief missing More... | |
static void | LTC_SaveRxToVoltageBuffer (LTC_STATE_s *ltc_state, uint16_t *pRxBuff, uint8_t registerSet, uint8_t stringNumber) |
saves the voltage values read from the LTC daisy-chain. More... | |
static void | LTC_SaveRxToGpioBuffer (LTC_STATE_s *ltc_state, uint16_t *pRxBuff, uint8_t registerSet, uint8_t stringNumber) |
saves the GPIO voltage values read from the LTC daisy-chain. More... | |
static STD_RETURN_TYPE_e | LTC_CheckPec (LTC_STATE_s *ltc_state, uint16_t *DataBufferSPI_RX_with_PEC, uint8_t stringNumber) |
checks if the data received from the daisy-chain is not corrupt. More... | |
static STD_RETURN_TYPE_e | LTC_ReadRegister (uint16_t *Command, SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength) |
send command to the LTC daisy-chain and receives data from the LTC daisy-chain. More... | |
static STD_RETURN_TYPE_e | LTC_WriteRegister (uint16_t *Command, SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength) |
sends command and data to the LTC daisy-chain. More... | |
static void | LTC_SetMuxChCommand (uint16_t *pTxBuff, uint8_t mux, uint8_t channel) |
configures the data that will be sent to the LTC daisy-chain to configure multiplexer channels. More... | |
static STD_RETURN_TYPE_e | LTC_SendEepromReadCommand (LTC_STATE_s *ltc_state, SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength, uint8_t step) |
sends data to the LTC daisy-chain to read EEPROM on slaves. More... | |
static void | LTC_SetEepromReadCommand (LTC_STATE_s *ltc_state, uint16_t *pTxBuff, uint8_t step) |
configures the data that will be sent to the LTC daisy-chain to read EEPROM on slaves. More... | |
static void | LTC_EepromSaveReadValue (LTC_STATE_s *ltc_state, uint16_t *pRxBuff) |
saves the read values of the external EEPROMs read from the LTC daisy-chain. More... | |
static STD_RETURN_TYPE_e | LTC_SendEepromWriteCommand (LTC_STATE_s *ltc_state, SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength, uint8_t step) |
sends data to the LTC daisy-chain to write EEPROM on slaves. More... | |
static void | LTC_SetEepromWriteCommand (LTC_STATE_s *ltc_state, uint16_t *pTxBuff, uint8_t step) |
configures the data that will be sent to the LTC daisy-chain to write EEPROM on slaves. More... | |
static STD_RETURN_TYPE_e | LTC_SetMuxChannel (SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength, uint8_t mux, uint8_t channel) |
sends data to the LTC daisy-chain to configure multiplexer channels. More... | |
static STD_RETURN_TYPE_e | LTC_SetPortExpander (LTC_STATE_s *ltc_state, SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength) |
sends data to the LTC daisy-chain to control the user port expander More... | |
static void | LTC_PortExpanderSaveValues (LTC_STATE_s *ltc_state, uint16_t *pRxBuff) |
saves the received values of the external port expander read from the LTC daisy-chain. More... | |
static void | LTC_TempSensSaveTemp (LTC_STATE_s *ltc_state, uint16_t *pRxBuff) |
saves the temperature value of the external temperature sensors read from the LTC daisy-chain. More... | |
static STD_RETURN_TYPE_e | LTC_SetPortExpanderDirectionTi (LTC_STATE_s *ltc_state, SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength, LTC_PORT_EXPANDER_TI_DIRECTION_e direction) |
sends data to the LTC daisy-chain to control the user port expander from TI More... | |
static STD_RETURN_TYPE_e | LTC_SetPortExpanderOutputTi (LTC_STATE_s *ltc_state, SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength) |
sends data to the LTC daisy-chain to control the user port expander from TI More... | |
static STD_RETURN_TYPE_e | LTC_GetPortExpanderInputTi (LTC_STATE_s *ltc_state, SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength, uint8_t step) |
sends data to the LTC daisy-chain to control the user port expander from TI More... | |
static void | LTC_PortExpanderSaveValuesTi (LTC_STATE_s *ltc_state, uint16_t *pTxBuff) |
saves the received values of the external port expander from TI read from the LTC daisy-chain. More... | |
static STD_RETURN_TYPE_e | LTC_I2cClock (SPI_INTERFACE_CONFIG_s *pSpiInterface) |
sends 72 clock pulses to the LTC daisy-chain. More... | |
static STD_RETURN_TYPE_e | LTC_SendI2cCommand (SPI_INTERFACE_CONFIG_s *pSpiInterface, uint16_t *pTxBuff, uint16_t *pRxBuff, uint32_t frameLength, uint16_t *cmd_data) |
sends data to the LTC daisy-chain to communicate via I2C More... | |
static STD_RETURN_TYPE_e | LTC_I2cCheckAck (LTC_STATE_s *ltc_state, uint16_t *pRxBuff, uint8_t mux, uint8_t stringNumber) |
checks if the multiplexers acknowledged transmission. More... | |
static void | LTC_SaveMuxMeasurement (LTC_STATE_s *ltc_state, uint16_t *pRxBuff, LTC_MUX_CH_CFG_s *muxseqptr, uint8_t stringNumber) |
saves the multiplexer values read from the LTC daisy-chain. More... | |
static uint32_t | LTC_GetSpiClock (SPI_INTERFACE_CONFIG_s *pSpiInterface) |
gets the frequency of the SPI clock. More... | |
static void | LTC_SetTransferTimes (LTC_STATE_s *ltc_state) |
sets the transfer time needed to receive/send data with the LTC daisy-chain. More... | |
static LTC_RETURN_TYPE_e | LTC_CheckStateRequest (LTC_STATE_s *ltc_state, LTC_REQUEST_s statereq) |
checks the state requests that are made. More... | |
void | LTC_SaveVoltages (LTC_STATE_s *ltc_state, uint8_t stringNumber) |
stores the measured voltages in the database. More... | |
void | LTC_SaveTemperatures (LTC_STATE_s *ltc_state, uint8_t stringNumber) |
stores the measured temperatures and the measured multiplexer feedbacks in the database. More... | |
void | LTC_SaveAllGpioMeasurement (LTC_STATE_s *ltc_state) |
stores the measured GPIOs in the database. More... | |
uint8_t | LTC_CheckReEntrance (LTC_STATE_s *ltc_state) |
re-entrance check of LTC state machine trigger function More... | |
LTC_REQUEST_s | LTC_GetStateRequest (LTC_STATE_s *ltc_state) |
gets the current state request. More... | |
LTC_STATEMACH_e | LTC_GetState (LTC_STATE_s *ltc_state) |
gets the current state. More... | |
LTC_REQUEST_s | LTC_TransferStateRequest (LTC_STATE_s *ltc_state, uint8_t *pBusIDptr, LTC_ADCMODE_e *pAdcModeptr, LTC_ADCMEAS_CHAN_e *pAdcMeasChptr) |
transfers the current state request to the state machine. More... | |
LTC_RETURN_TYPE_e | LTC_SetStateRequest (LTC_STATE_s *ltc_state, LTC_REQUEST_s statereq) |
sets the current state request of the state variable ltc_state. More... | |
void | LTC_Trigger (LTC_STATE_s *ltc_state) |
trigger function for the LTC driver state machine. More... | |
bool | LTC_IsFirstMeasurementCycleFinished (LTC_STATE_s *ltc_state) |
gets the measurement initialization status. More... | |
void | LTC_InitializeMonitoringPin (void) |
Sets the transceiver pins to enable LTC6820 IC. More... | |
uint8_t | TEST_LTC_CheckReEntrance (LTC_STATE_s *ltc_state) |
void | TEST_LTC_SetFirstMeasurementCycleFinished (LTC_STATE_s *ltc_state) |
TEST_LTC_DEFINE_GET (ltc_cmdWRCFG) | |
TEST_LTC_DEFINE_GET (ltc_cmdWRCFG2) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDCFG) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDCVA) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDCVB) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDCVC) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDCVD) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDCVE) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDCVF) | |
TEST_LTC_DEFINE_GET (ltc_cmdWRCOMM) | |
TEST_LTC_DEFINE_GET (ltc_cmdSTCOMM) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDCOMM) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDAUXA) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDAUXB) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDAUXC) | |
TEST_LTC_DEFINE_GET (ltc_cmdRDAUXD) | |
TEST_LTC_DEFINE_GET (ltc_cmdADCV_normal_DCP0) | |
TEST_LTC_DEFINE_GET (ltc_cmdADCV_normal_DCP1) | |
TEST_LTC_DEFINE_GET (ltc_cmdADCV_filtered_DCP0) | |
TEST_LTC_DEFINE_GET (ltc_cmdADCV_filtered_DCP1) | |
TEST_LTC_DEFINE_GET (ltc_cmdADCV_fast_DCP0) | |
TEST_LTC_DEFINE_GET (ltc_cmdADCV_fast_DCP1) | |
TEST_LTC_DEFINE_GET (ltc_cmdADCV_fast_DCP0_twocells) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_normal_GPIO1) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_filtered_GPIO1) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_fast_GPIO1) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_normal_GPIO2) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_filtered_GPIO2) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_fast_GPIO2) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_normal_GPIO3) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_filtered_GPIO3) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_fast_GPIO3) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_normal_ALLGPIOS) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_filtered_ALLGPIOS) | |
TEST_LTC_DEFINE_GET (ltc_cmdADAX_fast_ALLGPIOS) | |
TEST_LTC_DEFINE_GET (ltc_BC_cmdADOW_PUP_normal_DCP0) | |
TEST_LTC_DEFINE_GET (ltc_BC_cmdADOW_PDOWN_normal_DCP0) | |
TEST_LTC_DEFINE_GET (ltc_BC_cmdADOW_PUP_filtered_DCP0) | |
TEST_LTC_DEFINE_GET (ltc_BC_cmdADOW_PDOWN_filtered_DCP0) | |
Variables | |
static uint16_t | ltc_used_cells_index [BS_NR_OF_STRINGS] = {0} |
static LTC_OPENWIRE_DETECTION_s | ltc_openWireDetection = {0} |
static LTC_ERRORTABLE_s | ltc_errorTable = {0} |
static const AFE_PLAUSIBILITY_VALUES_s | ltc_plausibleCellVoltages681x |
LTC_STATE_s | ltc_stateBase |
static uint16_t | ltc_cmdWRCFG [4] = {0x00, 0x01, 0x3D, 0x6E} |
static uint16_t | ltc_cmdWRCFG2 [4] = {0x00, 0x24, 0xB1, 0x9E} |
static uint16_t | ltc_cmdRDCFG [4] = {0x00, 0x02, 0x2B, 0x0A} |
static uint16_t | ltc_cmdRDCVA [4] = {0x00, 0x04, 0x07, 0xC2} |
static uint16_t | ltc_cmdRDCVB [4] = {0x00, 0x06, 0x9A, 0x94} |
static uint16_t | ltc_cmdRDCVC [4] = {0x00, 0x08, 0x5E, 0x52} |
static uint16_t | ltc_cmdRDCVD [4] = {0x00, 0x0A, 0xC3, 0x04} |
static uint16_t | ltc_cmdRDCVE [4] = {0x00, 0x09, 0xD5, 0x60} |
static uint16_t | ltc_cmdRDCVF [4] = {0x00, 0x0B, 0x48, 0x36} |
static uint16_t | ltc_cmdWRCOMM [4] = {0x07, 0x21, 0x24, 0xB2} |
static uint16_t | ltc_cmdSTCOMM [4] = {0x07, 0x23, 0xB9, 0xE4} |
static uint16_t | ltc_cmdRDCOMM [4] = {0x07, 0x22, 0x32, 0xD6} |
static uint16_t | ltc_cmdRDAUXA [4] = {0x00, 0x0C, 0xEF, 0xCC} |
static uint16_t | ltc_cmdRDAUXB [4] = {0x00, 0x0E, 0x72, 0x9A} |
static uint16_t | ltc_cmdRDAUXC [4] = {0x00, 0x0D, 0x64, 0xFE} |
static uint16_t | ltc_cmdRDAUXD [4] = {0x00, 0x0F, 0xF9, 0xA8} |
static uint16_t | ltc_I2CcmdTempSens0 [6] |
static uint16_t | ltc_I2CcmdTempSens1 [6] |
static uint16_t | ltc_I2CcmdPortExpander1 [6] |
static uint16_t | ltc_cmdADCV_normal_DCP0 [4] |
static uint16_t | ltc_cmdADCV_normal_DCP1 [4] |
static uint16_t | ltc_cmdADCV_filtered_DCP0 [4] |
static uint16_t | ltc_cmdADCV_filtered_DCP1 [4] |
static uint16_t | ltc_cmdADCV_fast_DCP0 [4] |
static uint16_t | ltc_cmdADCV_fast_DCP1 [4] |
static uint16_t | ltc_cmdADCV_fast_DCP0_twocells [4] |
static uint16_t | ltc_cmdADAX_normal_GPIO1 [4] = {0x05, 0x61, 0x58, 0x92} |
static uint16_t | ltc_cmdADAX_filtered_GPIO1 [4] = {0x05, 0xE1, 0x1C, 0xB4} |
static uint16_t | ltc_cmdADAX_fast_GPIO1 [4] = {0x04, 0xE1, 0x94, 0xF8} |
static uint16_t | ltc_cmdADAX_normal_GPIO2 [4] = {0x05, 0x62, 0x4E, 0xF6} |
static uint16_t | ltc_cmdADAX_filtered_GPIO2 [4] = {0x05, 0xE2, 0x0A, 0xD0} |
static uint16_t | ltc_cmdADAX_fast_GPIO2 [4] = {0x04, 0xE2, 0x82, 0x9C} |
static uint16_t | ltc_cmdADAX_normal_GPIO3 [4] = {0x05, 0x63, 0xC5, 0xC4} |
static uint16_t | ltc_cmdADAX_filtered_GPIO3 [4] = {0x05, 0xE3, 0x81, 0xE2} |
static uint16_t | ltc_cmdADAX_fast_GPIO3 [4] = {0x04, 0xE3, 0x09, 0xAE} |
static uint16_t | ltc_cmdADAX_normal_ALLGPIOS [4] = {0x05, 0x60, 0xD3, 0xA0} |
static uint16_t | ltc_cmdADAX_filtered_ALLGPIOS [4] |
static uint16_t | ltc_cmdADAX_fast_ALLGPIOS [4] = {0x04, 0xE0, 0x1F, 0xCA} |
static uint16_t | ltc_BC_cmdADOW_PUP_normal_DCP0 [4] |
static uint16_t | ltc_BC_cmdADOW_PDOWN_normal_DCP0 [4] |
static uint16_t | ltc_BC_cmdADOW_PUP_filtered_DCP0 [4] |
static uint16_t | ltc_BC_cmdADOW_PDOWN_filtered_DCP0 [4] |
uint16_t | ltc_RxPecBuffer [LTC_N_BYTES_FOR_DATA_TRANSMISSION] = {0} |
uint16_t | ltc_TxPecBuffer [LTC_N_BYTES_FOR_DATA_TRANSMISSION] = {0} |
static DATA_BLOCK_CELL_VOLTAGE_s | ltc_cellvoltage = {.header.uniqueId = DATA_BLOCK_ID_CELL_VOLTAGE_BASE} |
static DATA_BLOCK_CELL_TEMPERATURE_s | ltc_celltemperature = {.header.uniqueId = DATA_BLOCK_ID_CELL_TEMPERATURE_BASE} |
static DATA_BLOCK_BALANCING_FEEDBACK_s | ltc_balancing_feedback |
static DATA_BLOCK_BALANCING_CONTROL_s | ltc_balancing_control = {.header.uniqueId = DATA_BLOCK_ID_BALANCING_CONTROL} |
static DATA_BLOCK_SLAVE_CONTROL_s | ltc_slave_control = {.header.uniqueId = DATA_BLOCK_ID_SLAVE_CONTROL} |
static DATA_BLOCK_ALL_GPIO_VOLTAGES_s | ltc_allgpiovoltage = {.header.uniqueId = DATA_BLOCK_ID_ALL_GPIO_VOLTAGES_BASE} |
static DATA_BLOCK_OPEN_WIRE_s | ltc_openwire = {.header.uniqueId = DATA_BLOCK_ID_OPEN_WIRE_BASE} |
Driver for the LTC monitoring chip.
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 ltc_6813-1.c.
#define LTC_FCOM_MASTER_ACK (0x00u) |
LTC COMM definitions
Definition at line 91 of file ltc_6813-1.c.
#define LTC_FCOM_MASTER_NACK (0x08u) |
LTC COMM definitions
Definition at line 92 of file ltc_6813-1.c.
#define LTC_FCOM_MASTER_NACK_STOP (0x09u) |
LTC COMM definitions
Definition at line 93 of file ltc_6813-1.c.
#define LTC_ICOM_BLANK (0x00u) |
LTC COMM definitions
Definition at line 89 of file ltc_6813-1.c.
#define LTC_ICOM_NO_TRANSMIT (0x70u) |
LTC COMM definitions
Definition at line 90 of file ltc_6813-1.c.
#define LTC_ICOM_START (0x60u) |
LTC COMM definitions
Definition at line 87 of file ltc_6813-1.c.
#define LTC_ICOM_STOP (0x10u) |
LTC COMM definitions
Definition at line 88 of file ltc_6813-1.c.
#define LTC_MAX_SUPPORTED_CELLS (12u) |
maximum number of supported cells
Definition at line 97 of file ltc_6813-1.c.
#define LTC_PORT_EXPANDER_TI_CONFIG_REG_ADR (0x03u) |
TI port expander register addresses
Definition at line 80 of file ltc_6813-1.c.
#define LTC_PORT_EXPANDER_TI_INPUT_REG_ADR (0x00u) |
TI port expander register addresses
Definition at line 78 of file ltc_6813-1.c.
#define LTC_PORT_EXPANDER_TI_OUTPUT_REG_ADR (0x01u) |
TI port expander register addresses
Definition at line 79 of file ltc_6813-1.c.
#define TEST_LTC_DEFINE_GET | ( | VARIABLE | ) |
this define is used for creating the declaration of a function for variable extraction
Definition at line 4670 of file ltc_6813-1.c.
|
static |
sets the balancing according to the control values read in the database.
To set balancing for the cells, the corresponding bits have to be written in the configuration register. The LTC driver only executes the balancing orders written by the BMS in the database.
ltc_state | state of the ltc state machine |
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
registerSet | register Set, 0: cells 1 to 12 (WRCFG), 1: cells 13 to 15/18 (WRCFG2) |
stringNumber | string addressed |
Definition at line 3390 of file ltc_6813-1.c.
|
static |
checks if the data received from the daisy-chain is not corrupt.
This function computes the PEC (CRC) from the data received by the daisy-chain. It compares it with the PEC sent by the LTCs. If there are errors, the array LTC_ErrorTable is updated to locate the LTCs in daisy-chain that transmitted corrupt data.
ltc_state | state of the ltc state machine |
DataBufferSPI_RX_with_PEC | data obtained from the SPI transmission |
stringNumber | string addressed |
Definition at line 3795 of file ltc_6813-1.c.
uint8_t LTC_CheckReEntrance | ( | LTC_STATE_s * | ltc_state | ) |
re-entrance check of LTC state machine trigger function
This function is not re-entrant and should only be called time- or event-triggered. It increments the triggerentry counter from the state variable ltc_state. It should never be called by two different processes, so if it is the case, triggerentry should never be higher than 0 when this function is called.
ltc_state | state of the ltc state machine |
Definition at line 717 of file ltc_6813-1.c.
|
static |
checks the state requests that are made.
This function checks the validity of the state requests. The results of the checked is returned immediately.
ltc_state | state of the ltc state machine |
statereq | state request to be checked |
Definition at line 4598 of file ltc_6813-1.c.
|
static |
condition-based state transition depending on retVal
If retVal is STD_OK, after timer_ms_ok is elapsed the LTC statemachine will transition into state_ok and substate_ok, otherwise after timer_ms_nok the statemachine will transition to state_nok and substate_nok. Depending on value of retVal the corresponding diagnosis entry will be called.
ltc_state | state of the ltc state machine |
retVal | condition to determine if statemachine will transition into ok or nok states |
diagCode | symbolic IDs for diagnosis entry, called with DIAG_EVENT_OK if retVal is STD_OK, DIAG_EVENT_NOT_OK otherwise |
state_ok | state to transition into if retVal is STD_OK |
substate_ok | substate to transition into if retVal is STD_OK |
timer_ms_ok | transition into state_ok, substate_ok after timer_ms_ok elapsed |
state_nok | state to transition into if retVal is STD_NOT_OK |
substate_nok | substate to transition into if retVal is STD_NOT_OK |
timer_ms_nok | transition into state_nok, substate_nok after timer_ms_nok elapsed |
Definition at line 545 of file ltc_6813-1.c.
|
static |
saves the read values of the external EEPROMs read from the LTC daisy-chain.
ltc_state | state of the ltc state machine |
pRxBuff | receive buffer |
Definition at line 4059 of file ltc_6813-1.c.
|
static |
gets the balancing orders from the database.
This function gets the balancing control from the database. Balancing control is set by the BMS. The LTC driver only executes the balancing orders.
ltc_state | state of the ltc state machine |
Definition at line 700 of file ltc_6813-1.c.
|
static |
brief missing
Gets the measurement time needed by the LTC chip, depending on the measurement mode and the number of channels. For all cell voltages or all 5 GPIOS, the measurement time is the same. For 2 cell voltages or 1 GPIO, the measurement time is the same. As a consequence, this function is used for cell voltage and for GPIO measurement.
adcMode | LTC ADCmeasurement mode (fast, normal or filtered) |
adcMeasCh | number of channels measured for GPIOS (one at a time for multiplexers or all five GPIOs) or number of cell voltage measured (2 cells or all cells) |
Definition at line 3583 of file ltc_6813-1.c.
|
static |
sends data to the LTC daisy-chain to control the user port expander from TI
This function sends a control byte to the register of the user port expander from TI
ltc_state | state of the ltc state machine |
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
step | first or second stage of read process (0 or 1) |
Definition at line 4418 of file ltc_6813-1.c.
|
static |
gets the frequency of the SPI clock.
This function reads the configuration from the SPI handle directly.
pSpiInterface | pointer to SPI configuration |
Definition at line 4520 of file ltc_6813-1.c.
LTC_STATEMACH_e LTC_GetState | ( | LTC_STATE_s * | ltc_state | ) |
gets the current state.
This function is used in the functioning of the LTC state machine.
ltc_state | state of the ltc state machine |
Definition at line 742 of file ltc_6813-1.c.
LTC_REQUEST_s LTC_GetStateRequest | ( | LTC_STATE_s * | ltc_state | ) |
gets the current state request.
This function is used in the functioning of the LTC state machine.
ltc_state | state of the ltc state machine |
Definition at line 731 of file ltc_6813-1.c.
|
static |
checks if the multiplexers acknowledged transmission.
The RDCOMM command can be used to read the answer of the multiplexers to a I2C transmission. This function determines if the communication with the multiplexers was successful or not. The array error table is updated to locate the multiplexers that did not acknowledge transmission.
ltc_state | state of the ltc state machine |
pRxBuff | receive buffer |
mux | multiplexer to be addressed (multiplexer ID) |
stringNumber | string addressed |
Definition at line 3274 of file ltc_6813-1.c.
|
static |
sends 72 clock pulses to the LTC daisy-chain.
This function is used for the communication with the multiplexers via I2C on the GPIOs. It send the command STCOMM to the LTC daisy-chain.
pSpiInterface | pointer to SPI configuration |
Definition at line 4493 of file ltc_6813-1.c.
|
static |
initialize the daisy-chain.
To initialize the LTC6804 daisy-chain, a dummy byte (0x00) is sent.
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
Definition at line 3329 of file ltc_6813-1.c.
|
static |
in the database, initializes the fields related to the LTC drivers.
This function loops through all the LTC-related data fields in the database and sets them to 0. It should be called in the initialization or re-initialization routine of the LTC driver.
ltc_state | state of the ltc state machine |
Definition at line 447 of file ltc_6813-1.c.
void LTC_InitializeMonitoringPin | ( | void | ) |
Sets the transceiver pins to enable LTC6820 IC.
Definition at line 4639 of file ltc_6813-1.c.
bool LTC_IsFirstMeasurementCycleFinished | ( | LTC_STATE_s * | ltc_state | ) |
gets the measurement initialization status.
ltc_state | state of the ltc state machine |
Definition at line 4620 of file ltc_6813-1.c.
|
static |
saves the received values of the external port expander read from the LTC daisy-chain.
This function saves the received data byte from the external port expander
ltc_state | state of the ltc state machine |
pRxBuff | receive buffer |
Definition at line 4299 of file ltc_6813-1.c.
|
static |
saves the received values of the external port expander from TI read from the LTC daisy-chain.
This function saves the received data byte from the external port expander from TI
ltc_state | state of the ltc state machine |
pTxBuff | transmit buffer |
Definition at line 4470 of file ltc_6813-1.c.
|
static |
send command to the LTC daisy-chain and receives data from the LTC daisy-chain.
This is the core function to receive data from the LTC6804 daisy-chain. A 2 byte command is sent with the corresponding PEC. Example: read configuration register (RDCFG). Only command has to be set, the function calculates the PEC automatically. The data send is: 2 bytes (COMMAND) 2 bytes (PEC) The data received is: 6 bytes (LTC1) 2 bytes (PEC) + 6 bytes (LTC2) 2 bytes (PEC) + 6 bytes (LTC3) 2 bytes (PEC) + ... + 6 bytes (LTC{LTC_N_LTC}) 2 bytes (PEC)
The function does not check the PECs. This has to be done elsewhere.
Command | command sent to the daisy-chain |
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
Definition at line 3857 of file ltc_6813-1.c.
|
static |
resets the error table.
This function should be called during initialization or before starting a new measurement cycle
ltc_state | state of the ltc state machine |
Definition at line 3557 of file ltc_6813-1.c.
void LTC_SaveAllGpioMeasurement | ( | LTC_STATE_s * | ltc_state | ) |
stores the measured GPIOs in the database.
This function loops through the data of all modules in the LTC daisy-chain that are stored in the ltc_allgpiovoltage buffer and writes them in the database. At each write iteration, the variable named "state" and related to voltages in the database is incremented.
ltc_state | state of the ltc state machine |
Definition at line 664 of file ltc_6813-1.c.
|
static |
stores the measured balancing feedback values in the database.
This function stores the global balancing feedback value measured on GPIO3 of the LTC into the database
ltc_state | state of the ltc state machine |
DataBufferSPI_RX | receive buffer of the SPI interface |
stringNumber | string addressed |
Definition at line 679 of file ltc_6813-1.c.
|
static |
Saves the last state and the last substate.
ltc_state | state of the ltc state machine |
Definition at line 508 of file ltc_6813-1.c.
|
static |
saves the multiplexer values read from the LTC daisy-chain.
After a voltage measurement was initiated on GPIO 1 to read the currently selected multiplexer voltage, the results is read via SPI from the daisy-chain. This function is called to store the result from the transmission in a buffer.
ltc_state | state of the ltc state machine |
pRxBuff | receive buffer |
muxseqptr | pointer to the multiplexer sequence, which configures the currently selected multiplexer ID and channel |
stringNumber | string addressed |
Definition at line 2942 of file ltc_6813-1.c.
|
static |
saves the GPIO voltage values read from the LTC daisy-chain.
After a voltage measurement was initiated to measure the voltages on all GPIOs, the result is read via SPI from the daisy-chain. In order to read the result of all GPIO measurements, it is necessary to read auxiliary register A and B. Only one register can be read at a time. This function is called to store the result from the transmission in a buffer.
ltc_state | state of the ltc state machine |
pRxBuff | receive buffer |
registerSet | voltage register that was read (auxiliary register A, B, C or D) |
stringNumber | string addressed |
Definition at line 3131 of file ltc_6813-1.c.
|
static |
saves the voltage values read from the LTC daisy-chain.
After a voltage measurement was initiated to measure the voltages of the cells, the result is read via SPI from the daisy-chain. There are 6 register to read _(A,B,C,D,E,F) to get all cell voltages. Only one register can be read at a time. This function is called to store the result from the transmission in a buffer.
ltc_state | state of the ltc state machine |
pRxBuff | receive buffer |
registerSet | voltage register that was read (voltage register A,B,C,D,E or F) |
stringNumber | string addressed |
Definition at line 3021 of file ltc_6813-1.c.
void LTC_SaveTemperatures | ( | LTC_STATE_s * | ltc_state, |
uint8_t | stringNumber | ||
) |
stores the measured temperatures and the measured multiplexer feedbacks in the database.
This function loops through the temperature and multiplexer feedback data of all modules in the LTC daisy-chain that are stored in the LTC_MultiplexerVoltages buffer and writes them in the database. At each write iteration, the variables named "state" and related to temperatures and multiplexer feedbacks in the database are incremented.
ltc_state | state of the ltc state machine |
stringNumber | string addressed |
Definition at line 626 of file ltc_6813-1.c.
void LTC_SaveVoltages | ( | LTC_STATE_s * | ltc_state, |
uint8_t | stringNumber | ||
) |
stores the measured voltages in the database.
This function loops through the data of all modules in the LTC daisy-chain that are stored in the LTC_CellVoltages buffer and writes them in the database. At each write iteration, the variable named "state" and related to voltages in the database is incremented.
ltc_state | state of the ltc state machine |
stringNumber | string addressed |
Definition at line 564 of file ltc_6813-1.c.
|
static |
sends data to the LTC daisy-chain to read EEPROM on slaves.
ltc_state | state of the ltc state machine |
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
step | first or second stage of read process (0 or 1) |
Definition at line 3996 of file ltc_6813-1.c.
|
static |
sends data to the LTC daisy-chain to write EEPROM on slaves.
ltc_state | state of the ltc state machine |
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
step | first or second stage of read process (0 or 1) |
Definition at line 4086 of file ltc_6813-1.c.
|
static |
sends data to the LTC daisy-chain to communicate via I2C
This function initiates an I2C signal sent by the LTC6804 on the slave boards
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
cmd_data | command data to be sent |
Definition at line 4193 of file ltc_6813-1.c.
|
static |
configures the data that will be sent to the LTC daisy-chain to read EEPROM on slaves.
ltc_state | state of the ltc state machine |
pTxBuff | transmit buffer |
step | first or second stage of read process (0 or 1) |
Definition at line 4020 of file ltc_6813-1.c.
|
static |
configures the data that will be sent to the LTC daisy-chain to write EEPROM on slaves.
ltc_state | state of the ltc state machine |
pTxBuff | transmit buffer |
step | first or second stage of read process (0 or 1) |
Definition at line 4110 of file ltc_6813-1.c.
|
static |
sets the measurement initialization status.
Definition at line 4633 of file ltc_6813-1.c.
|
static |
sends data to the LTC daisy-chain to configure multiplexer channels.
This function calls the function LTC_SetMuxChCommand() to set the data.
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
mux | multiplexer ID to be configured (0,1,2 or 3) |
channel | multiplexer channel to be configured (0 to 7) |
Definition at line 4164 of file ltc_6813-1.c.
|
static |
configures the data that will be sent to the LTC daisy-chain to configure multiplexer channels.
This function does not sent the data to the multiplexer daisy-chain. This is done by the function LTC_SetMuxChannel(), which calls LTC_SetMuxChCommand()..
pTxBuff | transmit buffer |
mux | multiplexer ID to be configured (0,1,2 or 3) |
channel | multiplexer channel to be configured (0 to 7) |
Definition at line 3952 of file ltc_6813-1.c.
|
static |
sends data to the LTC daisy-chain to control the user port expander
This function sends a control byte to the register of the user port expander
ltc_state | state of the ltc state machine |
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
Definition at line 4255 of file ltc_6813-1.c.
|
static |
sends data to the LTC daisy-chain to control the user port expander from TI
This function sends a control byte to the register of the user port expander from TI
ltc_state | state of the ltc state machine |
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
direction | use port expander pin as input or output |
Definition at line 4325 of file ltc_6813-1.c.
|
static |
sends data to the LTC daisy-chain to control the user port expander from TI
This function sends a control byte to the register of the user port expander from TI
ltc_state | state of the ltc state machine |
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
Definition at line 4371 of file ltc_6813-1.c.
LTC_RETURN_TYPE_e LTC_SetStateRequest | ( | LTC_STATE_s * | ltc_state, |
LTC_REQUEST_s | statereq | ||
) |
sets the current state request of the state variable ltc_state.
This function is used to make a state request to the state machine,e.g, start voltage measurement, read result of voltage measurement, re-initialization It calls LTC_CheckStateRequest() to check if the request is valid. The state request is rejected if is not valid. The result of the check is returned immediately, so that the requester can act in case it made a non-valid state request.
ltc_state | state of the ltc state machine |
statereq | state request to set |
Definition at line 780 of file ltc_6813-1.c.
|
static |
sets the transfer time needed to receive/send data with the LTC daisy-chain.
This function gets the clock frequency and uses the number of LTCs in the daisy-chain.
ltc_state | state of the ltc state machine |
Definition at line 4561 of file ltc_6813-1.c.
|
static |
tells LTC daisy-chain to start measuring the voltage on GPIOS.
This function sends an instruction to the daisy-chain via SPI to start the measurement.
pSpiInterface | pointer to SPI configuration |
adcMode | LTC ADCmeasurement mode (fast, normal or filtered) |
adcMeasCh | number of channels measured for GPIOS (one at a time, typically when multiplexers are used, or all five GPIOs) |
Definition at line 3686 of file ltc_6813-1.c.
|
static |
tells LTC daisy-chain to start measuring the voltage on GPIOS.
This function sends an instruction to the daisy-chain via SPI to start the measurement.
pSpiInterface | pointer to SPI configuration |
adcMode | LTC ADCmeasurement mode (fast, normal or filtered) |
PUP | pull-up bit for pull-up or pull-down current (0: pull-down, 1: pull-up) |
Definition at line 3753 of file ltc_6813-1.c.
|
static |
tells the LTC daisy-chain to start measuring the voltage on all cells.
This function sends an instruction to the daisy-chain via SPI, in order to start voltage measurement for all cells.
pSpiInterface | pointer to SPI configuration |
adcMode | LTC ADCmeasurement mode (fast, normal or filtered) |
adcMeasCh | number of cell voltage measured (2 cells or all cells) |
Definition at line 3640 of file ltc_6813-1.c.
|
static |
function for setting LTC_Trigger state transitions
ltc_state | state of the ltc state machine |
state | state to transition into |
substate | substate to transition into |
timer_ms | transition into state, substate after timer elapsed |
Definition at line 521 of file ltc_6813-1.c.
|
static |
saves the temperature value of the external temperature sensors read from the LTC daisy-chain.
This function saves the temperature value received from the external temperature sensors
ltc_state | state of the ltc state machine |
pRxBuff | receive buffer |
Definition at line 4227 of file ltc_6813-1.c.
LTC_REQUEST_s LTC_TransferStateRequest | ( | LTC_STATE_s * | ltc_state, |
uint8_t * | pBusIDptr, | ||
LTC_ADCMODE_e * | pAdcModeptr, | ||
LTC_ADCMEAS_CHAN_e * | pAdcMeasChptr | ||
) |
transfers the current state request to the state machine.
This function takes the current state request from ltc_state and transfers it to the state machine. It resets the value from ltc_state to LTC_STATE_NO_REQUEST
ltc_state | state of the ltc state machine |
pBusIDptr | bus ID, main or backup (deprecated) |
pAdcModeptr | LTC ADCmeasurement mode (fast, normal or filtered) |
pAdcMeasChptr | number of channels measured for GPIOS (one at a time for multiplexers or all five GPIOs) |
Definition at line 760 of file ltc_6813-1.c.
void LTC_Trigger | ( | LTC_STATE_s * | ltc_state | ) |
trigger function for the LTC driver state machine.
This function contains the sequence of events in the LTC state machine. It must be called time-triggered, every 1ms.
Definition at line 794 of file ltc_6813-1.c.
|
static |
sends command and data to the LTC daisy-chain.
This is the core function to transmit data to the LTC6804 daisy-chain. The data sent is: COMMAND + 6 bytes (LTC1) + 6 bytes (LTC2) + 6 bytes (LTC3) + ... + 6 bytes (LTC{LTC_N_LTC}) A 2 byte command is sent with the corresponding PEC. Example: write configuration register (WRCFG). THe command has to be set and then the function calculates the PEC automatically. The function calculates the needed PEC to send the data to the daisy-chain. The sent data has the format: 2 byte-COMMAND (2 bytes PEC) + 6 bytes (LTC1) (2 bytes PEC) + 6 bytes (LTC2) (2 bytes PEC) + 6 bytes (LTC3) (2 bytes PEC) + ... + 6 bytes (LTC{LTC_N_LTC}) (2 bytes PEC)
The function returns 0. The only way to check if the transmission was successful is to read the results of the write operation. (example: read configuration register after writing to it)
Command | command sent to the daisy-chain |
pSpiInterface | pointer to SPI configuration |
pTxBuff | transmit buffer |
pRxBuff | receive buffer |
frameLength | number of words to transmit |
Definition at line 3906 of file ltc_6813-1.c.
uint8_t TEST_LTC_CheckReEntrance | ( | LTC_STATE_s * | ltc_state | ) |
TEST_LTC_DEFINE_GET | ( | ltc_BC_cmdADOW_PDOWN_filtered_DCP0 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_BC_cmdADOW_PDOWN_normal_DCP0 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_BC_cmdADOW_PUP_filtered_DCP0 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_BC_cmdADOW_PUP_normal_DCP0 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_fast_ALLGPIOS | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_fast_GPIO1 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_fast_GPIO2 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_fast_GPIO3 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_filtered_ALLGPIOS | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_filtered_GPIO1 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_filtered_GPIO2 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_filtered_GPIO3 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_normal_ALLGPIOS | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_normal_GPIO1 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_normal_GPIO2 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADAX_normal_GPIO3 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADCV_fast_DCP0 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADCV_fast_DCP0_twocells | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADCV_fast_DCP1 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADCV_filtered_DCP0 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADCV_filtered_DCP1 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADCV_normal_DCP0 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdADCV_normal_DCP1 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDAUXA | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDAUXB | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDAUXC | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDAUXD | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDCFG | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDCOMM | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDCVA | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDCVB | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDCVC | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDCVD | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDCVE | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdRDCVF | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdSTCOMM | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdWRCFG | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdWRCFG2 | ) |
TEST_LTC_DEFINE_GET | ( | ltc_cmdWRCOMM | ) |
void TEST_LTC_SetFirstMeasurementCycleFinished | ( | LTC_STATE_s * | ltc_state | ) |
|
static |
local copies of database tables
Definition at line 122 of file ltc_6813-1.c.
|
static |
local copies of database tables
Definition at line 120 of file ltc_6813-1.c.
|
static |
local copies of database tables
Definition at line 118 of file ltc_6813-1.c.
|
static |
Broadcast, Pull-down current, All cells, filtered mode, discharge not permitted (DCP=0)
Definition at line 279 of file ltc_6813-1.c.
|
static |
Broadcast, Pull-down current, All cells, normal mode, discharge not permitted (DCP=0)
Definition at line 269 of file ltc_6813-1.c.
|
static |
Broadcast, Pull-up current, All cells, filtered mode, discharge not permitted (DCP=0)
Definition at line 274 of file ltc_6813-1.c.
|
static |
Broadcast, Pull-up current, All cells, normal mode, discharge not permitted (DCP=0)
Definition at line 264 of file ltc_6813-1.c.
|
static |
local copies of database tables
Definition at line 117 of file ltc_6813-1.c.
|
static |
local copies of database tables
Definition at line 116 of file ltc_6813-1.c.
|
static |
All channels, fast mode
Definition at line 261 of file ltc_6813-1.c.
|
static |
Single channel, GPIO 1, fast mode
Definition at line 245 of file ltc_6813-1.c.
|
static |
Single channel, GPIO 2, fast mode
Definition at line 248 of file ltc_6813-1.c.
|
static |
Single channel, GPIO 3, fast mode
Definition at line 251 of file ltc_6813-1.c.
|
static |
All channels, filtered mode
Definition at line 259 of file ltc_6813-1.c.
|
static |
Single channel, GPIO 1, filtered mode
Definition at line 244 of file ltc_6813-1.c.
|
static |
Single channel, GPIO 2, filtered mode
Definition at line 247 of file ltc_6813-1.c.
|
static |
Single channel, GPIO 3, filtered mode
Definition at line 250 of file ltc_6813-1.c.
|
static |
All channels, normal mode
Definition at line 258 of file ltc_6813-1.c.
|
static |
Single channel, GPIO 1, normal mode
Definition at line 243 of file ltc_6813-1.c.
|
static |
Single channel, GPIO 2, normal mode
Definition at line 246 of file ltc_6813-1.c.
|
static |
Single channel, GPIO 3, normal mode
Definition at line 249 of file ltc_6813-1.c.
|
static |
All cells, fast mode, discharge not permitted (DCP=0)
Definition at line 235 of file ltc_6813-1.c.
|
static |
Two cells (1 and 7), fast mode, discharge not permitted (DCP=0)
Definition at line 239 of file ltc_6813-1.c.
|
static |
All cells, fast mode, discharge permitted (DCP=1)
Definition at line 237 of file ltc_6813-1.c.
|
static |
All cells, filtered mode, discharge not permitted (DCP=0)
Definition at line 231 of file ltc_6813-1.c.
|
static |
All cells, filtered mode, discharge permitted (DCP=1)
Definition at line 233 of file ltc_6813-1.c.
|
static |
All cells, normal mode, discharge not permitted (DCP=0)
Definition at line 227 of file ltc_6813-1.c.
|
static |
All cells, normal mode, discharge permitted (DCP=1)
Definition at line 229 of file ltc_6813-1.c.
|
static |
Definition at line 202 of file ltc_6813-1.c.
|
static |
Definition at line 203 of file ltc_6813-1.c.
|
static |
Definition at line 204 of file ltc_6813-1.c.
|
static |
Definition at line 205 of file ltc_6813-1.c.
|
static |
Definition at line 191 of file ltc_6813-1.c.
|
static |
Definition at line 201 of file ltc_6813-1.c.
|
static |
Definition at line 193 of file ltc_6813-1.c.
|
static |
Definition at line 194 of file ltc_6813-1.c.
|
static |
Definition at line 195 of file ltc_6813-1.c.
|
static |
Definition at line 196 of file ltc_6813-1.c.
|
static |
Definition at line 197 of file ltc_6813-1.c.
|
static |
Definition at line 198 of file ltc_6813-1.c.
|
static |
Definition at line 200 of file ltc_6813-1.c.
|
static |
Definition at line 189 of file ltc_6813-1.c.
|
static |
Definition at line 190 of file ltc_6813-1.c.
|
static |
Definition at line 199 of file ltc_6813-1.c.
|
static |
init in LTC_ResetErrorTable-function
Definition at line 127 of file ltc_6813-1.c.
|
static |
reads one data byte from the port expander
Definition at line 223 of file ltc_6813-1.c.
|
static |
sets the internal data pointer of the temperature sensor (address 0x48) to 0x00
Definition at line 213 of file ltc_6813-1.c.
|
static |
reads two data bytes from the temperature sensor
Definition at line 220 of file ltc_6813-1.c.
|
static |
local copies of database tables
Definition at line 123 of file ltc_6813-1.c.
|
static |
stores information on the detected open wires locally
Definition at line 126 of file ltc_6813-1.c.
|
static |
local definition of plausible cell voltage values for the LTC6813 (and similar)
Definition at line 130 of file ltc_6813-1.c.
uint16_t ltc_RxPecBuffer[LTC_N_BYTES_FOR_DATA_TRANSMISSION] = {0} |
PEC buffer for RX and TX
Definition at line 106 of file ltc_6813-1.c.
|
static |
local copies of database tables
Definition at line 121 of file ltc_6813-1.c.
LTC_STATE_s ltc_stateBase |
This variable contains the internal state of the LTC state machine.
Definition at line 137 of file ltc_6813-1.c.
uint16_t ltc_TxPecBuffer[LTC_N_BYTES_FOR_DATA_TRANSMISSION] = {0} |
PEC buffer for RX and TX
Definition at line 107 of file ltc_6813-1.c.
|
static |
index of used cells
Definition at line 113 of file ltc_6813-1.c.