stepper11 2.0.0.0
Main Page

Stepper 11 click

‍Stepper 11 Click is a compact add-on board that contains a bipolar stepper motor driver. This board features the TB9120AFTG, a two-phase bipolar stepping motor driver with a clock input interface and a PWM constant-current control system from Toshiba Semiconductor.

click Product page


Click library

  • Author : Luka Filipovic
  • Date : Jul 2021.
  • Type : I2C type

Software Support

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

Standard key functions :

Example key functions :

Example Description

‍This example showcases the device's ability to control the motor.

It initializes the device for control and moves the motor in two directions in a variety of resolutions for 360 degrees.

The demo application is composed of two sections :

Application Init

‍Initialization of communication modules(I2C, UART) and additional pins

for control of device. Then sets default configuration that enables device for motor control.

void application_init ( void )
{
log_cfg_t log_cfg;
stepper11_cfg_t stepper11_cfg;
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, " Application Init " );
// Click initialization.
stepper11_cfg_setup( &stepper11_cfg );
STEPPER11_MAP_MIKROBUS( stepper11_cfg, MIKROBUS_1 );
err_t init_flag = stepper11_init( &stepper11, &stepper11_cfg );
if ( I2C_MASTER_ERROR == init_flag )
{
log_error( &logger, " Application Init Error. " );
log_info( &logger, " Please, run program again... " );
for ( ; ; );
}
stepper11_default_cfg ( &stepper11 );
log_info( &logger, " Application Task " );
}
#define STEPPER11_MAP_MIKROBUS(cfg, mikrobus)
MikroBUS pin mapping.
Definition stepper11.h:142
void application_init(void)
Definition main.c:33

Application Task

‍Firstly it rotates motor in CW direction for 360 degrees in FULL step

resolution. Then changes direction in CCW and rotates backwards 360 degrees in 2 different step resolutions (Quarter and 1/16) in 180 degrees each.

void application_task ( void )
{
stepper11_set_direction( &stepper11, 1 );
log_info( &logger, " Rotate motor CW for 360 degrees in full step" );
Delay_ms ( 1000 );
stepper11_set_direction( &stepper11, 0 );
log_info( &logger, " Rotate motor CCW for 180 degrees in half step" );
Delay_ms ( 1000 );
log_info( &logger, " Rotate motor CCW for 180 degrees in 1/8 step" );
Delay_ms ( 1000 );
}
#define STEPPER11_RESOLUTION_FULL
Stepper 11 device resolution settings.
Definition stepper11.h:102
#define STEPPER11_RESOLUTION_QUARTER
Definition stepper11.h:105
#define STEPPER11_RESOLUTION_1div16
Definition stepper11.h:107
#define STEPPER11_SPEED_FAST
Definition stepper11.h:96
void stepper11_set_direction(stepper11_t *ctx, uint8_t state)
Set direction.
void application_task(void)
Definition main.c:68

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.Stepper11

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.