multisteppertb67s209 2.0.0.0
multisteppertb67s209.h File Reference

This file contains API for Multi Stepper TB67S209 Click Driver. More...

#include "drv_digital_out.h"
#include "drv_digital_in.h"
#include "drv_i2c_master.h"

Go to the source code of this file.

Data Structures

struct  multisteppertb67s209_t
 Multi Stepper TB67S209 Click context object. More...
 
struct  multisteppertb67s209_cfg_t
 Multi Stepper TB67S209 Click configuration object. More...
 

Macros

#define MULTISTEPPERTB67S209_REG_INPUT   0x00
 Multi Stepper TB67S209 PCA9538A registers.
 
#define MULTISTEPPERTB67S209_REG_OUTPUT   0x01
 
#define MULTISTEPPERTB67S209_REG_POLARITY   0x02
 
#define MULTISTEPPERTB67S209_REG_CONFIG   0x03
 
#define MULTISTEPPERTB67S209_DMODE0_PIN   0x01
 Multi Stepper TB67S209 PCA9538A pin mask.
 
#define MULTISTEPPERTB67S209_DMODE1_PIN   0x02
 
#define MULTISTEPPERTB67S209_DMODE2_PIN   0x04
 
#define MULTISTEPPERTB67S209_SMD1_PIN   0x10
 
#define MULTISTEPPERTB67S209_SMD0_PIN   0x20
 
#define MULTISTEPPERTB67S209_MO_PIN   0x40
 
#define MULTISTEPPERTB67S209_LO_PIN   0x80
 
#define MULTISTEPPERTB67S209_DEFAULT_CONFIG   0xC8
 Multi Stepper TB67S209 PCA9538A pin direction config.
 
#define MULTISTEPPERTB67S209_DIR_CW   0
 Multi Stepper TB67S209 direction setting.
 
#define MULTISTEPPERTB67S209_DIR_CCW   1
 
#define MULTISTEPPERTB67S209_PIN_LOW_LEVEL   0
 Multi Stepper TB67S209 pin logic level setting.
 
#define MULTISTEPPERTB67S209_PIN_HIGH_LEVEL   1
 
#define MULTISTEPPERTB67S209_MODE_STANDBY   0x00
 Multi Stepper TB67S209 step resolution setting.
 
#define MULTISTEPPERTB67S209_MODE_HALF_STEP_TYPE_B   0x01
 
#define MULTISTEPPERTB67S209_MODE_HALF_STEP_TYPE_A   0x02
 
#define MULTISTEPPERTB67S209_MODE_1_OVER_16   0x03
 
#define MULTISTEPPERTB67S209_MODE_FULL_STEP   0x04
 
#define MULTISTEPPERTB67S209_MODE_1_OVER_8   0x05
 
#define MULTISTEPPERTB67S209_MODE_QUARTER_STEP   0x06
 
#define MULTISTEPPERTB67S209_MODE_1_OVER_32   0x07
 
#define MULTISTEPPERTB67S209_MODE_BITS_MASK   0x07
 
#define MULTISTEPPERTB67S209_SMD_MODE_FD_12p5_PERCENT   0x00
 Multi Stepper TB67S209 SMD mode setting.
 
#define MULTISTEPPERTB67S209_SMD_MODE_FD_37p5_PERCENT   0x01
 
#define MULTISTEPPERTB67S209_SMD_MODE_FD_50_PERCENT   0x02
 
#define MULTISTEPPERTB67S209_SMD_MODE_FD_ONLY   0x03
 
#define MULTISTEPPERTB67S209_SMD_MODE_BITS_MASK   0x30
 
#define MULTISTEPPERTB67S209_SPEED_VERY_SLOW   0
 Multi Stepper TB67S209 device speed settings.
 
#define MULTISTEPPERTB67S209_SPEED_SLOW   1
 
#define MULTISTEPPERTB67S209_SPEED_MEDIUM   2
 
#define MULTISTEPPERTB67S209_SPEED_FAST   3
 
