ambient16 2.0.0.0
ambient16.h File Reference

This file contains API for Ambient 16 Click Driver. More...

#include "drv_digital_in.h"
#include "drv_i2c_master.h"

Go to the source code of this file.

Data Structures

struct  ambient16_t
 Ambient 16 Click context object. More...
 
struct  ambient16_cfg_t
 Ambient 16 Click configuration object. More...
 

Macros

#define AMBIENT16_CONTROL_REG   0x00
 Ambient 16 description register.
 
#define AMBIENT16_TIMING_REG   0x01
 
#define AMBIENT16_INTERRUPT_REG   0x02
 
#define AMBIENT16_TH_LOW_LSB_REG   0x03
 
#define AMBIENT16_TH_LOW_MSB_REG   0x04
 
#define AMBIENT16_TH_HIGH_LSB_REG   0x05
 
#define AMBIENT16_TH_HIGH_MSB_REG   0x06
 
#define AMBIENT16_GAIN_REG   0x07
 
#define AMBIENT16_PART_ID_REG   0x12
 
#define AMBIENT16_DATA0_LSB_REG   0x14
 
#define AMBIENT16_DATA0_MSB_REG   0x15
 
#define AMBIENT16_DATA1_LSB_REG   0x16
 
#define AMBIENT16_DATA1_MSB_REG   0x17
 
#define AMBIENT16_WAIT_REG   0x18
 
#define AMBIENT16_SOFTWARE_RESET   0xE4
 Ambient 16 description setting.
 
#define AMBIENT16_INTERRUPT_RESET   0xE1
 
#define AMBIENT16_ADC_INTERRUPT_ENABLE   0x20
 Ambient 16 interrupt settings.
 
#define AMBIENT16_ADC_ENABLE   0x02
 
#define AMBIENT16_POWER_ENABLE   0x01
 
#define AMBIENT16_UNLATCH_MODE   0x20
 
#define AMBIENT16_LATCH_MODE   0x00
 
#define AMBIENT16_INTERRUPT_ENABLE   0x10
 
#define AMBIENT16_INTERRUPT_DISABLE   0x00
 
#define AMBIENT16_INT_ACTIVE_ON_END_OF_MEASURMENT   0x00
 Ambient 16 interrupt mode settings.
 
#define AMBIENT16_INT_UPDATE_ON_END_OF_MEASURMENT   0x01
 
#define AMBIENT16_INT_UPDATE_ON_2_CONSEC_TRESHOLDS   0x02
 
#define AMBIENT16_INT_UPDATE_ON_3_CONSEC_TRESHOLDS   0x03
 
#define AMBIENT16_INT_UPDATE_ON_4_CONSEC_TRESHOLDS   0x04
 
#define AMBIENT16_INT_UPDATE_ON_5_CONSEC_TRESHOLDS   0x05
 
#define AMBIENT16_INT_UPDATE_ON_6_CONSEC_TRESHOLDS   0x06
 
#define AMBIENT16_INT_UPDATE_ON_7_CONSEC_TRESHOLDS   0x07
 
#define AMBIENT16_INT_UPDATE_ON_8_CONSEC_TRESHOLDS   0x08
 
#define AMBIENT16_INT_UPDATE_ON_9_CONSEC_TRESHOLDS   0x09
 
#define AMBIENT16_INT_UPDATE_ON_10_CONSEC_TRESHOLDS   0x0A
 
#define AMBIENT16_INT_UPDATE_ON_11_CONSEC_TRESHOLDS   0x0B
 
#define AMBIENT16_INT_UPDATE_ON_12_CONSEC_TRESHOLDS   0x0C
 
#define AMBIENT16_INT_UPDATE_ON_13_CONSEC_TRESHOLDS   0x0D
 
#define AMBIENT16_INT_UPDATE_ON_14_CONSEC_TRESHOLDS   0x0E
 
#define AMBIENT16_INT_UPDATE_ON_15_CONSEC_TRESHOLDS   0x0F
 
#define AMBIENT16_X1_GAIN   0x00
 Ambient 16 gain mode settings.
 
#define AMBIENT16_X2_GAIN   0x01
 
#define AMBIENT16_X64_GAIN   0x02
 
#define AMBIENT16_X128_GAIN   0x03
 
#define AMBIENT16_ENABLE_WAIT   0x01
 Ambient 16 wait settings.
 
#define AMBIENT16_DISABLE_WAIT   0x00
 
#define AMBIENT16_INT_STATE_HIGH   0x01
 Ambient 16 INT pin state.
 
#define AMBIENT16_INT_STATE_LOW   0x00
 
#define AMBIENT16_I2C_SLAVE_ADR_0   0x29
 Ambient 16 device address setting.
 
#define AMBIENT16_I2C_SLAVE_ADR_1   0x39
 
#define AMBIENT16_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.
 

Enumerations

enum  ambient16_return_value_t { AMBIENT16_OK = 0 , AMBIENT16_ERROR = -1 }
 Ambient 16 Click return value data. More...
 

Functions

void ambient16_cfg_setup (ambient16_cfg_t *cfg)
 Ambient 16 configuration object setup function.
 
err_t ambient16_init (ambient16_t *ctx, ambient16_cfg_t *cfg)
 Ambient 16 initialization function.
 
err_t ambient16_default_cfg (ambient16_t *ctx)
 Ambient 16 default configuration function.
 
err_t ambient16_generic_write (ambient16_t *ctx, uint8_t reg, uint8_t *tx_buf, uint8_t tx_len)
 Ambient 16 I2C writing function.
 
err_t ambient16_generic_read (ambient16_t *ctx, uint8_t reg, uint8_t *rx_buf, uint8_t rx_len)
 Ambient 16 I2C reading function.
 
uint8_t ambient16_get_int_state (ambient16_t *ctx)
 Ambient 16 get INT state function.
 
err_t ambient16_set_reg (ambient16_t *ctx, uint8_t reg, uint8_t value)
 Ambient 16 set register value function.
 
err_t ambient16_send_cmd (ambient16_t *ctx, uint8_t cmd)
 Ambient 16 send command function.
 
err_t ambient16_sw_reset (ambient16_t *ctx)
 Ambient 16 software reset function.
 
err_t ambient16_int_reset (ambient16_t *ctx)
 Ambient 16 interrupt reset function.
 
err_t ambient16_set_th_low (ambient16_t *ctx, uint16_t th_val)
 Ambient 16 set interrupt threshold lower level function.
 
err_t ambient16_set_th_high (ambient16_t *ctx, uint16_t th_val)
 Ambient 16 set interrupt threshold upper level function.
 
err_t ambient16_set_gain (ambient16_t *ctx, uint8_t data0_gain, uint8_t data1_gain)
 Ambient 16 set ADC gain function.
 
err_t ambient16_get_part_id (ambient16_t *ctx, uint8_t *part_id)
 Ambient 16 get part ID function.
 
err_t ambient16_get_data (ambient16_t *ctx, uint16_t *data0, uint16_t *data1)
 Ambient 16 get ADC data function.
 
err_t ambient16_read_data (ambient16_t *ctx, float *data0, float *data1)
 Ambient 16 get data function.
 
void ambient16_set_wait (ambient16_t *ctx, uint8_t wait_mode)
 Ambient 16 set wait function.
 

Detailed Description

This file contains API for Ambient 16 Click Driver.

Enumeration Type Documentation

◆ ambient16_return_value_t

Ambient 16 Click return value data.

Predefined enum values for driver return values.

Enumerator
AMBIENT16_OK 
AMBIENT16_ERROR