#include <stdint.h>
#include <string.h>
#include "no_os_util.h"
#include "no_os_i2c.h"
Go to the source code of this file.
|
enum | ltc3350_enum_alarms {
LTC3350_CAP_UV_LVL = 0,
LTC3350_CAP_OV_LVL = 1,
LTC3350_GPI_UV_LVL = 2,
LTC3350_GPI_OV_LVL = 3,
LTC3350_VIN_UV_LVL = 4,
LTC3350_VIN_OV_LVL = 5,
LTC3350_VCAP_UV_LVL = 6,
LTC3350_VCAP_OV_LVL = 7,
LTC3350_VOUT_UV_LVL = 8,
LTC3350_VOUT_OV_LVL = 9,
LTC3350_IIN_OC_LVL = 10,
LTC3350_ICHG_UC_LVL = 11,
LTC3350_DTEMP_COLD_LVL = 12,
LTC3350_DTEMP_HOT_LVL = 13,
LTC3350_ESR_HI_LVL = 14,
LTC3350_CAP_LO_LVL = 15
} |
|
enum | ltc3350_enum_alarms_mask {
LTC3350_CAP_UV_LVL_B_BIT = NO_OS_BIT(0),
LTC3350_CAP_OV_LVL_BIT = NO_OS_BIT(1),
LTC3350_GPI_UV_LVL_BIT = NO_OS_BIT(2),
LTC3350_GPI_OV_LVL_BIT = NO_OS_BIT(3),
LTC3350_VIN_UV_LVL_BIT = NO_OS_BIT(4),
LTC3350_VIN_OV_LVL_BIT = NO_OS_BIT(5),
LTC3350_VCAP_UV_LVL_BIT = NO_OS_BIT(6),
LTC3350_VCAP_OV_LVL_BIT = NO_OS_BIT(7),
LTC3350_VOUT_UV_LVL_BIT = NO_OS_BIT(8),
LTC3350_VOUT_OV_LVL_BIT = NO_OS_BIT(9),
LTC3350_IIN_OC_LVL_BIT = NO_OS_BIT(10),
LTC3350_ICHG_UC_LVL_BIT = NO_OS_BIT(11),
LTC3350_DTEMP_COLD_LVL_BIT = NO_OS_BIT(12),
LTC3350_DTEMP_HOT_LVL_BIT = NO_OS_BIT(13),
LTC3350_ESR_HI_LVL_BIT = NO_OS_BIT(14),
LTC3350_CAP_LO_LVL_BIT = NO_OS_BIT(15)
} |
|
◆ LTC3350_AD_ALARM_REG
#define LTC3350_AD_ALARM_REG 0x1D |
◆ LTC3350_AD_CAP_ESR_PER
#define LTC3350_AD_CAP_ESR_PER 0x04 |
◆ LTC3350_AD_CAP_LO_LVL
#define LTC3350_AD_CAP_LO_LVL 0x16 |
◆ LTC3350_AD_CAP_OV_LVL
#define LTC3350_AD_CAP_OV_LVL 0x08 |
◆ LTC3350_AD_CAP_UV_LVL
#define LTC3350_AD_CAP_UV_LVL 0x07 |
◆ LTC3350_AD_CHRG_STATUS
#define LTC3350_AD_CHRG_STATUS 0x1B |
◆ LTC3350_AD_CLR_ALARMS
#define LTC3350_AD_CLR_ALARMS 0x00 |
◆ LTC3350_AD_CTL_REG
#define LTC3350_AD_CTL_REG 0x17 |
◆ LTC3350_AD_DTEMP_COLD_LVL
#define LTC3350_AD_DTEMP_COLD_LVL 0x13 |
◆ LTC3350_AD_DTEMP_HOT_LVL
#define LTC3350_AD_DTEMP_HOT_LVL 0x14 |
◆ LTC3350_AD_ESR_HI_LVL
#define LTC3350_AD_ESR_HI_LVL 0x15 |
◆ LTC3350_AD_GPI_OV_LVL
#define LTC3350_AD_GPI_OV_LVL 0x0A |
◆ LTC3350_AD_GPI_UV_LVL
#define LTC3350_AD_GPI_UV_LVL 0x09 |
◆ LTC3350_AD_ICHG_UC_LVL
#define LTC3350_AD_ICHG_UC_LVL 0x12 |
◆ LTC3350_AD_IIN_OC_LVL
#define LTC3350_AD_IIN_OC_LVL 0x11 |
◆ LTC3350_AD_MEAS_CAP
#define LTC3350_AD_MEAS_CAP 0x1E |
◆ LTC3350_AD_MEAS_DTEMP
#define LTC3350_AD_MEAS_DTEMP 0x2A |
◆ LTC3350_AD_MEAS_ESR
#define LTC3350_AD_MEAS_ESR 0x1F |
◆ LTC3350_AD_MEAS_GPI
#define LTC3350_AD_MEAS_GPI 0x24 |
◆ LTC3350_AD_MEAS_ICHG
#define LTC3350_AD_MEAS_ICHG 0x29 |
◆ LTC3350_AD_MEAS_IIN
#define LTC3350_AD_MEAS_IIN 0x28 |
◆ LTC3350_AD_MEAS_VCAP
#define LTC3350_AD_MEAS_VCAP 0x26 |
◆ LTC3350_AD_MEAS_VCAP1
#define LTC3350_AD_MEAS_VCAP1 0x20 |
◆ LTC3350_AD_MEAS_VCAP2
#define LTC3350_AD_MEAS_VCAP2 0x21 |
◆ LTC3350_AD_MEAS_VCAP3
#define LTC3350_AD_MEAS_VCAP3 0x22 |
◆ LTC3350_AD_MEAS_VCAP4
#define LTC3350_AD_MEAS_VCAP4 0x23 |
◆ LTC3350_AD_MEAS_VIN
#define LTC3350_AD_MEAS_VIN 0x25 |
◆ LTC3350_AD_MEAS_VOUT
#define LTC3350_AD_MEAS_VOUT 0x27 |
◆ LTC3350_AD_MON_STATUS
#define LTC3350_AD_MON_STATUS 0x1C |
◆ LTC3350_AD_MSK_ALARMS
#define LTC3350_AD_MSK_ALARMS 0x01 |
◆ LTC3350_AD_MSK_MON_STATUS
#define LTC3350_AD_MSK_MON_STATUS 0x02 |
◆ LTC3350_AD_NUM_CAPS
#define LTC3350_AD_NUM_CAPS 0x1A |
◆ LTC3350_AD_VCAP_OV_LVL
#define LTC3350_AD_VCAP_OV_LVL 0x0E |
◆ LTC3350_AD_VCAP_UV_LVL
#define LTC3350_AD_VCAP_UV_LVL 0x0D |
◆ LTC3350_AD_VCAPFB_DAC
#define LTC3350_AD_VCAPFB_DAC 0x05 |
◆ LTC3350_AD_VIN_OV_LVL
#define LTC3350_AD_VIN_OV_LVL 0x0C |
◆ LTC3350_AD_VIN_UV_LVL
#define LTC3350_AD_VIN_UV_LVL 0x0B |
◆ LTC3350_AD_VOUT_OV_LVL
#define LTC3350_AD_VOUT_OV_LVL 0x10 |
◆ LTC3350_AD_VOUT_UV_LVL
#define LTC3350_AD_VOUT_UV_LVL 0x0F |
◆ LTC3350_AD_VSHUNT
#define LTC3350_AD_VSHUNT 0x06 |
◆ LTC3350_USE_ALARMS
#define LTC3350_USE_ALARMS 0 |
LTC3350 alarms configuration switch.
If set to TRUE
more configurations are available.
- Note
- The default is
FALSE
.
◆ LTC3350_USE_MEASUREMENTS
#define LTC3350_USE_MEASUREMENTS 1 |
LTC3350 measurements configuration switch.
If set to TRUE
more configurations are available.
- Note
- The default is
TRUE
.
◆ ltc3350_enum_alarms
Enumerator |
---|
LTC3350_CAP_UV_LVL | |
LTC3350_CAP_OV_LVL | |
LTC3350_GPI_UV_LVL | |
LTC3350_GPI_OV_LVL | |
LTC3350_VIN_UV_LVL | |
LTC3350_VIN_OV_LVL | |
LTC3350_VCAP_UV_LVL | |
LTC3350_VCAP_OV_LVL | |
LTC3350_VOUT_UV_LVL | |
LTC3350_VOUT_OV_LVL | |
LTC3350_IIN_OC_LVL | |
LTC3350_ICHG_UC_LVL | |
LTC3350_DTEMP_COLD_LVL | |
LTC3350_DTEMP_HOT_LVL | |
LTC3350_ESR_HI_LVL | |
LTC3350_CAP_LO_LVL | |
◆ ltc3350_enum_alarms_mask
Enumerator |
---|
LTC3350_CAP_UV_LVL_B_BIT | |
LTC3350_CAP_OV_LVL_BIT | |
LTC3350_GPI_UV_LVL_BIT | |
LTC3350_GPI_OV_LVL_BIT | |
LTC3350_VIN_UV_LVL_BIT | |
LTC3350_VIN_OV_LVL_BIT | |
LTC3350_VCAP_UV_LVL_BIT | |
LTC3350_VCAP_OV_LVL_BIT | |
LTC3350_VOUT_UV_LVL_BIT | |
LTC3350_VOUT_OV_LVL_BIT | |
LTC3350_IIN_OC_LVL_BIT | |
LTC3350_ICHG_UC_LVL_BIT | |
LTC3350_DTEMP_COLD_LVL_BIT | |
LTC3350_DTEMP_HOT_LVL_BIT | |
LTC3350_ESR_HI_LVL_BIT | |
LTC3350_CAP_LO_LVL_BIT | |
◆ ltc3350_get_esr()
int ltc3350_get_esr |
( |
struct ltc3350_dev * |
dev, |
|
|
uint16_t * |
value |
|
) |
| |
Reads the ESR data.
Reads the ESR data.
- Parameters
-
dev | - The device structure. |
value | - Measured ESR. |
- Returns
- ret - Result of the reading procedure.
◆ ltc3350_get_num_caps()
int ltc3350_get_num_caps |
( |
struct ltc3350_dev * |
dev, |
|
|
uint8_t * |
num_caps |
|
) |
| |
Gets number of capacitors configured based on PIN.
LTC3350 functions
Gets number of capacitors configured
- Parameters
-
dev | - The device structure. |
num_caps | - Number of capacitors configured. 00-1 cap, 01 - 2 caps, 10 - 3caps and 11 - 4 caps |
- Returns
- ret - Result of the reading procedure.
◆ ltc3350_get_vcap()
int ltc3350_get_vcap |
( |
struct ltc3350_dev * |
dev, |
|
|
uint8_t |
n_cap, |
|
|
uint16_t * |
value |
|
) |
| |
Reads the Vcap data for selected capacitor.
Reads the Vcap data for selected n_cap, 0 for generic.
- Parameters
-
dev | - The device structure. |
n_cap | - Number of capacitor to read, 0 for stack voltage |
value | - The read value |
- Returns
- ret - Result of the reading procedure.
◆ ltc3350_init()
Initializes the communication peripheral and checks if the LTC3350 part is present.
NO OS Requirements
Initialize the device driver before use.
- Parameters
-
device | - The device structure. |
init_param | - The structure that contains the device initial parameters. |
- Returns
- ret - Result of the initialization procedure.
◆ ltc3350_read_device_data()
int ltc3350_read_device_data |
( |
struct ltc3350_dev * |
dev, |
|
|
uint8_t |
base_address, |
|
|
uint16_t * |
read_data |
|
) |
| |
Reads data from the device (I2C).
General functions
Read a device register through the I2C interface.
- Parameters
-
dev | - The device structure. |
base_address | - Address of the base register. |
read_data | - The read data value |
- Returns
- ret - Result of the reading procedure.
◆ ltc3350_remove()
Free the resources allocated by ltc3350_init().
Free memory allocated by ltc3350_init().
- Parameters
-
dev | - The device structure. |
- Returns
- ret - Result of the remove procedure.
◆ ltc3350_write_device_data()
int ltc3350_write_device_data |
( |
struct ltc3350_dev * |
dev, |
|
|
uint8_t |
base_address, |
|
|
uint16_t |
write_data |
|
) |
| |
Writes data to the device (I2C)
Write a device register through the I2C interface.
- Parameters
-
dev | - The device structure. |
base_address | - Address of the base register. |
write_data | - The data which is going to be written. |
- Returns
- ret - Result of the writing procedure.