#define MULTISTEPPERTB67S209_SPEED_VERY_FAST   4
 
#define MULTISTEPPERTB67S209_DEVICE_ADDRESS_A1A0_00   0x70
 Multi Stepper TB67S209 device address setting.
 
#define MULTISTEPPERTB67S209_DEVICE_ADDRESS_A1A0_01   0x71
 
#define MULTISTEPPERTB67S209_DEVICE_ADDRESS_A1A0_10   0x72
 
#define MULTISTEPPERTB67S209_DEVICE_ADDRESS_A1A0_11   0x73
 
#define MULTISTEPPERTB67S209_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.
 

Enumerations

enum  multisteppertb67s209_return_value_t { MULTISTEPPERTB67S209_OK = 0 , MULTISTEPPERTB67S209_ERROR = -1 }
 Multi Stepper TB67S209 Click return value data. More...
 

Functions

void multisteppertb67s209_cfg_setup (multisteppertb67s209_cfg_t *cfg)
 Multi Stepper TB67S209 configuration object setup function.
 
err_t multisteppertb67s209_init (multisteppertb67s209_t *ctx, multisteppertb67s209_cfg_t *cfg)
 Multi Stepper TB67S209 initialization function.
 
err_t multisteppertb67s209_default_cfg (multisteppertb67s209_t *ctx)
 Multi Stepper TB67S209 default configuration function.
 
err_t multisteppertb67s209_write_register (multisteppertb67s209_t *ctx, uint8_t reg, uint8_t data_in)
 Multi Stepper TB67S209 write register function.
 
err_t multisteppertb67s209_read_register (multisteppertb67s209_t *ctx, uint8_t reg, uint8_t *data_out)
 Multi Stepper TB67S209 read register function.
 
err_t multisteppertb67s209_get_step_mode (multisteppertb67s209_t *ctx, uint8_t *mode)
 Multi Stepper TB67S209 get step mode function.
 
err_t multisteppertb67s209_set_step_mode (multisteppertb67s209_t *ctx, uint8_t mode)
 Multi Stepper TB67S209 set step mode function.
 
err_t multisteppertb67s209_get_smd_mode (multisteppertb67s209_t *ctx, uint8_t *mode)
 Multi Stepper TB67S209 get smd mode function.
 
err_t multisteppertb67s209_set_smd_mode (multisteppertb67s209_t *ctx, uint8_t mode)
 Multi Stepper TB67S209 set smd mode function.
 
void multisteppertb67s209_drive_motor (multisteppertb67s209_t *ctx, uint32_t steps, uint8_t speed)
 Multi Stepper TB67S209 driver motor function.
 
void multisteppertb67s209_enable_device (multisteppertb67s209_t *ctx)
 Multi Stepper TB67S209 enable device function.
 
void multisteppertb67s209_disable_device (multisteppertb67s209_t *ctx)
 Multi Stepper TB67S209 disable device function.
 
void multisteppertb67s209_set_direction (multisteppertb67s209_t *ctx, uint8_t dir)
 Multi Stepper TB67S209 set direction function.
 
void multisteppertb67s209_switch_direction (multisteppertb67s209_t *ctx)
 Multi Stepper TB67S209 switch direction function.
 
void multisteppertb67s209_reset_device (multisteppertb67s209_t *ctx)
 Multi Stepper TB67S209 reset device function.
 
uint8_t multisteppertb67s209_get_int_pin (multisteppertb67s209_t *ctx)
 Multi Stepper TB67S209 get int pin function.
 
void multisteppertb67s209_set_clk_pin (multisteppertb67s209_t *ctx, uint8_t state)
 Multi Stepper TB67S209 set clk pin function.
 

Detailed Description

This file contains API for Multi Stepper TB67S209 Click Driver.

Enumeration Type Documentation

◆ multisteppertb67s209_return_value_t

Multi Stepper TB67S209 Click return value data.

Predefined enum values for driver return values.

Enumerator
MULTISTEPPERTB67S209_OK 
MULTISTEPPERTB67S209_ERROR