inclinometer3  2.1.0.0
Data Structures | Macros | Enumerations | Functions
inclinometer3.h File Reference

This file contains API for Inclinometer 3 Click Driver. More...

#include "mikrosdk_version.h"
#include "drv_digital_out.h"
#include "drv_digital_in.h"
#include "drv_spi_master.h"
#include "spi_specifics.h"

Go to the source code of this file.

Data Structures

struct  inclinometer3_t
 Inclinometer 3 Click context object. More...
 
struct  inclinometer3_cfg_t
 Inclinometer 3 Click configuration object. More...
 

Macros

#define INCLINOMETER3_REG_ACC_X   0x01
 Inclinometer 3 description register. More...
 
#define INCLINOMETER3_REG_ACC_Y   0x02
 
#define INCLINOMETER3_REG_TEMP   0x05
 
#define INCLINOMETER3_REG_STATUS   0x06
 
#define INCLINOMETER3_REG_ERR_FLAG1   0x07
 
#define INCLINOMETER3_REG_ERR_FLAG2   0x08
 
#define INCLINOMETER3_REG_MODE   0x0D
 
#define INCLINOMETER3_REG_WHOAMI   0x10
 
#define INCLINOMETER3_REG_SERIAL1   0x19
 
#define INCLINOMETER3_REG_SERIAL2   0x1A
 
#define INCLINOMETER3_REG_SELBANK   0x1F
 
#define INCLINOMETER3_CMD_READ_ACC_X   0x040000F7ul
 Inclinometer 3 description operation commands. More...
 
#define INCLINOMETER3_CMD_READ_ACC_Y   0x080000FDul
 
#define INCLINOMETER3_CMD_READ_TEMP   0x140000EFul
 
#define INCLINOMETER3_CMD_READ_STATUS   0x180000E5ul
 
#define INCLINOMETER3_CMD_READ_ERR_FLAG1   0x1C0000E3ul
 
#define INCLINOMETER3_CMD_READ_ERR_FLAG2   0x200000C1ul
 
#define INCLINOMETER3_CMD_READ_CMD   0x340000DFul
 
#define INCLINOMETER3_CMD_CHANGE_TO_MODE_A   0xB400001Ful
 
#define INCLINOMETER3_CMD_CHANGE_TO_MODE_B   0xB4000338ul
 
#define INCLINOMETER3_CMD_POWER_DOWN   0xB400046Bul
 
#define INCLINOMETER3_CMD_WAKE_UP   0xB400001Ful
 
#define INCLINOMETER3_CMD_SW_RESET   0xB4002098ul
 
#define INCLINOMETER3_CMD_READ_WHOAMI   0x40000091ul
 
#define INCLINOMETER3_CMD_READ_SERIAL1   0x640000A7ul
 
#define INCLINOMETER3_CMD_READ_SERIAL2   0x680000ADul
 
#define INCLINOMETER3_CMD_READ_CURRENT_BANK   0x7C0000B3ul
 
#define INCLINOMETER3_CMD_SWITCH_TO_BANK_0   0xFC000073ul
 
#define INCLINOMETER3_CMD_SWITCH_TO_BANK_1   0xFC00016Eul
 
#define INCLINOMETER3_WHOAMI   0xE0
 Inclinometer 3 device ID data value. More...
 
#define INCLINOMETER3_SEL_BANK_0   0
 Inclinometer 3 memory banks and modes selection. More...
 
#define INCLINOMETER3_SEL_BANK_1   1
 
#define INCLINOMETER3_SEL_MODE_A   0
 
#define INCLINOMETER3_SEL_MODE_B   1
 
#define INCLINOMETER3_ACC_SENS_MODE_A   32.768f
 Inclinometer 3 acceel and temperature sensitivity data values. More...
 
#define INCLINOMETER3_ACC_SENS_MODE_B   16.384f
 
#define INCLINOMETER3_TEMP_SENS   18.9f
 
#define INCLINOMETER3_TEMP_CONVERT   273.0f
 
#define INCLINOMETER3_RTN_STS_PROGRESS   0x00
 Inclinometer 3 return status bits. More...
 
#define INCLINOMETER3_RTN_STS_NORMAL   0x01
 
#define INCLINOMETER3_RTN_STS_ERROR   0x03
 
#define INCLINOMETER3_RTN_STS_BITMASK   0x03
 
#define INCLINOMETER3_SET_DATA_SAMPLE_EDGE   SET_SPI_DATA_SAMPLE_EDGE
 Data sample selection. More...
 
#define INCLINOMETER3_SET_DATA_SAMPLE_MIDDLE   SET_SPI_DATA_SAMPLE_MIDDLE
 
#define INCLINOMETER3_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping. More...
 

Enumerations

enum  inclinometer3_return_value_t { INCLINOMETER3_OK = 0, INCLINOMETER3_ERROR = -1 }
 Inclinometer 3 Click return value data. More...
 

Functions

void inclinometer3_cfg_setup (inclinometer3_cfg_t *cfg)
 Inclinometer 3 configuration object setup function. More...
 
err_t inclinometer3_init (inclinometer3_t *ctx, inclinometer3_cfg_t *cfg)
 Inclinometer 3 initialization function. More...
 
err_t inclinometer3_default_cfg (inclinometer3_t *ctx)
 Inclinometer 3 default configuration function. More...
 
err_t inclinometer3_reg_write (inclinometer3_t *ctx, uint8_t reg, uint16_t data_in)
 Inclinometer 3 data writing function. More...
 
err_t inclinometer3_reg_read (inclinometer3_t *ctx, uint8_t reg, uint16_t *data_out)
 Inclinometer 3 data reading function. More...
 
err_t inclinometer3_cmd_write (inclinometer3_t *ctx, uint32_t op_cmd)
 Inclinometer 3 command writing function. More...
 
err_t inclinometer3_cmd_read (inclinometer3_t *ctx, uint32_t op_cmd, uint32_t *data_out)
 Inclinometer 3 command reading function. More...
 
err_t inclinometer3_set_bank (inclinometer3_t *ctx, uint8_t bank)
 Inclinometer 3 set bank function. More...
 
err_t inclinometer3_sw_reset (inclinometer3_t *ctx)
 Inclinometer 3 software reset function. More...
 
err_t inclinometer3_get_sensor_id (inclinometer3_t *ctx, uint8_t *device_id)
 Inclinometer 3 get sensor ID function. More...
 
err_t inclinometer3_get_status (inclinometer3_t *ctx, uint32_t *status)
 Inclinometer 3 get status function. More...
 
err_t inclinometer3_set_mode (inclinometer3_t *ctx, uint8_t mode)
 Inclinometer 3 set mode function. More...
 
err_t inclinometer3_get_axes_data (inclinometer3_t *ctx, int16_t *x_data, int16_t *y_data)
 Inclinometer 3 get the accel data function. More...
 
err_t inclinometer3_get_axes (inclinometer3_t *ctx, float *x_axes, float *y_axes)
 Inclinometer 3 get the accel sensor axes function. More...
 
err_t inclinometer3_get_temp_data (inclinometer3_t *ctx, int16_t *temp_data)
 Inclinometer 3 get the temperature data function. More...
 
err_t inclinometer3_get_temperature (inclinometer3_t *ctx, float *temperature)
 Inclinometer 3 get the temperature function. More...
 

Detailed Description

This file contains API for Inclinometer 3 Click Driver.

Enumeration Type Documentation

◆ inclinometer3_return_value_t

Inclinometer 3 Click return value data.

Predefined enum values for driver return values.

Enumerator
INCLINOMETER3_OK 
INCLINOMETER3_ERROR