c3dhall3 2.0.0.0
c3dhall3.h File Reference

This file contains API for 3D Hall 3 Click driver. More...

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

Go to the source code of this file.

Data Structures

struct  c3dhall3_s
 Click ctx object definition. More...
 
struct  c3dhall3_cfg_t
 Click configuration structure definition. More...
 

Macros

#define C3DHALL3_MAP_MIKROBUS(cfg, mikrobus)
 
#define C3DHALL3_MASTER_I2C   0
 
#define C3DHALL3_MASTER_SPI   1
 
#define C3DHALL3_RETVAL   uint8_t
 
#define C3DHALL3_OK   0x00
 
#define C3DHALL3_INIT_ERROR   0xFF
 
#define C3DHALL3_OFFSET_X_REG_L   0x45
 
#define C3DHALL3_OFFSET_Y_REG_L   0x47
 
#define C3DHALL3_OFFSET_Z_REG_L   0x49
 
#define C3DHALL3_INT_CRTL   0x63
 
#define C3DHALL3_INT_SOURCE   0x64
 
#define C3DHALL3_INT_THS_L   0x65
 
#define C3DHALL3_STATUS   0x67
 
#define C3DHALL3_OUTX_L   0x68
 
#define C3DHALL3_OUTY_L   0x6A
 
#define C3DHALL3_OUTZ_L   0x6C
 
#define C3DHALL3_CONFIGURATION_REGISTER_A   0x60
 
#define C3DHALL3_CONFIGURATION_REGISTER_B   0x61
 
#define C3DHALL3_CONFIGURATION_REGISTER_C   0x62
 
#define C3DHALL3_INTERRUPT_CONTROL   0x63
 
#define C3DHALL3_TEMPERATURE_L   0x6E
 
#define C3DHALL3_TEMPERATURE_H   0x6F
 
#define C3DHALL3_CFGA_TEMPERATURE_COMPENSATION   0x80
 
#define C3DHALL3_CFGA_REBOOT_MEMORY   0x40
 
#define C3DHALL3_CFGA_SOFT_RESET   0x20
 
#define C3DHALL3_CFGA_LOW_POWER_MODE   0x10
 
#define C3DHALL3_CFGA_OUTPUT_DATA_RATE_10   0x00
 
#define C3DHALL3_CFGA_OUTPUT_DATA_RATE_20   0x04
 
#define C3DHALL3_CFGA_OUTPUT_DATA_RATE_50   0x08
 
#define C3DHALL3_CFGA_OUTPUT_DATA_RATE_100   0x0C
 
#define C3DHALL3_CFGA_MODE_CONTINIOUS   0x00
 
#define C3DHALL3_CFGA_MODE_SINGLE   0x01
 
#define C3DHALL3_CFGA_MODE_IDLE   0x02
 
#define C3DHALL3_CFGA_MODE_IDLE_DEFAULT   0x03
 
#define C3DHALL3_CFGB_OFFSET_CANCELLATION_SINGLE_MODE   0x10
 
#define C3DHALL3_CFGB_INT_ON_DATAOFF   0x08
 
#define C3DHALL3_CFGB_SET_PULSE_FREQUENCY_EVERY_63_ODR   0x00
 
#define C3DHALL3_CFGB_SET_PULSE_FREQUENCY_AFTER_PD   0x04
 
#define C3DHALL3_CFGB_OFFSET_CANCELLATION   0x02
 
#define C3DHALL3_CFGB_LOW_PASS_FILTER_ODR_2   0x00
 
#define C3DHALL3_CFGB_LOW_PASS_FILTER_ODR_4   0x01
 
#define C3DHALL3_CFGC_INTERRUPT_ON_INT   0x40
 
#define C3DHALL3_CFGC_I2C_DISABLE   0x20
 
#define C3DHALL3_CFGC_ASYNC_DATA_READ   0x10
 
#define C3DHALL3_CFGC_DATA_INVERT   0x08
 
#define C3DHALL3_CFGC_SELF_TEST   0x02
 
#define C3DHALL3_CFGC_DATA_READY_ON_INT   0x01
 
#define C3DHALL3_INTCTRL_INTERRUPT_ON_X_AXIS   0x80
 
#define C3DHALL3_INTCTRL_INTERRUPT_ON_Y_AXIS   0x40
 
#define C3DHALL3_INTCTRL_INTERRUPT_ON_Z_AXIS   0x20
 
#define C3DHALL3_INTCTRL_INTERRUPT_POLARITY_LOW   0x00
 
#define C3DHALL3_INTCTRL_INTERRUPT_POLARITY_HIGH   0x40
 
#define C3DHALL3_INTCTRL_INTERRUPT_BIT_LATCHED   0x00
 
#define C3DHALL3_INTCTRL_INTERRUPT_BIT_PULSED   0x20
 
#define C3DHALL3_INTCTRL_INTERRUPT_ENABLE   0x01
 

Typedefs

typedef uint8_t c3dhall3_select_t
 Communication type.
 
typedef void(* c3dhall3_master_io_t) (struct c3dhall3_s *, uint8_t, uint8_t *, uint8_t)
 Master Input/Output type.
 
typedef struct c3dhall3_s c3dhall3_t
 Click ctx object definition.
 

Functions

void c3dhall3_cfg_setup (c3dhall3_cfg_t *cfg)
 Config Object Initialization function.
 
C3DHALL3_RETVAL c3dhall3_init (c3dhall3_t *ctx, c3dhall3_cfg_t *cfg)
 Initialization function.
 
void c3dhall3_default_cfg (c3dhall3_t *ctx)
 Click Default Configuration function.
 
void c3dhall3_generic_write (c3dhall3_t *ctx, uint8_t reg, uint8_t *data_buf, uint8_t len)
 Generic write function.
 
void c3dhall3_generic_read (c3dhall3_t *ctx, uint8_t reg, uint8_t *data_buf, uint8_t len)
 Generic read function.
 
uint8_t c3dhall3_read_status (c3dhall3_t *ctx)
 Read status register.
 
int16_t c3dhall3_read_x (c3dhall3_t *ctx)
 Read X value.
 
int16_t c3dhall3_read_y (c3dhall3_t *ctx)
 Read Y value.
 
int16_t c3dhall3_read_z (c3dhall3_t *ctx)
 Read Z value.
 
void c3dhall3_read_xyz (c3dhall3_t *ctx, int16_t *out_xyz)
 Read XYZ value.
 
void c3dhall3_write_offset (c3dhall3_t *ctx, uint8_t axis, uint16_t offset)
 Write offset value.
 
uint8_t c3dhall3_read_interrupt_source (c3dhall3_t *ctx)
 Read interrupt source.
 
void c3dhall3_interrupt_threshold (c3dhall3_t *ctx, uint16_t threshold)
 Set Interrupt Threshold.
 
uint8_t c3dhall3_check_int_pin (c3dhall3_t *ctx)
 Check status of the int pin.
 

Detailed Description

This file contains API for 3D Hall 3 Click driver.