color3  2.0.0.0
Functions
Public function

Functions

void color3_cfg_setup (color3_cfg_t *cfg)
 Config Object Initialization function. More...
 
COLOR3_RETVAL color3_init (color3_t *ctx, color3_cfg_t *cfg)
 Initialization function. More...
 
void color3_generic_write (color3_t *ctx, uint8_t reg, uint8_t *data_buf, uint8_t len)
 Generic write function. More...
 
void color3_generic_read (color3_t *ctx, uint8_t reg, uint8_t *data_buf, uint8_t len)
 Generic read function. More...
 
void color3_normal_wr_byte (color3_t *ctx, uint8_t wr_addr, uint8_t wr_data)
 Generic read function. More...
 
void color3_special_wr_byte (color3_t *ctx, uint8_t wr_addr, uint8_t wr_data)
 Special write byte function. More...
 
uint8_t color3_read_byte (color3_t *ctx, uint8_t rd_addr)
 Read byte function. More...
 
void color3_normal_wr_data (color3_t *ctx, uint8_t wr_addr, uint16_t wr_data)
 Normal write data function. More...
 
void color3_special_wr_data (color3_t *ctx, uint8_t wr_addr, uint16_t wr_data)
 Special write function. More...
 
uint16_t color3_read_data (color3_t *ctx, uint8_t rd_addr)
 Read data function. More...
 
void color3_write_enable_register (color3_t *ctx, uint8_t wr_data)
 Write Enable Register function. More...
 
uint8_t color3_read_enable_register (color3_t *ctx)
 Read Enable Register function. More...
 
void color3_write_rgbc_timing_register (color3_t *ctx, uint8_t wr_data)
 Write RGBC Timing Register function. More...
 
uint8_t color3_read_rgbc_timing_register (color3_t *ctx)
 Read RGBC Timing Register function. More...
 
void color3_write_proxy_timing_register (color3_t *ctx)
 Write Proximity Timing Register function. More...
 
uint8_t color3_read_proxy_timing_register (color3_t *ctx)
 Read Proximity Timing Register function. More...
 
void color3_write_wait_time_register (color3_t *ctx, uint8_t wr_data)
 Write Wait Time Register function. More...
 
uint8_t color3_read_wait_time_register (color3_t *ctx)
 Read Wait Time Register function. More...
 
void color3_set_inter_trsh_lo_val (color3_t *ctx, uint16_t wr_data)
 RGBC interrupt threshold low value function. More...
 
void color3_set_inter_trsh_hi_val (color3_t *ctx, uint16_t wr_data)
 RGBC interrupt threshold high value function. More...
 
void color3_set_proxy_inter_trsh_lo_val (color3_t *ctx, uint16_t wr_data)
 Proximity interrupt threshold low value function. More...
 
void color3_set_proxy_inter_trsh_hi_val (color3_t *ctx, uint16_t wr_data)
 Proximity interrupt threshold high value function. More...
 
void color3_set_interrupt_persistence (color3_t *ctx, uint8_t int_pers)
 Set Interrupt persistence persistence function. More...
 
uint8_t color3_read_interrupt_persistence (color3_t *ctx)
 Read Interrupt persistence function. More...
 
void color3_setproxy_interrupt_persistence (color3_t *ctx, uint8_t int_pers)
 Set Proximity interrupt persistence function. More...
 
uint8_t color3_read_proxy_interrupt_persistence (color3_t *ctx)
 Read Proximity interrupt persistence function. More...
 
void color3_setLongWait (color3_t *ctx, uint8_t lon_wait)
 Set long wait function. More...
 
uint8_t color3_read_long_wait (color3_t *ctx)
 Read long wait function. More...
 
void color3_write_pulse_cnt (color3_t *ctx, uint8_t pulse_cnt)
 Write Proximity Pulse Count function. More...
 
uint8_t color3_read_pulse_cnt (color3_t *ctx)
 Read Proximity Pulse Count function. More...
 
void color3_write_rgbc_gain (color3_t *ctx, uint8_t gain_val)
 Write RGBC Gain Value function. More...
 
uint8_t color3_read_rgbc_gain (color3_t *ctx)
 Read RGBC Gain Value function. More...
 
void color3_set_diode_select (color3_t *ctx, uint8_t dio_sel)
 Set Diode Selection function. More...
 
uint8_t color3_get_diode_select (color3_t *ctx)
 Get Diode Selection function. More...
 
void color3_set_led_str (color3_t *ctx, uint8_t led_str)
 Set LED Strength function. More...
 
uint8_t color3_read_led_str (color3_t *ctx)
 Read LED Strength function. More...
 
uint8_t color3_read_dev_id (color3_t *ctx)
 Read device ID function. More...
 
