hbridge15  2.1.0.0
Main Page

H-Bridge 15 Click

H-Bridge 15 Click is a compact add-on board with an H-Bridge gate driver, also known as a full-bridge pre-driver. This board features the DRV8834, a dual-bridge stepper or DC motor driver from Texas Instruments.

Click Product page


Click library

  • Author : Stefan Ilic
  • Date : Aug 2023.
  • Type : I2C type

Software Support

We provide a library for the H-Bridge 15 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 H-Bridge 15 Click driver.

Standard key functions :

Example key functions :

Example Description

This example demonstrates the use of the H-Bridge 15 Click board by

driving the motor in both directions with braking and freewheeling.

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;
hbridge15_cfg_t hbridge15_cfg;
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, " Application Init " );
// Click initialization.
hbridge15_cfg_setup( &hbridge15_cfg );
HBRIDGE15_MAP_MIKROBUS( hbridge15_cfg, MIKROBUS_1 );
if ( I2C_MASTER_ERROR == hbridge15_init( &hbridge15, &hbridge15_cfg ) )
{
log_error( &logger, " Communication init." );
for ( ; ; );
}
if ( HBRIDGE15_ERROR == hbridge15_default_cfg ( &hbridge15 ) )
{
log_error( &logger, " Default configuration." );
for ( ; ; );
}
log_info( &logger, " Application Task " );
}

Application Task

This example is driving a motor in both directions with

motor braking and freewheeling in between.

void application_task ( void )
{
log_printf( &logger, " Motor in forward mode. \r\n" );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
log_printf( &logger, " Motor brake is on \r\n" );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
log_printf( &logger, " Motor in reverse mode. \r\n" );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
log_printf( &logger, " Motor is coasting \r\n" );
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.HBridge15

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.


HBRIDGE15_MAP_MIKROBUS
#define HBRIDGE15_MAP_MIKROBUS(cfg, mikrobus)
MikroBUS pin mapping.
Definition: hbridge15.h:154
HBRIDGE15_DRIVE_MOTOR_BRAKE
#define HBRIDGE15_DRIVE_MOTOR_BRAKE
Definition: hbridge15.h:126
hbridge15_t
H-Bridge 15 Click context object.
Definition: hbridge15.h:169
hbridge15_cfg_t
H-Bridge 15 Click configuration object.
Definition: hbridge15.h:190
hbridge15_default_cfg
err_t hbridge15_default_cfg(hbridge15_t *ctx)
H-Bridge 15 default configuration function.
HBRIDGE15_DRIVE_MOTOR_FORWARD
#define HBRIDGE15_DRIVE_MOTOR_FORWARD
Definition: hbridge15.h:124
hbridge15_init
err_t hbridge15_init(hbridge15_t *ctx, hbridge15_cfg_t *cfg)
H-Bridge 15 initialization function.
application_task
void application_task(void)
Definition: main.c:65
HBRIDGE15_DRIVE_MOTOR_FREEWHEEL
#define HBRIDGE15_DRIVE_MOTOR_FREEWHEEL
Definition: hbridge15.h:125
hbridge15_set_sleep
err_t hbridge15_set_sleep(hbridge15_t *ctx, uint8_t sleep_state)
H-Bridge 15 set sleep function.
hbridge15_set_pins
err_t hbridge15_set_pins(hbridge15_t *ctx, uint8_t set_mask, uint8_t clr_mask)
H-Bridge 15 set pins function.
HBRIDGE15_ERROR
@ HBRIDGE15_ERROR
Definition: hbridge15.h:210
hbridge15_cfg_setup
void hbridge15_cfg_setup(hbridge15_cfg_t *cfg)
H-Bridge 15 configuration object setup function.
hbridge15_set_out_state
err_t hbridge15_set_out_state(hbridge15_t *ctx, uint8_t out_state)
H-Bridge 15 set output function.
application_init
void application_init(void)
Definition: main.c:29
HBRIDGE15_DRIVE_MOTOR_REVERSE
#define HBRIDGE15_DRIVE_MOTOR_REVERSE
H-Bridge 15 motor states setting.
Definition: hbridge15.h:123