TOP Contributors

  1. MIKROE (2781 codes)
  2. Alcides Ramos (377 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (118 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 (139586 times)
  2. FAT32 Library (72044 times)
  3. Network Ethernet Library (57269 times)
  4. USB Device Library (47633 times)
  5. Network WiFi Library (43231 times)
  6. FT800 Library (42569 times)
  7. GSM click (29933 times)
  8. mikroSDK (28313 times)
  9. PID Library (26934 times)
  10. microSD click (26309 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: 89 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

Breakout game - demo project

0

Game description: Breakout is an arcade game developed and published on May 13, 1976. - In Breakout, a layer of bricks lines the top third of the screen and the goal is to destroy them all. A ball moves straight around the screen, bouncing off the top and two sides of the screen. .......

[Learn More]

Mikromedia 7 Capacitive FPI

0

This project contains example for testing modules on Mikromedia 7 Capacitive FPI.

[Learn More]

Thermo 28 Click

0

Thermo 28 Click is a compact add-on board that accurately measures temperature. This board features the ams AG’s AS6221, a high-accuracy digital temperature sensor. The AS6221 consists of a Si bandgap temperature factory-calibrated sensor, 16-bit ADC, and a digital signal processor, offering a high accuracy of ±0.9°C. It provides temperature data to the host controller through a compatible I2C interface, reliability, user-selectable I2C addresses, and alert functionality, which triggers an interrupt to protect the device from excessive temperatures.

[Learn More]