TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (405 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (133 codes)
  5. Bugz Bensce (97 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (141211 times)
  2. FAT32 Library (73998 times)
  3. Network Ethernet Library (58643 times)
  4. USB Device Library (48764 times)
  5. Network WiFi Library (44458 times)
  6. FT800 Library (44033 times)
  7. GSM click (30784 times)
  8. mikroSDK (29513 times)
  9. PID Library (27339 times)
  10. microSD click (27188 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
mikroSDK Library

H-Bridge 11 Click

Rating:

0

Author: MIKROE

Last Updated: 2024-10-31

Package Version: 2.1.0.7

mikroSDK Library: 2.0.0.0

Category: Brushed

Downloaded: 159 times

Not followed.

License: MIT license  

H-Bridge 11 Click is a compact add-on board that allows a voltage to be applied across a load in either direction. This board features the MAX22200, an octal serial-controlled solenoid and motor driver from Analog Devices. The MAX22200 is SPI-configurable and rated for an operating voltage range from 4.5V to 36V. Each channel features a low impedance push-pull output stage with sink-and-source driving capability up to 1A RMS driving current. Its internal half-bridges can be configured as low-side or high-side drivers, supports two control methods (voltage and current drive regulation), and features a full set of protections and diagnostic functions.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "H-Bridge 11 Click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "H-Bridge 11 Click" changes.

Do you want to report abuse regarding "H-Bridge 11 Click".

  • Information
  • Comments (0)

mikroSDK Library Blog


H-Bridge 11 Click

H-Bridge 11 Click is a compact add-on board that allows a voltage to be applied across a load in either direction. This board features the MAX22200, an octal serial-controlled solenoid and motor driver from Analog Devices. The MAX22200 is SPI-configurable and rated for an operating voltage range from 4.5V to 36V. Each channel features a low impedance push-pull output stage with sink-and-source driving capability up to 1A RMS driving current. Its internal half-bridges can be configured as low-side or high-side drivers, supports two control methods (voltage and current drive regulation), and features a full set of protections and diagnostic functions.

hbridge11_click.png

Click Product page


Click library

  • Author : Stefan Filipovic
  • Date : Feb 2023.
  • Type : SPI type

Software Support

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

Standard key functions :

  • hbridge11_cfg_setup Config Object Initialization function.

    void hbridge11_cfg_setup ( hbridge11_cfg_t *cfg );
  • hbridge11_init Initialization function.

    err_t hbridge11_init ( hbridge11_t *ctx, hbridge11_cfg_t *cfg );
  • hbridge11_default_cfg Click Default Configuration function.

    err_t hbridge11_default_cfg ( hbridge11_t *ctx );

Example key functions :

  • hbridge11_get_fault_pin This function returns the fault pin logic state.

    uint8_t hbridge11_get_fault_pin ( hbridge11_t *ctx );
  • hbridge11_read_flags This function reads and clears the fault flags from the status register.

    err_t hbridge11_read_flags ( hbridge11_t *ctx, uint8_t *fault_flags );
  • hbridge11_set_motor_state This function sets the operating state for the selected motor from the half-bridge pairs 0-1, 2-3, 4-5, or 6-7.

    err_t hbridge11_set_motor_state ( hbridge11_t *ctx, uint8_t motor, uint8_t state );

Example Description

This example demonstrates the use of the H-Bridge 11 Click board by driving the DC motors connected between OUT0-OUT1 and OUT2-OUT3 in both directions.

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;  /**< Logger config object. */
    hbridge11_cfg_t hbridge11_cfg;  /**< Click config object. */

    /** 
     * Logger initialization.
     * Default baud rate: 115200
     * Default log level: LOG_LEVEL_DEBUG
     * @note If USB_UART_RX and USB_UART_TX 
     * are defined as HAL_PIN_NC, you will 
     * need to define them manually for log to work. 
     * See @b LOG_MAP_USB_UART macro definition for detailed explanation.
     */
    LOG_MAP_USB_UART( log_cfg );
    log_init( &logger, &log_cfg );
    log_info( &logger, " Application Init " );

    // Click initialization.
    hbridge11_cfg_setup( &hbridge11_cfg );
    HBRIDGE11_MAP_MIKROBUS( hbridge11_cfg, MIKROBUS_1 );
    if ( SPI_MASTER_ERROR == hbridge11_init( &hbridge11, &hbridge11_cfg ) )
    {
        log_error( &logger, " Communication init." );
        for ( ; ; );
    }

    if ( HBRIDGE11_ERROR == hbridge11_default_cfg ( &hbridge11 ) )
    {
        log_error( &logger, " Default configuration." );
        for ( ; ; );
    }
    log_info( &logger, " Application Task " );
}

Application Task

Drives the motors connected between OUT0-OUT1 and OUT2-OUT3 in both directions in the span of 12 seconds, and logs data on the USB UART where you can track the program flow.

void application_task ( void )
{
    hbridge11_set_motor_state ( &hbridge11, HBRIDGE11_MOTOR_SEL_0, HBRIDGE11_MOTOR_STATE_FORWARD );
    hbridge11_set_motor_state ( &hbridge11, HBRIDGE11_MOTOR_SEL_1, HBRIDGE11_MOTOR_STATE_FORWARD );
    log_printf( &logger, "\r\n MOTOR 0: FORWARD\r\n" );
    log_printf( &logger, " MOTOR 1: FORWARD\r\n" );
    hbridge11_check_fault ( );
    Delay_ms ( 1000 );
    Delay_ms ( 1000 );
    Delay_ms ( 1000 );
    hbridge11_set_motor_state ( &hbridge11, HBRIDGE11_MOTOR_SEL_0, HBRIDGE11_MOTOR_STATE_BRAKE );
    hbridge11_set_motor_state ( &hbridge11, HBRIDGE11_MOTOR_SEL_1, HBRIDGE11_MOTOR_STATE_BRAKE );
    log_printf( &logger, "\r\n MOTOR 0: BRAKE\r\n" );
    log_printf( &logger, " MOTOR 1: BRAKE\r\n" );
    hbridge11_check_fault ( );
    Delay_ms ( 1000 );
    Delay_ms ( 1000 );
    Delay_ms ( 1000 );
    hbridge11_set_motor_state ( &hbridge11, HBRIDGE11_MOTOR_SEL_0, HBRIDGE11_MOTOR_STATE_REVERSE );
    hbridge11_set_motor_state ( &hbridge11, HBRIDGE11_MOTOR_SEL_1, HBRIDGE11_MOTOR_STATE_REVERSE );
    log_printf( &logger, "\r\n MOTOR 0: REVERSE\r\n" );
    log_printf( &logger, " MOTOR 1: REVERSE\r\n" );
    hbridge11_check_fault ( );
    Delay_ms ( 1000 );
    Delay_ms ( 1000 );
    Delay_ms ( 1000 );
    hbridge11_set_motor_state ( &hbridge11, HBRIDGE11_MOTOR_SEL_0, HBRIDGE11_MOTOR_STATE_HI_Z );
    hbridge11_set_motor_state ( &hbridge11, HBRIDGE11_MOTOR_SEL_1, HBRIDGE11_MOTOR_STATE_HI_Z );
    log_printf( &logger, "\r\n MOTOR 0: DISCONNECTED\r\n" );
    log_printf( &logger, " MOTOR 1: DISCONNECTED\r\n" );
    hbridge11_check_fault ( );
    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.HBridge11

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.


ALSO FROM THIS AUTHOR

PWM 2 click

5

PWM 2 click offers 48 independently controlled PWM channels, available over the onboard headers, perfectly suited for driving LEDs.

[Learn More]

Fan 2 click

6

Fan 2 click carries the MAX31760 precision fan-speed controller. It can also measure temperature and adjust the fan speed to keep the temperature at the same level. The click is designed to run on either 3.3V or 5V power supply. It communicates with the target microcontroller over I2C interface.

[Learn More]

AMR Current click

5

The AMR Current Click is a Click board which features the MCR1101-20-5, an AMR based integrated current sensor from ACEINNA.

[Learn More]