accel25 2.1.0.0
accel25.h File Reference

This file contains API for Accel 25 Click Driver. More...

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

Go to the source code of this file.

Data Structures

struct  accel25_t
 Accel 25 Click context object. More...
 
struct  accel25_cfg_t
 Accel 25 Click configuration object. More...
 
struct  accel25_data_t
 Accel 25 Click data structure. More...
 

Macros

#define ACCEL25_REG_INT_SRC0   0x00
 Accel 25 description register.
 
#define ACCEL25_REG_INT_CLR0   0x00
 
#define ACCEL25_REG_INT_SRC1   0x01
 
#define ACCEL25_REG_INT_CLR1   0x01
 
#define ACCEL25_REG_STATUS   0x02
 
#define ACCEL25_REG_XOUT_MSB   0x03
 
#define ACCEL25_REG_XOUT_LSB   0x04
 
#define ACCEL25_REG_YOUT_MSB   0x05
 
#define ACCEL25_REG_YOUT_LSB   0x06
 
#define ACCEL25_REG_ZOUT_MSB   0x07
 
#define ACCEL25_REG_ZOUT_LSB   0x08
 
#define ACCEL25_REG_TOUT   0x09
 
#define ACCEL25_REG_INT_MASK0   0x0A
 
#define ACCEL25_REG_INT_MASK1   0x0B
 
#define ACCEL25_REG_DETECTION   0x0C
 
#define ACCEL25_REG_CONTROL   0x0D
 
#define ACCEL25_REG_DEVICE_ID   0x0E
 
#define ACCEL25_REG_WHO_AM_I   0x0F
 
#define ACCEL25_INT_SRC0_CHORZ   0x80
 Accel 25 description setting.
 
#define ACCEL25_INT_SRC0_CHORXY   0x40
 
#define ACCEL25_INT_SRC0_SHYM   0x08
 
#define ACCEL25_INT_SRC0_SHYP   0x04
 
#define ACCEL25_INT_SRC0_SHXM   0x02
 
#define ACCEL25_INT_SRC0_SHXP   0x01
 
#define ACCEL25_INT_CLR0_ORZC   0x80
 Accel 25 INT_CLR0 register settings.
 
#define ACCEL25_INT_CLR0_ORXYC   0x40
 
#define ACCEL25_INT_CLR0_SHYMC   0x08
 
#define ACCEL25_INT_CLR0_SHYPC   0x04
 
#define ACCEL25_INT_CLR0_SHXMC   0x02
 
#define ACCEL25_INT_CLR0_SHXPC   0x01
 
#define ACCEL25_INT_CLR0_ALL   0xCF
 
#define ACCEL25_INT_SRC1_TILT   0x80
 Accel 25 INT_SRC1 register settings.
 
#define ACCEL25_INT_SRC1_ORZ   0x40
 
#define ACCEL25_INT_SRC1_ORXY_X_PLUS   0x00
 
#define ACCEL25_INT_SRC1_ORXY_Y_PLUS   0x10
 
#define ACCEL25_INT_SRC1_ORXY_X_MINUS   0x20
 
#define ACCEL25_INT_SRC1_ORXY_Y_MINUS   0x30
 
#define ACCEL25_INT_SRC1_ORXY_MASK   0x30
 
#define ACCEL25_INT_SRC1_DRDY   0x01
 
#define ACCEL25_INT_CLR1_SW_RST   0x10
 Accel 25 INT_CLR1 register settings.
 
#define ACCEL25_INT_CLR1_DRDYC   0x01
 
#define ACCEL25_STATUS_ORD   0x10
 Accel 25 STATUS register settings.
 
#define ACCEL25_STATUS_ORIZ_MSB   0x08
 
#define ACCEL25_STATUS_ORIZ_LSB   0x04
 
#define ACCEL25_STATUS_ORIXY_MSB   0x02
 
#define ACCEL25_STATUS_ORIXY_LSB   0x01
 
#define ACCEL25_INT_MASK0_ORZE   0x80
 Accel 25 INT_MASK0 register settings.
 
#define ACCEL25_INT_MASK0_ORXYE   0x40
 
#define ACCEL25_INT_MASK0_SHYME   0x08
 
#define ACCEL25_INT_MASK0_SHYPE   0x04
 
#define ACCEL25_INT_MASK0_SHXME   0x02
 
#define ACCEL25_INT_MASK0_SHXPE   0x01
 
#define ACCEL25_INT_MASK0_NONE   0x00
 
#define ACCEL25_INT_MASK0_ALL   0xCF
 
#define ACCEL25_INT_MASK1_DRDYE   0x01
 Accel 25 INT_MASK1 register settings.
 
