brushless3 2.0.0.0
brushless3.h File Reference

This file contains API for Brushless 3 Click driver. More...

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

Go to the source code of this file.

Data Structures

struct  brushless3_t
 Click ctx object definition. More...
 
struct  brushless3_cfg_t
 Click configuration structure definition. More...
 

Macros

#define BRUSHLESS3_MAP_MIKROBUS(cfg, mikrobus)
 
#define BRUSHLESS3_OK   0
 
#define BRUSHLESS3_ERROR   -1
 
#define BRUSHLESS3_I2C_ADDRESS   0x52
 
#define BRUSHLESS3_MAX_SPEED   0x1FF
 
#define BRUSHLESS3_DEF_FREQ   25000
 
#define BRUSHLESS3_SPEED_CTRL_1   0x00
 
#define BRUSHLESS3_SPEED_CTRL_2   0x01
 
#define BRUSHLESS3_DEV_CTRL   0x02
 
#define BRUSHLESS3_EE_CTRL   0x03
 
#define BRUSHLESS3_STATUS   0x10
 
#define BRUSHLESS3_MOTOR_SPEED_1   0x11
 
#define BRUSHLESS3_MOTOR_SPEED_2   0x12
 
#define BRUSHLESS3_MOTOR_PERIOD_1   0x13
 
#define BRUSHLESS3_MOTOR_PERIOD_2   0x14
 
#define BRUSHLESS3_MOTOR_KT_1   0x15
 
#define BRUSHLESS3_MOTOR_KT_2   0x16
 
#define BRUSHLESS3_IPD_POSITION   0x19
 
#define BRUSHLESS3_SUPPLY_VOLTAGE   0x1A
 
#define BRUSHLESS3_SPEED_CMD   0x1B
 
#define BRUSHLESS3_SPD_CMD_BUFFER   0x1C
 
#define BRUSHLESS3_FAULT_CODE   0x1E
 
#define BRUSHLESS3_MOTOR_PARAM_1   0x20
 
#define BRUSHLESS3_MOTOR_PARAM_2   0x21
 
#define BRUSHLESS3_MOTOR_PARAM_3   0x22
 
#define BRUSHLESS3_SYS_OPT_1   0x23
 
#define BRUSHLESS3_SYS_OPT_2   0x24
 
#define BRUSHLESS3_SYS_OPT_3   0x25
 
#define BRUSHLESS3_SYS_OPT_4   0x26
 
#define BRUSHLESS3_SYS_OPT_5   0x27
 
#define BRUSHLESS3_SYS_OPT_6   0x28
 
#define BRUSHLESS3_SYS_OPT_7   0x29
 
#define BRUSHLESS3_SYS_OPT_8   0x2A
 
#define BRUSHLESS3_SYS_OPT_9   0x2B
 
#define BRUSHLESS3_PARAM_START_EE_CTRL   0x40
 
#define BRUSHLESS3_PARAM_STOP_EE_CTRL   0x50
 
#define BRUSHLESS3_PARAM_MOTOR_PARAM_1   0x39
 
#define BRUSHLESS3_PARAM_MOTOR_PARAM_2   0x1E
 
#define BRUSHLESS3_PARAM_MOTOR_PARAM_3   0x3A
 
#define BRUSHLESS3_PARAM_SYS_OPT_1   0x08
 
#define BRUSHLESS3_PARAM_SYS_OPT_2   0x50
 
#define BRUSHLESS3_PARAM_SYS_OPT_3   0xDA
 
#define BRUSHLESS3_PARAM_SYS_OPT_4   0xB8
 
#define BRUSHLESS3_PARAM_SYS_OPT_5   0x10
 
#define BRUSHLESS3_PARAM_SYS_OPT_6   0x27
 
#define BRUSHLESS3_PARAM_SYS_OPT_7   0x37
 
#define BRUSHLESS3_PARAM_SYS_OPT_8   0x04
 
#define BRUSHLESS3_PARAM_SYS_OPT_9   0x0C
 
