35#include "drv_digital_out.h"
36#include "drv_digital_in.h"
37#include "drv_i2c_master.h"
59#define STEPDOWN6_REG_BUCK1_CTRL1 0x00
60#define STEPDOWN6_REG_BUCK1_CTRL2 0x01
61#define STEPDOWN6_REG_BUCK1_CTRL3 0x02
62#define STEPDOWN6_REG_BUCK2_CTRL1 0x03
63#define STEPDOWN6_REG_BUCK2_CTRL2 0x04
64#define STEPDOWN6_REG_BUCK2_CTRL3 0x05
65#define STEPDOWN6_REG_BUCK3_CTRL1 0x06
66#define STEPDOWN6_REG_BUCK3_CTRL2 0x07
67#define STEPDOWN6_REG_BUCK3_CTRL3 0x08
68#define STEPDOWN6_REG_BUCK4_CTRL1 0x09
69#define STEPDOWN6_REG_BUCK4_CTRL2 0x0A
70#define STEPDOWN6_REG_BUCK4_CTRL3 0x0B
71#define STEPDOWN6_REG_SYSTEM_CTRL1 0x0C
72#define STEPDOWN6_REG_SYSTEM_CTRL2 0x0D
73#define STEPDOWN6_REG_SYSTEM_CTRL3 0x0E
74#define STEPDOWN6_REG_SYSTEM_CTRL4 0x0F
75#define STEPDOWN6_REG_SYSTEM_CTRL5 0x10
76#define STEPDOWN6_REG_SYSTEM_CTRL6 0x11
77#define STEPDOWN6_REG_STATUS 0x12
78#define STEPDOWN6_REG_SYSTEM_CTRL7 0x13
101#define STEPDOWN6_SOFT_START_DLY_0_MS 0x00
102#define STEPDOWN6_SOFT_START_DLY_1_MS 0x10
103#define STEPDOWN6_SOFT_START_DLY_2_MS 0x20
104#define STEPDOWN6_SOFT_START_DLY_3_MS 0x30
105#define STEPDOWN6_SOFT_ADD_DLY_100_US 0x08
106#define STEPDOWN6_SOFT_START_CFG0 0x00
107#define STEPDOWN6_SOFT_START_CFG1 0x01
108#define STEPDOWN6_SOFT_START_CFG2 0x02
109#define STEPDOWN6_SOFT_START_CFG3 0x03
110#define STEPDOWN6_SOFT_START_CFG4 0x04
111#define STEPDOWN6_SOFT_START_CFG5 0x05
112#define STEPDOWN6_SOFT_START_CFG6 0x06
113#define STEPDOWN6_SOFT_START_CFG7 0x07
119#define STEPDOWN6_VOUT_LIMIT_FB_EN 0x80
120#define STEPDOWN6_VOUT_LIMIT_I2C_EN 0x00
121#define STEPDOWN6_MODE_AUTO_PWM 0x00
122#define STEPDOWN6_MODE_FORCED_PWM 0x40
123#define STEPDOWN6_CURRENT_LIM_1A 0x00
124#define STEPDOWN6_CURRENT_LIM_2A 0x10
125#define STEPDOWN6_CURRENT_LIM_3A 0x20
126#define STEPDOWN6_CURRENT_LIM_4A 0x30
127#define STEPDOWN6_VOUT_OVP_EN 0x08
128#define STEPDOWN6_PH_DELAY_0 0x00
129#define STEPDOWN6_PH_DELAY_90 0x02
130#define STEPDOWN6_PH_DELAY_180 0x04
131#define STEPDOWN6_PH_DELAY_270 0x06
132#define STEPDOWN6_VOUT_DIS_EN 0x01
138#define STEPDOWN6_VOUT_SELECT 0x80
139#define STEPDOWN6_VOUT_REF 0x7F
145#define STEPDOWN6_EN1_OUTPUT 0x80
146#define STEPDOWN6_EN2_OUTPUT 0x40
147#define STEPDOWN6_EN3_OUTPUT 0x20
148#define STEPDOWN6_EN4_OUTPUT 0x10
149#define STEPDOWN6_UVLO_TH_3V5 0x00
150#define STEPDOWN6_UVLO_TH_4V5 0x02
151#define STEPDOWN6_UVLO_TH_5V8 0x04
152#define STEPDOWN6_UVLO_TH_8V5 0x06
158#define STEPDOWN6_FREQ_533_HZ 0x00
159#define STEPDOWN6_FREQ_800_HZ 0x40
160#define STEPDOWN6_FREQ_1060_HZ 0x80
161#define STEPDOWN6_FREQ_1600_HZ 0xC0
162#define STEPDOWN6_SHUTDOWN_DELAY_EN 0x20
168#define STEPDOWN6_PG_DELAY_200_US 0x00
169#define STEPDOWN6_PG_DELAY_5_MS 0x04
170#define STEPDOWN6_PG_DELAY_25_MS 0x08
171#define STEPDOWN6_PG_DELAY_75_MS 0x0C
172#define STEPDOWN6_PG_DELAY_200_MS 0x10
173#define STEPDOWN6_PARALLEL_2_EN 0x02
174#define STEPDOWN6_PARALLEL_1_EN 0x01
180#define STEPDOWN6_SELECT_VOUT1 0x00
181#define STEPDOWN6_SELECT_VOUT2 0x01
182#define STEPDOWN6_SELECT_VOUT3 0x02
183#define STEPDOWN6_SELECT_VOUT4 0x03
189#define STEPDOWN6_PIN_STATE_HIGH 0x01
190#define STEPDOWN6_PIN_STATE_LOW 0x00
196#define STEPDOWN6_MIN_VOUT_VAL 550
197#define STEPDOWN6_MAX_VOUT_VAL 1820
198#define STEPDOWN6_INCREMENT_VOUT_VAL 10
205#define STEPDOWN6_DEVICE_ADDRESS 0x68
223#define STEPDOWN6_MAP_MIKROBUS( cfg, mikrobus ) \
224 cfg.scl = MIKROBUS( mikrobus, MIKROBUS_SCL ); \
225 cfg.sda = MIKROBUS( mikrobus, MIKROBUS_SDA ); \
226 cfg.en = MIKROBUS( mikrobus, MIKROBUS_RST )
err_t stepdown6_read_reg(stepdown6_t *ctx, uint8_t reg, uint8_t *data_out)
Step Down 6 Register reading function.
err_t stepdown6_set_out_voltage(stepdown6_t *ctx, uint8_t out_sel, uint16_t out_val)
Step Down 6 Set output voltage function.
err_t stepdown6_default_cfg(stepdown6_t *ctx)
Step Down 6 default configuration function.
void stepdown6_cfg_setup(stepdown6_cfg_t *cfg)
Step Down 6 configuration object setup function.
err_t stepdown6_generic_write(stepdown6_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
Step Down 6 I2C writing function.
err_t stepdown6_init(stepdown6_t *ctx, stepdown6_cfg_t *cfg)
Step Down 6 initialization function.
void stepdown6_set_en_pin(stepdown6_t *ctx, uint8_t pin_state)
Step Down 6 set EN pin state function.
err_t stepdown6_write_reg(stepdown6_t *ctx, uint8_t reg, uint8_t data_in)
Step Down 6 Register writing function.
err_t stepdown6_generic_read(stepdown6_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
Step Down 6 I2C reading function.
stepdown6_return_value_t
Step Down 6 Click return value data.
Definition: stepdown6.h:269
@ STEPDOWN6_ERROR
Definition: stepdown6.h:271
@ STEPDOWN6_OK
Definition: stepdown6.h:270
Step Down 6 Click configuration object.
Definition: stepdown6.h:253
uint32_t i2c_speed
Definition: stepdown6.h:259
pin_name_t scl
Definition: stepdown6.h:254
pin_name_t en
Definition: stepdown6.h:257
pin_name_t sda
Definition: stepdown6.h:255
uint8_t i2c_address
Definition: stepdown6.h:260
Step Down 6 Click context object.
Definition: stepdown6.h:236
i2c_master_t i2c
Definition: stepdown6.h:241
digital_out_t en
Definition: stepdown6.h:238
uint8_t slave_address
Definition: stepdown6.h:244