| Linduino 1.3.0 Linear Technology Arduino-Compatible Demonstration Board

Functions
LTC68031.cpp File Reference
Battery Management System (BMS) » LTC6803-1: Multicell Battery Monitor

Library for LTC6803-1 Multicell Battery Monitor. More...

## Detailed Description

Library for LTC6803-1 Multicell Battery Monitor.

Definition in file LTC68031.cpp.

Go to the source code of this file.

## Functions
void | LTC6803_initialize ()
| Initializes the SPI port. More...
void | LTC6803_wrcfg (uint8_t total_ic, uint8_t config[][6])
| Function that writes configuration of LTC6803-1/-3. More...
int8_t | LTC6803_rdcfg (uint8_t total_ic, uint8_t r_config[][7])
| Function that reads configuration of LTC6803-1/-3. More...
void | LTC6803_stcvad ()
| Function to start Cell Voltage measurement. More...
void | LTC6803_sttmpad ()
| Function to start Temp channel voltage measurement. More...
int8_t | LTC6803_rdtmp (uint8_t total_ic, uint16_t temp_codes[][3])
| Function that reads Temp Voltage registers. More...
uint8_t | LTC6803_rdcv (uint8_t total_ic, uint16_t cell_codes[][12])
| Function that reads Cell Voltage registers. More...
uint8_t | pec8_calc (uint8_t len, uint8_t *data)
| Function that calculates PEC byte. More...
void | spi_write_array (uint8_t len, uint8_t data[])
void | spi_write_read (uint8_t tx_Data[], uint8_t tx_len, uint8_t *rx_data, uint8_t rx_len)

## Function Documentation

## ◆ LTC6803_initialize()

void LTC6803_initialize | ( |  | ) |

Initializes the SPI port.

Returns
  void

Definition at line 79 of file LTC68031.cpp.

## ◆ LTC6803_rdcfg()

int8_t LTC6803_rdcfg | ( | uint8_t | total_ic,
|  | uint8_t | r_config[][7]
| ) |  |

Function that reads configuration of LTC6803-1/-3.

Function that reads configuration of LTC6803-2/-4.

Returns
  This function will return a 0 if there is no PEC error and will return -1 if there is a PEC error

Parameters

  total_ic | total_ic number of LTC6803 ICs in stack
  r_config | The Function will put the read config register data into this array

Definition at line 126 of file LTC68031.cpp.

## ◆ LTC6803_rdcv()

uint8_t LTC6803_rdcv | ( | uint8_t | total_ic,
|  | uint16_t | cell_codes[][12]
| ) |  |

Function that reads Cell Voltage registers.

Returns
  This function will return a 0 if there is no PEC error and will return -1 if there is a PEC error

Parameters

  total_ic | total_ic number of LTC6803 ICs in stack
  cell_codes | The Function will put the parsed measured cell voltages into this array

Definition at line 246 of file LTC68031.cpp.

## ◆ LTC6803_rdtmp()

int8_t LTC6803_rdtmp | ( | uint8_t | total_ic,
|  | uint16_t | temp_codes[][3]
| ) |  |

Function that reads Temp Voltage registers.

Returns
  This function will return a 0 if there is no PEC error and will return -1 if there is a PEC error

Parameters

  total_ic | total_ic number of LTC6803 ICs in stack
  temp_codes | The Function will put the parsed measured Temp voltages into this array

Definition at line 195 of file LTC68031.cpp.

## ◆ LTC6803_stcvad()

void LTC6803_stcvad | ( |  | ) |

Function to start Cell Voltage measurement.

Returns
  void

Definition at line 174 of file LTC68031.cpp.

## ◆ LTC6803_sttmpad()

void LTC6803_sttmpad | ( |  | ) |

Function to start Temp channel voltage measurement.

Returns
  void

Definition at line 184 of file LTC68031.cpp.

## ◆ LTC6803_wrcfg()

void LTC6803_wrcfg | ( | uint8_t | total_ic,
|  | uint8_t | config[][6]
| ) |  |

Function that writes configuration of LTC6803-1/-3.

Function that writes configuration of LTC6803-2/-4.

Returns
  void

Parameters

  total_ic | total_ic number of LTC6803 ICs in stack
  config | The function will write the 6803 CFGR register with data in the config array

Definition at line 90 of file LTC68031.cpp.

## ◆ pec8_calc()

uint8_t pec8_calc | ( | uint8_t | len,
|  | uint8_t * | data
| ) |  |

Function that calculates PEC byte.

Returns
  The calculated CRC8

Parameters

  len | the length of the data array
  data | data array

Definition at line 305 of file LTC68031.cpp.

## ◆ spi_write_array()

void spi_write_array | ( | uint8_t | len,
|  | uint8_t | data[]
| ) |  |

Definition at line 349 of file LTC68031.cpp.

## ◆ spi_write_read()

void spi_write_read | ( | uint8_t | tx_Data[],
|  | uint8_t | tx_len,
|  | uint8_t * | rx_data,
|  | uint8_t | rx_len
| ) |  |

Definition at line 361 of file LTC68031.cpp.