brushless23  2.0.0.0
Modules | Functions
Brushless 23 Click Driver

API for configuring and manipulating Brushless 23 Click driver. More...

Modules

 Brushless 23 Registers List
 List of registers of Brushless 23 Click driver.
 
 Brushless 23 Registers Settings
 Settings for registers of Brushless 23 Click driver.
 
 Brushless 23 MikroBUS Map
 MikroBUS pin mapping of Brushless 23 Click driver.
 

Functions

void brushless23_cfg_setup (brushless23_cfg_t *cfg)
 Brushless 23 configuration object setup function. More...
 
err_t brushless23_init (brushless23_t *ctx, brushless23_cfg_t *cfg)
 Brushless 23 initialization function. More...
 
err_t brushless23_default_cfg (brushless23_t *ctx)
 Brushless 23 default configuration function. More...
 
err_t brushless23_write_register (brushless23_t *ctx, uint8_t reg, uint8_t data_in)
 Brushless 23 write register function. More...
 
err_t brushless23_read_register (brushless23_t *ctx, uint8_t reg, uint8_t *data_out)
 Brushless 23 read register function. More...
 
err_t brushless23_pwm_set_duty_cycle (brushless23_t *ctx, float duty_cycle)
 Brushless 23 sets PWM duty cycle. More...
 
err_t brushless23_pwm_stop (brushless23_t *ctx)
 Brushless 23 stop PWM module. More...
 
err_t brushless23_pwm_start (brushless23_t *ctx)
 Brushless 23 start PWM module. More...
 
err_t brushless23_read_an_pin_value (brushless23_t *ctx, uint16_t *data_out)
 Brushless 23 read AN pin value function. More...
 
err_t brushless23_read_an_pin_voltage (brushless23_t *ctx, float *data_out)
 Brushless 23 read AN pin voltage level function. More...
 
void brushless23_set_sby_pin (brushless23_t *ctx, uint8_t state)
 Brushless 23 set sby pin function. More...
 
void brushless23_set_direction (brushless23_t *ctx, uint8_t dir)
 Brushless 23 set direction function. More...
 
void brushless23_switch_direction (brushless23_t *ctx)
 Brushless 23 switch direction function. More...
 
uint8_t brushless23_get_int_pin (brushless23_t *ctx)
 Brushless 22 get int pin function. More...
 
err_t brushless23_get_motor_speed (brushless23_t *ctx, float *motor_speed_hz)
 Brushless 23 get motor speed function. More...
 
err_t brushless23_set_start_duty (brushless23_t *ctx, float duty_cycle)
 Brushless 23 set start duty function. More...
 
err_t brushless23_set_stop_duty (brushless23_t *ctx, float duty_cycle)
 Brushless 23 set stop duty function. More...
 
err_t brushless23_set_max_duty (brushless23_t *ctx, float duty_cycle)
 Brushless 23 set max duty function. More...
 
err_t brushless23_set_change_duty (brushless23_t *ctx, float duty_cycle)
 Brushless 23 set change duty function. More...
 
err_t brushless23_set_start_rpm (brushless23_t *ctx, float duty_cycle)
 Brushless 23 set start rpm function. More...
 
err_t brushless23_set_duty_cycle (brushless23_t *ctx, float duty_cycle)
 Brushless 23 set duty cycle function. More...
 

Detailed Description

API for configuring and manipulating Brushless 23 Click driver.

Function Documentation

◆ brushless23_cfg_setup()

void brushless23_cfg_setup ( brushless23_cfg_t cfg)

Brushless 23 configuration object setup function.

This function initializes click configuration structure to initial values.

Parameters
[out]cfg: Click configuration structure. See brushless23_cfg_t object definition for detailed explanation.
Returns
Nothing.
Note
The all used pins will be set to unconnected state.

◆ brushless23_default_cfg()

err_t brushless23_default_cfg ( brushless23_t ctx)

Brushless 23 default configuration function.

This function executes a default configuration of Brushless 23 click board.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
This function can consist any necessary configuration or setting to put device into operating mode.

◆ brushless23_get_int_pin()

uint8_t brushless23_get_int_pin ( brushless23_t ctx)

Brushless 22 get int pin function.

This function returns the INT pin logic state.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
Returns
Pin logic state.
Note
None.

◆ brushless23_get_motor_speed()

err_t brushless23_get_motor_speed ( brushless23_t ctx,
float *  motor_speed_hz 
)

Brushless 23 get motor speed function.

This function reads the motor speed in Hz.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[out]motor_speed_hz: Motor speed in Hz.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_init()

err_t brushless23_init ( brushless23_t ctx,
brushless23_cfg_t cfg 
)

Brushless 23 initialization function.

This function initializes all necessary pins and peripherals used for this click board.

