MAX17055 driver
Dependents: MAX32620FTHR_FuelGauge MAX32620FTHR_GPS_Tracker
MAX17055 Class Reference
MAX17055 7µA 1-Cell Fuel Gauge with ModelGauge m5 EZ. More...
#include <MAX17055.h>
Public Types | |
enum | reg_t |
Register Address. More... | |
Public Member Functions | |
MAX17055 (I2C &i2c, int address=MAX17055_I2C_ADDRESS) | |
MAX17055 constructor. | |
~MAX17055 () | |
MAX17055 destructor. | |
void | init (float r_sense) |
Initialize driver state. | |
int | status (int *value) |
Read status register. | |
int | v_cell (int *value) |
Read VCell register. | |
int | v_cell (float *value) |
Read VCell register. | |
int | avg_v_cell (int *value) |
Read AvgVCell register. | |
int | avg_v_cell (float *value) |
Read AvgVCell register. | |
int | max_min_volt (int *max, int *min) |
Read MaxMinVolt register. | |
int | max_min_volt (float *max, float *min) |
Read MaxMinVolt register. | |
int | current (int *value) |
Read Current register. | |
int | current (float *value) |
Read Current register. | |
int | avg_current (int *value) |
Read AvgCurrent register. | |
int | avg_current (float *value) |
Read AvgCurrent register. | |
int | max_min_curr (int *max, int *min) |
Read MinMaxCurr register. | |
int | max_min_curr (float *max, float *min) |
Read MinMaxCurrent register. | |
int | temp (int *value) |
Read Temp register. | |
int | temp (float *value) |
Read Temp register. | |
int | avg_ta (int *value) |
Read AvgTA register. | |
int | avg_ta (float *value) |
Read AvgTA register. | |
int | max_min_temp (int *max, int *min) |
Read MaxMinTemp register. | |
int | max_min_temp (float *max, float *min) |
Read MaxMinTemp register. | |
int | writeReg (reg_t reg, char value, bool verify=false) |
Write 8-Bit Register. | |
int | writeReg (reg_t reg, uint16_t value, bool verify=false) |
Write 16-Bit Register. | |
int | readReg (reg_t reg, char *value) |
Read 8-Bit Register. | |
int | readReg (reg_t reg, char *buf, int len) |
Read 8-Bit Register(s) | |
int | readReg16 (reg_t reg, int *value) |
Read 16-Bit Register. |
Detailed Description
MAX17055 7µA 1-Cell Fuel Gauge with ModelGauge m5 EZ.
The MAX17055 is a low 7μA operating current fuel gauge which implements Maxim ModelGauge™ m5 EZ algorithm. ModelGauge m5 EZ makes fuel gauge implementation easy by eliminating battery characterization requirements and simplifying host software interaction. The ModelGauge m5 EZ robust algorithm provides tolerance against battery diversity for most lithium batteries and applications.
https://www.maximintegrated.com/en/products/power/battery-management/MAX17055.html
#include "mbed.h" #include "MAX17055.h" // I2C Master 2 I2C i2c(I2C2_SDA, I2C2_SCL); MAX17055 max17055(i2c); int main() { int status; float f_value; // Set sense resistor value max17055.init(0.05f); // Print status max17055.status(&status); printf("MAX17055 status: %04X\r\n", (uint16_t)status); for (;;) { // Print formatted voltage, current and temperature values max17055.v_cell(&f_value); printf("%6.3fV ", f_value); max17055.current(&f_value); printf("%6.3fI ", f_value); max17055.temp(&f_value); printf("%6.3fC ", f_value); printf("\r\n"); Thread::wait(3000); } }
Definition at line 97 of file MAX17055.h.
Member Enumeration Documentation
enum reg_t |
Constructor & Destructor Documentation
MAX17055 | ( | I2C & | i2c, |
int | address = MAX17055_I2C_ADDRESS |
||
) |
MAX17055 constructor.
- Parameters:
-
i2c I2C object to use. address Slave Address of the device.
Definition at line 37 of file MAX17055.cpp.
~MAX17055 | ( | ) |
MAX17055 destructor.
Definition at line 44 of file MAX17055.cpp.
Member Function Documentation
int avg_current | ( | int * | value ) |
Read AvgCurrent register.
The AvgCurrent register reports an average of Current register readings.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 185 of file MAX17055.cpp.
int avg_current | ( | float * | value ) |
Read AvgCurrent register.
The AvgCurrent register reports an average of Current register readings.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 199 of file MAX17055.cpp.
int avg_ta | ( | int * | value ) |
Read AvgTA register.
The AvgTA register reports an average of the readings from the Temp register.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 272 of file MAX17055.cpp.
int avg_ta | ( | float * | value ) |
Read AvgTA register.
The AvgTA register reports an average of the readings from the Temp register.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 286 of file MAX17055.cpp.
int avg_v_cell | ( | int * | value ) |
Read AvgVCell register.
The AvgVCell register reports an average of the VCell register readings.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 99 of file MAX17055.cpp.
int avg_v_cell | ( | float * | value ) |
Read AvgVCell register.
The AvgVCell register reports an average of the VCell register readings.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 113 of file MAX17055.cpp.
int current | ( | int * | value ) |
Read Current register.
The Current register reports the voltage between the CSP and CSN pins.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 157 of file MAX17055.cpp.
int current | ( | float * | value ) |
Read Current register.
The Current register reports the voltage between the CSP and CSN pins.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 171 of file MAX17055.cpp.
void init | ( | float | r_sense ) |
Initialize driver state.
Initialize driver with supplied sense resistor value.
- Parameters:
-
value The sense resistor value in ohms
- Returns:
- 0 if no errors, -1 if error
Definition at line 49 of file MAX17055.cpp.
int max_min_curr | ( | int * | max, |
int * | min | ||
) |
Read MinMaxCurr register.
The MaxMinCurr register maintains the maximum and minimum Current register values since the last IC reset or until cleared by host software.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 213 of file MAX17055.cpp.
int max_min_curr | ( | float * | max, |
float * | min | ||
) |
Read MinMaxCurrent register.
The MaxMinCurr register maintains the maximum and minimum Current register values since the last IC reset or until cleared by host software.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 228 of file MAX17055.cpp.
int max_min_temp | ( | int * | max, |
int * | min | ||
) |
Read MaxMinTemp register.
The MaxMinTemp register maintains the maximum and minimum Temp register values since the last fuel-gauge reset or until cleared by host software.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 300 of file MAX17055.cpp.
int max_min_temp | ( | float * | max, |
float * | min | ||
) |
Read MaxMinTemp register.
The MaxMinTemp register maintains the maximum and minimum Temp register values since the last fuel-gauge reset or until cleared by host software.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 315 of file MAX17055.cpp.
int max_min_volt | ( | float * | max, |
float * | min | ||
) |
Read MaxMinVolt register.
The MaxMinVolt register maintains the maximum and minimum of VCell register values since device reset.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 142 of file MAX17055.cpp.
int max_min_volt | ( | int * | max, |
int * | min | ||
) |
Read MaxMinVolt register.
The MaxMinVolt register maintains the maximum and minimum of VCell register values since device reset.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 127 of file MAX17055.cpp.
int readReg | ( | reg_t | reg, |
char * | value | ||
) |
Read 8-Bit Register.
Reads from the specified register
- Parameters:
-
reg The register to be read value Pointer for where to store the data
- Returns:
- 0 if no errors, -1 if error.
Definition at line 371 of file MAX17055.cpp.
int readReg | ( | reg_t | reg, |
char * | buf, | ||
int | len | ||
) |
Read 8-Bit Register(s)
Reads len bytes starting from the specified register
- Parameters:
-
reg The register to be read value Pointer for where to store the data len Number of bytes to read
- Returns:
- 0 if no errors, -1 if error.
Definition at line 387 of file MAX17055.cpp.
int readReg16 | ( | reg_t | reg, |
int * | value | ||
) |
Read 16-Bit Register.
Reads from the specified register
- Parameters:
-
reg The register to be read value Pointer for where to store the data
- Returns:
- 0 if no errors, -1 if error.
int status | ( | int * | value ) |
Read status register.
Read status register.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 57 of file MAX17055.cpp.
int temp | ( | float * | value ) |
Read Temp register.
The Temp register provides the temperature measured by the thermistor or die temperature.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 257 of file MAX17055.cpp.
int temp | ( | int * | value ) |
Read Temp register.
The Temp register provides the temperature measured by the thermistor or die temperature.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 243 of file MAX17055.cpp.
int v_cell | ( | int * | value ) |
Read VCell register.
Read VCell register reports the voltage measured between BATT and CSP.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 71 of file MAX17055.cpp.
int v_cell | ( | float * | value ) |
Read VCell register.
The VCell register reports the voltage measured between BATT and CSP.
- Parameters:
-
value The location to store value read
- Returns:
- 0 if no errors, -1 if error
Definition at line 85 of file MAX17055.cpp.
int writeReg | ( | reg_t | reg, |
char | value, | ||
bool | verify = false |
||
) |
Write 8-Bit Register.
Writes the given value to the specified register.
- Parameters:
-
reg The register to be written value The data to be written verify Verify data after write
- Returns:
- 0 if no errors, -1 if error.
Definition at line 330 of file MAX17055.cpp.
int writeReg | ( | reg_t | reg, |
uint16_t | value, | ||
bool | verify = false |
||
) |
Write 16-Bit Register.
Writes the given value to the specified register.
- Parameters:
-
reg The register to be written value The data to be written verify Verify data after write
- Returns:
- 0 if no errors, -1 if error.
Definition at line 342 of file MAX17055.cpp.
Generated on Thu Jul 14 2022 04:26:31 by 1.7.2