Go to the documentation of this file.
35 #include "drv_digital_out.h"
36 #include "drv_digital_in.h"
37 #include "drv_i2c_master.h"
53 #define STEPPER18_STEP_RES_FULL 1
54 #define STEPPER18_STEP_RES_HALF 2
55 #define STEPPER18_STEP_RES_QUARTER 4
56 #define STEPPER18_STEP_RES_1div8 8
57 #define STEPPER18_STEP_RES_1div16 16
58 #define STEPPER18_STEP_RES_1div32 32
59 #define STEPPER18_STEP_RES_1div64 64
60 #define STEPPER18_STEP_RES_1div128 128
61 #define STEPPER18_STEP_RES_1div256 256
67 #define STEPPER18_SPEED_VERY_SLOW 1
68 #define STEPPER18_SPEED_SLOW 2
69 #define STEPPER18_SPEED_MEDIUM 3
70 #define STEPPER18_SPEED_FAST 4
71 #define STEPPER18_SPEED_VERY_FAST 5
78 #define STEPPER18_SET_DEV_ADDR 0x60
96 #define STEPPER18_MAP_MIKROBUS( cfg, mikrobus ) \
97 cfg.scl = MIKROBUS( mikrobus, MIKROBUS_SCL ); \
98 cfg.sda = MIKROBUS( mikrobus, MIKROBUS_SDA ); \
99 cfg.en = MIKROBUS( mikrobus, MIKROBUS_CS ); \
100 cfg.dir = MIKROBUS( mikrobus, MIKROBUS_AN ); \
101 cfg.slp = MIKROBUS( mikrobus, MIKROBUS_RST ); \
102 cfg.stp = MIKROBUS( mikrobus, MIKROBUS_PWM ); \
103 cfg.flt = MIKROBUS( mikrobus, MIKROBUS_INT )
366 #endif // STEPPER18_H
@ STEPPER18_ERROR
Definition: stepper18.h:163
void stepper18_calculate_resolution(stepper18_t *ctx)
Calculate step-degree resolution.
uint8_t i2c_address
Definition: stepper18.h:152
digital_out_t en
Definition: stepper18.h:115
stepper18_return_value_t
Stepper 18 Click return value data.
Definition: stepper18.h:161
pin_name_t sda
Definition: stepper18.h:143
pin_name_t slp
Definition: stepper18.h:147
err_t stepper18_set_out_voltage(stepper18_t *ctx, uint16_t voltage)
Set voltage reference.
digital_out_t slp
Definition: stepper18.h:117
digital_out_t dir
Definition: stepper18.h:116
uint8_t slave_address
Definition: stepper18.h:127
void stepper18_set_slp(stepper18_t *ctx, uint8_t value)
Set sleep.
Stepper 18 Click context object.
Definition: stepper18.h:113
uint8_t stepper18_get_flt(stepper18_t *ctx)
Get fault.
void stepper18_move_motor_step(stepper18_t *ctx, uint16_t steps, uint8_t step_res, uint8_t speed)
Move motor in step value.
pin_name_t en
Definition: stepper18.h:145
void stepper18_set_en(stepper18_t *ctx, uint8_t value)
Set enable.
err_t stepper18_init(stepper18_t *ctx, stepper18_cfg_t *cfg)
Stepper 18 initialization function.
void stepper18_set_dir(stepper18_t *ctx, uint8_t value)
Set direction.
i2c_master_t i2c
Definition: stepper18.h:124
uint32_t i2c_speed
Definition: stepper18.h:151
void stepper18_cfg_setup(stepper18_cfg_t *cfg)
Stepper 18 configuration object setup function.
float resolution
Definition: stepper18.h:131
err_t stepper18_generic_write(stepper18_t *ctx, uint8_t *tx_buf, uint8_t tx_len)
Writing function.
digital_in_t flt
Definition: stepper18.h:121
@ STEPPER18_OK
Definition: stepper18.h:162
void stepper18_move_motor_angle(stepper18_t *ctx, float degree, uint8_t step_res, uint8_t speed)
Move motor in angle value.
digital_out_t stp
Definition: stepper18.h:118
err_t stepper18_default_cfg(stepper18_t *ctx)
Stepper 18 default configuration function.
pin_name_t stp
Definition: stepper18.h:148
void stepper18_set_stp(stepper18_t *ctx, uint8_t value)
Set step state.
pin_name_t flt
Definition: stepper18.h:149
uint16_t steps
Definition: stepper18.h:130
pin_name_t dir
Definition: stepper18.h:146
Stepper 18 Click configuration object.
Definition: stepper18.h:141
pin_name_t scl
Definition: stepper18.h:142