35#include "drv_digital_out.h"
36#include "drv_digital_in.h"
37#include "drv_i2c_master.h"
38#include "drv_analog_in.h"
61#define HBRIDGE13_REG_INPUT_PORT 0x00
62#define HBRIDGE13_REG_OUTPUT_PORT 0x01
63#define HBRIDGE13_REG_POLARITY_INV 0x02
64#define HBRIDGE13_REG_CONFIG 0x03
82#define HBRIDGE13_NONE_PIN 0x00
83#define HBRIDGE13_AIN1_IO_PIN 0x01
84#define HBRIDGE13_AIN2_IO_PIN 0x02
85#define HBRIDGE13_PWM_SW1_PIN 0x04
86#define HBRIDGE13_PWM_SW2_PIN 0x08
87#define HBRIDGE13_BIN1_IO_PIN 0x10
88#define HBRIDGE13_BIN2_IO_PIN 0x20
89#define HBRIDGE13_AN_SW_PIN 0x40
90#define HBRIDGE13_FLT_PIN 0x80
91#define HBRIDGE13_ALL_PIN 0xFF
97#define HBRIDGE13_DIR_FORWARD 0x01
98#define HBRIDGE13_DIR_REVERSE 0x00
104#define HBRIDGE13_AN_A_PIN_SEL 0x01
105#define HBRIDGE13_AN_B_PIN_SEL 0x00
112#define HBRIDGE13_DEVICE_ADDRESS_A1A0_00 0x70
113#define HBRIDGE13_DEVICE_ADDRESS_A1A0_01 0x71
114#define HBRIDGE13_DEVICE_ADDRESS_A1A0_10 0x72
115#define HBRIDGE13_DEVICE_ADDRESS_A1A0_11 0x73
121#define HBRIDGE13_ADC_RESOLUTION 0x0FFF
122#define HBRIDGE13_VREF_3V3 3.3
123#define HBRIDGE13_VREF_5V 5.0
129#define HBRIDGE13_DEF_FREQ 5000
147#define HBRIDGE13_MAP_MIKROBUS( cfg, mikrobus ) \
148 cfg.scl = MIKROBUS( mikrobus, MIKROBUS_SCL ); \
149 cfg.sda = MIKROBUS( mikrobus, MIKROBUS_SDA ); \
150 cfg.an = MIKROBUS( mikrobus, MIKROBUS_AN ); \
151 cfg.rst = MIKROBUS( mikrobus, MIKROBUS_RST ); \
152 cfg.pwm = MIKROBUS( mikrobus, MIKROBUS_PWM ); \
153 cfg.int_pin = MIKROBUS( mikrobus, MIKROBUS_INT )
err_t hbridge13_pwm_stop(hbridge13_t *ctx)
H-Bridge 13 stop PWM module.
err_t hbridge13_write_reg(hbridge13_t *ctx, uint8_t reg, uint8_t data_out)
H-Bridge 13 write register function.
err_t hbridge13_set_brake(hbridge13_t *ctx)
H-Bridge 13 set brake function.
err_t hbridge13_pwm_start(hbridge13_t *ctx)
H-Bridge 13 start PWM module.
err_t hbridge13_set_direction(hbridge13_t *ctx, uint8_t dir_set, uint8_t speed)
H-Bridge 13 set direction function.
err_t hbridge13_generic_write(hbridge13_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
H-Bridge 13 I2C writing function.
err_t hbridge13_init(hbridge13_t *ctx, hbridge13_cfg_t *cfg)
H-Bridge 13 initialization function.
err_t hbridge13_get_flt_state(hbridge13_t *ctx, uint8_t *pin_state)
H-Bridge 13 get nFAULT state function.
err_t hbridge13_read_reg(hbridge13_t *ctx, uint8_t reg, uint8_t *data_out)
H-Bridge 13 read register function.
err_t hbridge13_get_an_voltage(hbridge13_t *ctx, float *voltage, uint8_t an_sel)
H-Bridge 13 get xIPROPI voltage function.
err_t hbridge13_generic_read(hbridge13_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
H-Bridge 13 I2C reading function.
err_t hbridge13_default_cfg(hbridge13_t *ctx)
H-Bridge 13 default configuration function.
err_t hbridge13_set_vref(hbridge13_t *ctx, float vref)
H-Bridge 13 set vref function.
err_t hbridge13_set_pins(hbridge13_t *ctx, uint8_t set_mask, uint8_t clr_mask)
H-Bridge 13 set output pin state function.
err_t hbridge13_set_coast(hbridge13_t *ctx)
H-Bridge 13 set coast function.
void hbridge13_cfg_setup(hbridge13_cfg_t *cfg)
H-Bridge 13 configuration object setup function.
err_t hbridge13_read_voltage(hbridge13_t *ctx, float *voltage)
H-Bridge 13 read voltage level function.
err_t hbridge13_set_duty_cycle(hbridge13_t *ctx, float duty_cycle)
H-Bridge 13 sets PWM duty cycle.
err_t hbridge13_read_raw_adc(hbridge13_t *ctx, uint16_t *raw_adc)
H-Bridge 13 read raw ADC value function.
hbridge13_return_value_t
H-Bridge 13 Click return value data.
Definition: hbridge13.h:217
@ HBRIDGE13_OK
Definition: hbridge13.h:218
@ HBRIDGE13_ERROR
Definition: hbridge13.h:219
H-Bridge 13 Click configuration object.
Definition: hbridge13.h:192
analog_in_resolution_t resolution
Definition: hbridge13.h:207
float vref
Definition: hbridge13.h:208
uint32_t i2c_speed
Definition: hbridge13.h:202
uint32_t dev_pwm_freq
Definition: hbridge13.h:206
pin_name_t scl
Definition: hbridge13.h:193
pin_name_t int_pin
Definition: hbridge13.h:200
pin_name_t pwm
Definition: hbridge13.h:196
pin_name_t sda
Definition: hbridge13.h:194
pin_name_t rst
Definition: hbridge13.h:199
pin_name_t an
Definition: hbridge13.h:198
uint8_t i2c_address
Definition: hbridge13.h:203
H-Bridge 13 Click context object.
Definition: hbridge13.h:163
float vref
Definition: hbridge13.h:179
uint32_t pwm_freq
Definition: hbridge13.h:183
digital_in_t int_pin
Definition: hbridge13.h:168
i2c_master_t i2c
Definition: hbridge13.h:171
digital_out_t rst
Definition: hbridge13.h:165
uint8_t slave_address
Definition: hbridge13.h:176
analog_in_t adc
Definition: hbridge13.h:173
pwm_t pwm
Definition: hbridge13.h:172