#define ACCEL25_DETECTION_SHM   0x80
 Accel 25 DETECTION register settings.
 
#define ACCEL25_DETECTION_SHTH_0p25G   0x00
 
#define ACCEL25_DETECTION_SHTH_0p5G   0x10
 
#define ACCEL25_DETECTION_SHTH_0p75G   0x20
 
#define ACCEL25_DETECTION_SHTH_1G   0x30
 
#define ACCEL25_DETECTION_SHTH_1p25G   0x40
 
#define ACCEL25_DETECTION_SHTH_1p5G   0x50
 
#define ACCEL25_DETECTION_SHTH_1p75G   0x60
 
#define ACCEL25_DETECTION_SHTH_2G   0x70
 
#define ACCEL25_DETECTION_SHTH_MASK   0x70
 
#define ACCEL25_DETECTION_SHC_8   0x00
 
#define ACCEL25_DETECTION_SHC_16   0x04
 
#define ACCEL25_DETECTION_SHC_32   0x08
 
#define ACCEL25_DETECTION_SHC_64   0x0C
 
#define ACCEL25_DETECTION_SHC_MASK   0x0C
 
#define ACCEL25_DETECTION_ORC_16   0x00
 
#define ACCEL25_DETECTION_ORC_32   0x01
 
#define ACCEL25_DETECTION_ORC_64   0x02
 
#define ACCEL25_DETECTION_ORC_128   0x03
 
#define ACCEL25_DETECTION_ORC_MASK   0x03
 
#define ACCEL25_DETECTION_NONE   0x00
 
#define ACCEL25_CONTROL_FSR_2G   0x00
 Accel 25 CONTROL register settings.
 
#define ACCEL25_CONTROL_FSR_4G   0x20
 
#define ACCEL25_CONTROL_FSR_8G   0x40
 
#define ACCEL25_CONTROL_FSR_UNDEFINED   0x60
 
#define ACCEL25_CONTROL_FSR_MASK   0x60
 
#define ACCEL25_CONTROL_PD   0x01
 
#define ACCEL25_ACCEL_RESOLUTION   2048.0f
 Accel 25 measurement calculation settings.
 
#define ACCEL25_TEMP_SENSITIVITY   0.586f
 
#define ACCEL25_TEMP_NOMINAL   25.0f
 
#define ACCEL25_FSR_2G   0
 Accel 25 FSR settings.
 
#define ACCEL25_FSR_4G   1
 
#define ACCEL25_FSR_8G   2
 
#define ACCEL25_DEVICE_ID   0x02
 Accel 25 Device ID register value.
 
#define ACCEL25_PIN_STATE_LOW   0x00
 Accel 25 pin state value.
 
#define ACCEL25_PIN_STATE_HIGH   0x01
 
#define ACCEL25_DEVICE_ADDRESS   0x15
 Accel 25 device address setting.
 
#define ACCEL25_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.
 

Enumerations

enum  accel25_return_value_t { ACCEL25_OK = 0 , ACCEL25_ERROR = -1 }
 Accel 25 Click return value data. More...
 

Functions

void accel25_cfg_setup (accel25_cfg_t *cfg)
 Accel 25 configuration object setup function.
 
err_t accel25_init (accel25_t *ctx, accel25_cfg_t *cfg)
 Accel 25 initialization function.
 
err_t accel25_default_cfg (accel25_t *ctx)
 Accel 25 default configuration function.
 
err_t accel25_generic_write (accel25_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
 Accel 25 I2C writing function.
 
err_t accel25_generic_read (accel25_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
 Accel 25 I2C reading function.
 
err_t accel25_write_register (accel25_t *ctx, uint8_t reg, uint8_t data_in)
 Accel 25 write register function.
 
err_t accel25_read_register (accel25_t *ctx, uint8_t reg, uint8_t *data_out)
 Accel 25 read register function.
 
err_t accel25_check_communication (accel25_t *ctx)
 Accel 25 check communication function.
 
uint8_t accel25_get_int_pin (accel25_t *ctx)
 Accel 25 get int pin function.
 
err_t accel25_soft_reset (accel25_t *ctx)
 Accel 25 soft reset function.
 
err_t accel25_set_full_scale_range (accel25_t *ctx, uint8_t fsr)
 Accel 25 set full scale range function.
 
err_t accel25_read_data (accel25_t *ctx, accel25_data_t *data_out)
 Accel 25 read data function.
 

Detailed Description

This file contains API for Accel 25 Click Driver.

Enumeration Type Documentation

◆ accel25_return_value_t

Accel 25 Click return value data.

Predefined enum values for driver return values.

Enumerator
ACCEL25_OK 
ACCEL25_ERROR