uint8_t color3_read_dev_stat (color3_t *ctx)
 Read device status function. More...
 
uint16_t color3_read_clear_data (color3_t *ctx)
 Read clear data function. More...
 
uint16_t color3_read_red_data (color3_t *ctx)
 Read red data function. More...
 
uint16_t color3_read_green_data (color3_t *ctx)
 Read green data function. More...
 
uint16_t color3_read_blue_data (color3_t *ctx)
 Read blue data function. More...
 
uint16_t color3_read_proxy_data (color3_t *ctx)
 ead proximity data function. More...
 
uint8_t color3_get_inter_state (color3_t *ctx)
 Get Interrupt state function. More...
 
void color3_set_default_settings (color3_t *ctx)
 Default settings function. More...
 
void color_3_get_rgb_data (color3_t *ctx, uint16_t *red_data, uint16_t *green_data, uint16_t *blue_data)
 Get color data function. More...
 
float color3_get_color_ratio (color3_t *ctx, uint16_t color_data)
 Get color ratio function. More...
 
float color3_get_color_value (color3_t *ctx)
 Get color value function. More...
 
void color_3_get_crgb_data (color3_t *ctx, color3_const_t *data_const)
 Get CRBG data function. More...
 

Detailed Description

Function Documentation

◆ color3_cfg_setup()

void color3_cfg_setup ( color3_cfg_t cfg)

Config Object Initialization function.

Parameters
cfgClick configuration structure.

This function initializes click configuration structure to init state.

Note
All used pins will be set to unconnected state.

◆ color3_generic_read()

void color3_generic_read ( color3_t ctx,
uint8_t  reg,
uint8_t *  data_buf,
uint8_t  len 
)

Generic read function.

Parameters
ctxClick object.
regRegister address.
data_bufOutput data buf
lenNumber of the bytes to be read

This function reads data from the desired register.

◆ color3_generic_write()

void color3_generic_write ( color3_t ctx,
uint8_t  reg,
uint8_t *  data_buf,
uint8_t  len 
)

Generic write function.

Parameters
ctxClick object.
regRegister address.
data_bufData buf to be written.
lenNumber of the bytes in data buf.

This function writes data to the desired register.

◆ color3_get_color_ratio()

float color3_get_color_ratio ( color3_t ctx,
uint16_t  color_data 
)

Get color ratio function.

Parameters
ctxClick object.
color_data16-bit data that represents colorr data.

This function reads data from the desired register.

◆ color3_get_color_value()

float color3_get_color_value ( color3_t ctx)

Get color value function.

Parameters
ctxClick object.

Function is used to figure out dominant color.

◆ color3_get_diode_select()

uint8_t color3_get_diode_select ( color3_t ctx)

Get Diode Selection function.

Parameters
ctxClick object.

Function is used to check diode selection.

◆ color3_get_inter_state()

uint8_t color3_get_inter_state ( color3_t ctx)

Get Interrupt state function.

Parameters
ctxClick object.

Function is used to check if an interrupt has occured.

◆ color3_init()

COLOR3_RETVAL color3_init ( color3_t ctx,
color3_cfg_t cfg 
)

Initialization function.

Parameters
color3Click object.
cfgClick configuration structure.

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

◆ color3_normal_wr_byte()

void color3_normal_wr_byte ( color3_t ctx,
uint8_t  wr_addr,
uint8_t  wr_data 
)

Generic read function.

Parameters
ctxNormal write byte function.
wrAddr8-bit register address.
wrData8-bit data to be written into register.

Function writes 2 bytes of data, with normal settings.

◆ color3_normal_wr_data()

void color3_normal_wr_data ( color3_t ctx,
uint8_t  wr_addr,
uint16_t  wr_data 
)

Normal write data function.

Parameters
ctxClick object.
wr_addr8-bit register address.
wr_ata16-bit data to be written into registers.

Function writes 2 bytes of data, with normal settings.

◆ color3_read_blue_data()

uint16_t color3_read_blue_data ( color3_t ctx)

Read blue data function.

Parameters
ctxClick object.

Function is used to read blue data.

◆ color3_read_byte()

uint8_t color3_read_byte ( color3_t ctx,
uint8_t  rd_addr 
)

Read byte function.

Parameters
ctxClick object.
rd_addr8-bit register address.

Function reads single byte of data from specified register.

◆ color3_read_clear_data()

uint16_t color3_read_clear_data ( color3_t ctx)

Read clear data function.

Parameters
ctxClick object.

Function is used to read clear data.

◆ color3_read_data()

uint16_t color3_read_data ( color3_t ctx,
uint8_t  rd_addr 
)

Read data function.

Parameters
ctxClick object.
rd_addr8-bit register address.

Function reads 2 bytes of data from specified registers.

◆ color3_read_dev_id()

