stepdown12  2.1.0.0
Main Page

Step Down 12 Click

Step Down 12 Click is a compact add-on board for reliable DC-DC step-down applications. Based on Texas Instruments' TPS62902 synchronous step-down converter, it features the DCS-Control topology, which combines hysteretic, voltage mode, and current mode control for precision and fast response to voltage changes. Supporting a wide input voltage range of 3V to 17V, it provides stable output voltages with accuracy within ±1% and can enter power save mode for high efficiency under light loads. With 16 configurable output voltages from 0.7V to 5.5V, this Click board™ is ideal for applications in factory automation, building systems, data centers, enterprise computing, and motor drives where efficient, stable power conversion is essential.

Click Product page


Click library

  • Author : Stefan Filipovic
  • Date : Mar 2024.
  • Type : I2C type

Software Support

We provide a library for the Step Down 12 Click as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.

Package can be downloaded/installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.

Library Description

This library contains API for Step Down 12 Click driver.

Standard key functions :

Example key functions :

Example Description

This example demonstrates the use of Step Down 12 Click board by changing the output voltage every 3 seconds.

The demo application is composed of two sections :

Application Init

Initializes the driver and performs the Click default configuration.

void application_init ( void )
{
log_cfg_t log_cfg;
stepdown12_cfg_t stepdown12_cfg;
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, " Application Init " );
// Click initialization.
stepdown12_cfg_setup( &stepdown12_cfg );
STEPDOWN12_MAP_MIKROBUS( stepdown12_cfg, MIKROBUS_1 );
if ( I2C_MASTER_ERROR == stepdown12_init( &stepdown12, &stepdown12_cfg ) )
{
log_error( &logger, " Communication init." );
for ( ; ; );
}
stepdown12_default_cfg ( &stepdown12 );
log_info( &logger, " Application Task " );
}

Application Task

Changes the output voltage every 3 seconds from MAX (5.5V) to MIN (1.05V) in steps of 0.5V

and displays the currently set voltage output value on the USB UART. It also monitors the power good fault indication.

void application_task ( void )
{
static float vout = STEPDOWN12_VOUT_MAX;
if ( !stepdown12_get_pg_pin ( &stepdown12 ) )
{
log_error( &logger, " Power Good Fault - Vout is below nominal regulation\r\n" );
}
if ( STEPDOWN12_OK == stepdown12_set_vout ( &stepdown12, vout ) )
{
log_printf( &logger, " Vout: %.3f V\r\n\n", vout );
vout -= 0.5;
if ( vout < STEPDOWN12_VOUT_MIN )
{
}
}
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
}

The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.

Other Mikroe Libraries used in the example:

  • MikroSDK.Board
  • MikroSDK.Log
  • Click.StepDown12

Additional notes and informations

Depending on the development board you are using, you may need USB UART Click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all MikroElektronika compilers.


stepdown12_default_cfg
void stepdown12_default_cfg(stepdown12_t *ctx)
Step Down 12 default configuration function.
STEPDOWN12_MAP_MIKROBUS
#define STEPDOWN12_MAP_MIKROBUS(cfg, mikrobus)
MikroBUS pin mapping.
Definition: stepdown12.h:119
stepdown12_enable_device
void stepdown12_enable_device(stepdown12_t *ctx)
Step Down 12 enable device function.
STEPDOWN12_OK
@ STEPDOWN12_OK
Definition: stepdown12.h:174
stepdown12_cfg_setup
void stepdown12_cfg_setup(stepdown12_cfg_t *cfg)
Step Down 12 configuration object setup function.
STEPDOWN12_VOUT_MAX
#define STEPDOWN12_VOUT_MAX
Definition: stepdown12.h:87
application_task
void application_task(void)
Definition: main.c:62
stepdown12_cfg_t
Step Down 12 Click configuration object.
Definition: stepdown12.h:155
stepdown12_t
Step Down 12 Click context object.
Definition: stepdown12.h:134
stepdown12_set_vout
err_t stepdown12_set_vout(stepdown12_t *ctx, float vout)
Step Down 12 set vout function.
STEPDOWN12_VOUT_MIN
#define STEPDOWN12_VOUT_MIN
Definition: stepdown12.h:86
stepdown12_init
err_t stepdown12_init(stepdown12_t *ctx, stepdown12_cfg_t *cfg)
Step Down 12 initialization function.
application_init
void application_init(void)
Definition: main.c:30
stepdown12_get_pg_pin
uint8_t stepdown12_get_pg_pin(stepdown12_t *ctx)
Step Down 12 get pg pin function.