#define BRUSHLESS3_PARAM_DEV_CTRL   0xB6
 

Functions

void brushless3_cfg_setup (brushless3_cfg_t *cfg)
 Config Object Initialization function.
 
err_t brushless3_init (brushless3_t *ctx, brushless3_cfg_t *cfg)
 Initialization function.
 
err_t brushless3_default_cfg (brushless3_t *ctx)
 Click Default Configuration function.
 
err_t brushless3_write_data (brushless3_t *ctx, uint8_t reg_addr, uint8_t write_data)
 Write function.
 
err_t brushless3_read_data (brushless3_t *ctx, uint8_t reg_addr, uint8_t *read_data)
 Read function.
 
err_t brushless3_set_default_param (brushless3_t *ctx)
 Set default parameter function.
 
err_t brushless3_set_pwm_mode (brushless3_t *ctx)
 Set PWM mode function.
 
err_t brushless3_set_an_mode (brushless3_t *ctx)
 Set Analog mode function.
 
err_t brushless3_dis_sleep_mode (brushless3_t *ctx)
 Disable entering into sleep or standby mode function.
 
err_t brushless3_en_config (brushless3_t *ctx)
 Enable the writing to the configuration registers function.
 
err_t brushless3_dis_config (brushless3_t *ctx)
 Disable the writing to the configuration registers function.
 
err_t brushless3_copy_eeprom (brushless3_t *ctx)
 Copy EEPROM data to register function.
 
err_t brushless3_en_write_eeprom (brushless3_t *ctx)
 Enable the writing to the EEPROM registers function.
 
err_t brushless3_dis_write_eeprom (brushless3_t *ctx)
 Disable the writing to the EEPROM registers function.
 
err_t brushless3_check_over_temp (brushless3_t *ctx, uint8_t *over_temp)
 Check indicate device temperature is over its limits function.
 
err_t brushless3_check_sleep_mode (brushless3_t *ctx, uint8_t *sleep_mode)
 Check indicate that device went into sleep or standby mode function.
 
err_t brushless3_check_motor_lock (brushless3_t *ctx, uint8_t *motor_lock)
 Check indicate that the motor is locked function.
 
err_t brushless3_get_supply_voltage (brushless3_t *ctx, float *voltage)
 Get the supply voltage function.
 
err_t brushless3_get_speed_cmd (brushless3_t *ctx, float *speed_cmd)
 Get the speed command ( % ) based on analog or PWM or I2C function.
 
err_t brushless3_check_fault_code (brushless3_t *ctx, uint8_t *fault_code)
 Check fault code function.
 
err_t brushless3_get_speed (brushless3_t *ctx, float *speed)
 Get speed function.
 
err_t brushless3_set_speed (brushless3_t *ctx, uint16_t motor_speed_hz)
 Set speed function.
 
err_t brushless3_set_speed_pwm (brushless3_t *ctx, uint16_t motor_speed_hz)
 Set speed PWM function.
 
err_t brushless3_get_period (brushless3_t *ctx, float *period)
 Get motor period function.
 
err_t brushless3_en_prog_eeprom (brushless3_t *ctx)
 Set prog key function.
 
err_t brushless3_get_vel_const (brushless3_t *ctx, float *velocity)
 Get measured velocity constant function.
 
void brushless3_forward_direction (brushless3_t *ctx)
 Set the direction of rotation in the forward direction function.
 
void brushless3_reverse_direction (brushless3_t *ctx)
 Set the direction of rotation in the reverse direction function.
 
uint8_t brushless3_get_int_pin (brushless3_t *ctx)
 Get Interrupt pin state function.
 
err_t brushless3_set_duty_cycle (brushless3_t *ctx, float duty_cycle)
 Generic sets PWM duty cycle.
 
err_t brushless3_pwm_stop (brushless3_t *ctx)
 Stop PWM module.
 
err_t brushless3_pwm_start (brushless3_t *ctx)
 Start PWM module.
 

Detailed Description

This file contains API for Brushless 3 Click driver.