uint8_t color3_read_dev_id ( color3_t ctx)

Read device ID function.

Parameters
ctxClick object.

Function is used to read the device's unique ID number.

◆ color3_read_dev_stat()

uint8_t color3_read_dev_stat ( color3_t ctx)

Read device status function.

Parameters
ctxClick object.

Function is used to read the contents of device status register.

◆ color3_read_enable_register()

uint8_t color3_read_enable_register ( color3_t ctx)

Read Enable Register function.

Parameters
ctxClick object.

Function is used to read from enable register.

◆ color3_read_green_data()

uint16_t color3_read_green_data ( color3_t ctx)

Read green data function.

Parameters
ctxClick object.

Function is used to read green data.

◆ color3_read_interrupt_persistence()

uint8_t color3_read_interrupt_persistence ( color3_t ctx)

Read Interrupt persistence function.

Parameters
ctxClick object.

Function is used to check RGBC interrupt persistence settings.

◆ color3_read_led_str()

uint8_t color3_read_led_str ( color3_t ctx)

Read LED Strength function.

Parameters
ctxClick object.

Function is used to check LED drive strength.

◆ color3_read_long_wait()

uint8_t color3_read_long_wait ( color3_t ctx)

Read long wait function.

Parameters
ctxClick object.

Function is used to check if the long wait is enabled or disabled.

◆ color3_read_proxy_data()

uint16_t color3_read_proxy_data ( color3_t ctx)

ead proximity data function.

Parameters
ctxClick object.

Function is used to read proximity data.

◆ color3_read_proxy_interrupt_persistence()

uint8_t color3_read_proxy_interrupt_persistence ( color3_t ctx)

Read Proximity interrupt persistence function.

Parameters
ctxClick object.

Function is used to check proximity interrupt persistence settings.

◆ color3_read_proxy_timing_register()

uint8_t color3_read_proxy_timing_register ( color3_t ctx)

Read Proximity Timing Register function.

Parameters
ctxClick object.
regRegister address.
data_bufOutput data buf
lenNumber of the bytes to be read

Function is used to read from proximity timing register.

◆ color3_read_pulse_cnt()

uint8_t color3_read_pulse_cnt ( color3_t ctx)

Read Proximity Pulse Count function.

Parameters
ctxClick object.

Function is used to check set number of proximity pulses that will be transmitted.

◆ color3_read_red_data()

uint16_t color3_read_red_data ( color3_t ctx)

Read red data function.

Parameters
ctxClick object.

Function is used to read red data.

◆ color3_read_rgbc_gain()

uint8_t color3_read_rgbc_gain ( color3_t ctx)

Read RGBC Gain Value function.

Parameters
ctxClick object.

Function is used to check RGBC Gain Value.

◆ color3_read_rgbc_timing_register()

uint8_t color3_read_rgbc_timing_register ( color3_t ctx)

Read RGBC Timing Register function.

Parameters
ctxClick object.
regRegister address.
data_bufOutput data buf
lenNumber of the bytes to be read

Function is used to read from RGBC timing register..

◆ color3_read_wait_time_register()

uint8_t color3_read_wait_time_register ( color3_t ctx)

Read Wait Time Register function.

Parameters
ctxClick object.

Function is used to read from wait time register.

◆ color3_set_default_settings()

void color3_set_default_settings ( color3_t ctx)

Default settings function.

Parameters
ctxClick object.

Function is used to apply default settings.

◆ color3_set_diode_select()

void color3_set_diode_select ( color3_t ctx,
uint8_t  dio_sel 
)

Set Diode Selection function.

Parameters
ctxClick object.
dio_sel8-bit data that is written into control register.

Function is used to perform diode selection.

◆ color3_set_inter_trsh_hi_val()

void color3_set_inter_trsh_hi_val ( color3_t ctx,
uint16_t  wr_data 
)

RGBC interrupt threshold high value function.

Parameters
ctxClick object.
wr_data16-bit data to be written into RGBC interrupt threshold high value registers.

Function is used to set RGBC interrupt threshold high value.

◆ color3_set_inter_trsh_lo_val()

void color3_set_inter_trsh_lo_val ( color3_t ctx,
uint16_t  wr_data 
)

RGBC interrupt threshold low value function.

Parameters
ctxClick object.
wr_data16-bit data to be written into RGBC interrupt threshold low value registers.

Function is used to set RGBC interrupt threshold low value.

◆ color3_set_interrupt_persistence()

void color3_set_interrupt_persistence ( color3_t ctx,
uint8_t  int_pers 
)

Set Interrupt persistence persistence function.

Parameters
ctxClick object.
int_pers8-bit data to be written into wait time register.

Function is used to control the filtering interrupt capabilities of the device.

◆ color3_set_led_str()