Parameters
[out]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]cfg: Click configuration structure. See brushless23_cfg_t object definition for detailed explanation.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_pwm_set_duty_cycle()

err_t brushless23_pwm_set_duty_cycle ( brushless23_t ctx,
float  duty_cycle 
)

Brushless 23 sets PWM duty cycle.

This function sets the PWM duty cycle in percentages ( Range[ 0..1 ] ).

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]duty_cycle: PWM duty cycle.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_pwm_start()

err_t brushless23_pwm_start ( brushless23_t ctx)

Brushless 23 start PWM module.

This function starts the PWM module output.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_pwm_stop()

err_t brushless23_pwm_stop ( brushless23_t ctx)

Brushless 23 stop PWM module.

This function stops the PWM module output.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_read_an_pin_value()

err_t brushless23_read_an_pin_value ( brushless23_t ctx,
uint16_t *  data_out 
)

Brushless 23 read AN pin value function.

This function reads results of AD conversion of the AN pin.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[out]data_out: Output ADC result.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_read_an_pin_voltage()

err_t brushless23_read_an_pin_voltage ( brushless23_t ctx,
float *  data_out 
)

Brushless 23 read AN pin voltage level function.

This function reads results of AD conversion of the AN pin and converts them to proportional voltage level.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[out]data_out: Output voltage level of the analog pin [V].
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
The conversion to voltage depends on the entered configuration of the ADC (resolution, reference voltage).

◆ brushless23_read_register()

err_t brushless23_read_register ( brushless23_t ctx,
uint8_t  reg,
uint8_t *  data_out 
)

Brushless 23 read register function.

This function reads a data byte from the selected register by using I2C serial interface.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]reg: Register address.
[out]data_out: Output read data.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_set_change_duty()

err_t brushless23_set_change_duty ( brushless23_t ctx,
float  duty_cycle 
)

Brushless 23 set change duty function.

This function sets the change duty cycle.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]duty_cycle: Duty cycle in range 0.004 - 0.996.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_set_direction()

void brushless23_set_direction ( brushless23_t ctx,
uint8_t  dir 
)

Brushless 23 set direction function.

This function sets the motor direction.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]dir
  • 0 - Clockwise,
  • 1 - Counter-Clockwise.
Returns
None.
Note
None.

◆ brushless23_set_duty_cycle()

err_t brushless23_set_duty_cycle ( brushless23_t ctx,
float  duty_cycle 
)

Brushless 23 set duty cycle function.

This function sets the duty cycle in percentages ( Range[ 0..1 ] ).

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]duty_cycle: Duty cycle in range 0.0 - 1.0.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
This function can only be used when the click SPD switch is configured in I2C mode.

◆ brushless23_set_max_duty()

err_t brushless23_set_max_duty ( brushless23_t ctx,
float  duty_cycle 
)

Brushless 23 set max duty function.

This function sets the max duty cycle.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]duty_cycle: Duty cycle in range 0.502 - 1.0.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_set_sby_pin()

void brushless23_set_sby_pin ( brushless23_t ctx,
uint8_t  state 
)

Brushless 23 set sby pin function.

This function sets the SBY pin state.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]state
  • 0 - Standby,
  • 1 - Normal operation.
Returns
None.
Note
None.

◆ brushless23_set_start_duty()

err_t brushless23_set_start_duty ( brushless23_t ctx,
float  duty_cycle 
)

Brushless 23 set start duty function.

This function sets the start duty cycle.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]duty_cycle: Duty cycle in range 0.0 - 0.498.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_set_start_rpm()

err_t brushless23_set_start_rpm ( brushless23_t ctx,
float  duty_cycle 
)

Brushless 23 set start rpm function.

This function sets the start rpm duty cycle.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]duty_cycle: Duty cycle in range 0.0 - 0.498.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_set_stop_duty()

err_t brushless23_set_stop_duty ( brushless23_t ctx,
float  duty_cycle 
)

Brushless 23 set stop duty function.

This function sets the stop duty cycle.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]duty_cycle: Duty cycle in range 0.0 - 0.496.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.

◆ brushless23_switch_direction()

void brushless23_switch_direction ( brushless23_t ctx)

Brushless 23 switch direction function.

This function switches the direction by toggling the DIR pin state.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
Returns
None.
Note
None.

◆ brushless23_write_register()

err_t brushless23_write_register ( brushless23_t ctx,
uint8_t  reg,
uint8_t  data_in 
)

Brushless 23 write register function.

This function writes a desired data byte to the selected register by using I2C serial interface.

Parameters
[in]ctx: Click context object. See brushless23_t object definition for detailed explanation.
[in]reg: Register address.
[in]data_in: Data to be written.
Returns
  • 0 - Success,
  • -1 - Error. See #err_t definition for detailed explanation.
Note
None.