brushless3  2.0.0.0
Data Structures | Macros | Functions
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_RETVAL   uint8_t
 
#define BRUSHLESS3_OK   0x00
 
#define BRUSHLESS3_INIT_ERROR   0xFF
 
#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. More...
 
BRUSHLESS3_RETVAL brushless3_init (brushless3_t *ctx, brushless3_cfg_t *cfg)
 Initialization function. More...
 
void brushless3_default_cfg (brushless3_t *ctx)
 Click Default Configuration function. More...
 
void brushless3_write_data (brushless3_t *ctx, uint8_t reg_addr, uint8_t write_data)
 Write function. More...
 
uint8_t brushless3_read_data (brushless3_t *ctx, uint8_t reg_addr)
 Read function. More...
 
void brushless3_set_default_param (brushless3_t *ctx)
 Set default parameter function. More...
 
void brushless3_set_pwm_mode (brushless3_t *ctx)
 Set PWM mode function. More...
 
void brushless3_set_an_mode (brushless3_t *ctx)
 Set Analog mode function. More...
 
void brushless3_disable_sleep_mode (brushless3_t *ctx)
 Disable entering into sleep or standby mode function. More...
 
void brushless3_enable_config (brushless3_t *ctx)
 Enable the writing to the configuration registers function. More...
 
void brushless3_disable_config (brushless3_t *ctx)
 Disable the writing to the configuration registers function. More...
 
void brushless3_copy_eeprom (brushless3_t *ctx)
 Copy EEPROM data to register function. More...
 
void brushless3_enable_write_eeprom (brushless3_t *ctx)
 Enable the writing to the EEPROM registers function. More...
 
void brushless3_disable_write_eeprom (brushless3_t *ctx)
 Disable the writing to the EEPROM registers function. More...
 
uint8_t brushless3_check_over_temp (brushless3_t *ctx)
 Check indicate device temperature is over its limits function. More...
 
uint8_t brushless3_check_sleep_mode (brushless3_t *ctx)
 Check indicate that device went into sleep or standby mode function. More...
 
uint8_t brushless3_check_motor_lock (brushless3_t *ctx)
 Check indicate that the motor is locked function. More...
 
float brushless3_get_supply_voltage_value (brushless3_t *ctx)
 Get the supply voltage function. More...
 
float brushless3_get_speed_cmd (brushless3_t *ctx)
 Get the speed command ( % ) based on analog or PWM or I2C function. More...
 
uint8_t brushless3_check_fault_code (brushless3_t *ctx)
 Check fault code function. More...
 
float brushless3_get_speed (brushless3_t *ctx)
 Get speed function. More...
 
void brushless3_set_speed (brushless3_t *ctx, uint16_t motor_speed_hz)
 Set speed function. More...
 
void brushless3_set_speedPWM (brushless3_t *ctx, uint16_t motor_speed_hz)
 Set speed PWM function. More...
 
float brushless3_get_period (brushless3_t *ctx)
 Get motor period function. More...
 
void brushless3_enable_programming_eeprom (brushless3_t *ctx)
 Set prog key function. More...
 
float brushless3_get_velocity_constant (brushless3_t *ctx)
 Get measured velocity constant function. More...
 
void brushless3_forward_direction (brushless3_t *ctx)
 Set the direction of rotation in the forward direction function. More...
 
void brushless3_reverse_direction (brushless3_t *ctx)
 Set the direction of rotation in the reverse direction function. More...
 
uint8_t brushless3_get_interrupt_status (brushless3_t *ctx)
 Get Interrupt pin state function. More...
 
void brushless3_set_duty_cycle (brushless3_t *ctx, float duty_cycle)
 Generic sets PWM duty cycle. More...
 
void brushless3_pwm_stop (brushless3_t *ctx)
 Stop PWM module. More...
 
void brushless3_pwm_start (brushless3_t *ctx)
 Start PWM module. More...
 

Detailed Description

This file contains API for Brushless 3 Click driver.