void color3_set_led_str ( color3_t ctx,
uint8_t  led_str 
)

Set LED Strength function.

Parameters
ctxClick object.
led_str8-bit data that is written into control register.

Function is used to set LED drive strength.

◆ color3_set_proxy_inter_trsh_hi_val()

void color3_set_proxy_inter_trsh_hi_val ( color3_t ctx,
uint16_t  wr_data 
)

Proximity interrupt threshold high value function.

Parameters
ctxClick object.
wr_data16-bit data to be written into proximity interrupt threshold high value registers.

Function is used to set proximity interrupt threshold high value.

◆ color3_set_proxy_inter_trsh_lo_val()

void color3_set_proxy_inter_trsh_lo_val ( color3_t ctx,
uint16_t  wr_data 
)

Proximity interrupt threshold low value function.

Parameters
ctxClick object.
wr_data16-bit data to be written into proximity interrupt threshold low value registers.

Function is used to set proximity interrupt threshold low value.

◆ color3_setLongWait()

void color3_setLongWait ( color3_t ctx,
uint8_t  lon_wait 
)

Set long wait function.

Parameters
ctxClick object.
lon_wait8-bit data that is written into configuration register.

Function is used to enable or disable long wait by writing into configuration register.

◆ color3_setproxy_interrupt_persistence()

void color3_setproxy_interrupt_persistence ( color3_t ctx,
uint8_t  int_pers 
)

Set Proximity interrupt persistence function.

Parameters
ctxClick object.
int_pers8-bit data that represents proximity interrupt persistence.

Function is used to control the filtering interrupt capabilities of the device.

◆ color3_special_wr_byte()

void color3_special_wr_byte ( color3_t ctx,
uint8_t  wr_addr,
uint8_t  wr_data 
)

Special write byte function.

Parameters
ctxClick object.
wrAddr8-bit register address.
wrData8-bit data to be written into register.

Function writes 2 bytes of data, with special settings.

◆ color3_special_wr_data()

void color3_special_wr_data ( color3_t ctx,
uint8_t  wr_addr,
uint16_t  wr_data 
)

Special write function.

Parameters
ctxClick object.
wr_addr8-bit register address.
wr_data16-bit data to be written into registers.

Function writes 2 bytes of data, with special settings.

◆ color3_write_enable_register()

void color3_write_enable_register ( color3_t ctx,
uint8_t  wr_data 
)

Write Enable Register function.

Parameters
ctxClick object.
wr_data8-bit data to be written into enable register.

Function is used to write into enable register.

◆ color3_write_proxy_timing_register()

void color3_write_proxy_timing_register ( color3_t ctx)

Write Proximity Timing Register function.

Parameters
ctxClick object.
wr_data8-bit data to be written into proximity timing register.

Function is used to write into proximity timing register.

◆ color3_write_pulse_cnt()

void color3_write_pulse_cnt ( color3_t ctx,
uint8_t  pulse_cnt 
)

Write Proximity Pulse Count function.

Parameters
ctxClick object.
pulse_cnt8-bit data that is written into proximity pulse count register.

Function sets the number of proximity pulses that will be transmitted.

◆ color3_write_rgbc_gain()

void color3_write_rgbc_gain ( color3_t ctx,
uint8_t  gain_val 
)

Write RGBC Gain Value function.

Parameters
ctxClick object.
gain_val8-bit data that is written into control register.

Function is used to set RGBC Gain Value.

◆ color3_write_rgbc_timing_register()

void color3_write_rgbc_timing_register ( color3_t ctx,
uint8_t  wr_data 
)

Write RGBC Timing Register function.

Parameters
ctxClick object.
wr_data8-bit data to be written into RGBC timing register.

Function is used to write into RGBC timing register.

◆ color3_write_wait_time_register()

void color3_write_wait_time_register ( color3_t ctx,
uint8_t  wr_data 
)

Write Wait Time Register function.

Parameters
ctxClick object.
wr_data8-bit data to be written into wait time register.

Function is used to write into wait time register.

◆ color_3_get_crgb_data()

void color_3_get_crgb_data ( color3_t ctx,
color3_const_t data_const 
)

Get CRBG data function.

Parameters
ctxClick object.
clear_data16-bit data that represents clear data.
red_data16-bit data that represents red data.
green_data16-bit data that represents green data.
blue_data16-bit data that represents blue data.

Function is used to read clear, red, blue and green data values.

◆ color_3_get_rgb_data()

void color_3_get_rgb_data ( color3_t ctx,
uint16_t *  red_data,
uint16_t *  green_data,
uint16_t *  blue_data 
)

Get color data function.

Parameters
ctxClick object.
red_data16-bit data that represents red data.
green_data16-bit data that represents green data.
blue_data16-bit data that represents blue data.

Function is used to read red, green and blue data.