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

This file contains API for 6DOF IMU 23 Click Driver. More...

#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  c6dofimu23_t
 6DOF IMU 23 Click context object. More...
 
struct  c6dofimu23_cfg_t
 6DOF IMU 23 Click configuration object. More...
 
struct  c6dofimu23_axis_t
 6DOF IMU 23 Click axes data structure. More...
 

Macros

#define C6DOFIMU23_OFFSET_X_DATA   0x00
 6DOF IMU 23 description offset bank 0. More...
 
#define C6DOFIMU23_OFFSET_Y_DATA   0x01
 
#define C6DOFIMU23_OFFSET_Z_DATA   0x02
 
#define C6DOFIMU23_OFFSET_TEMPERATURE_1   0x03
 
#define C6DOFIMU23_OFFSET_ACCEL_X_DATA   0x04
 
#define C6DOFIMU23_OFFSET_ACCEL_Y_DATA   0x05
 
#define C6DOFIMU23_OFFSET_ACCEL_Z_DATA   0x06
 
#define C6DOFIMU23_OFFSET_TEMPERATURE_2   0x07
 
#define C6DOFIMU23_OFFSET_LR_ACCEL_X_DATA   0x08
 
#define C6DOFIMU23_OFFSET_LR_ACCEL_Y_DATA   0x09
 
#define C6DOFIMU23_OFFSET_LR_ACCEL_Z_DATA   0x0A
 
#define C6DOFIMU23_OFFSET_FIXED_VALUE   0x0B
 
#define C6DOFIMU23_OFFSET_FILTER_SETTINGS_YZ   0x0C
 
#define C6DOFIMU23_OFFSET_FILTER_SETTINGS_X   0x0E
 
#define C6DOFIMU23_OFFSET_TEMPERATURE_DIF   0x0F
 
#define C6DOFIMU23_OFFSET_DC_TRIGGER   0x16
 
#define C6DOFIMU23_OFFSET_TEST   0x17
 
#define C6DOFIMU23_OFFSET_RESET   0x18
 
#define C6DOFIMU23_OFFSET_MODE   0x19
 
#define C6DOFIMU23_OFFSET_ID   0x1B
 
#define C6DOFIMU23_OFFSET_HW_REV   0x1C
 
#define C6DOFIMU23_OFFSET_ID_CODE_3   0x1D
 
#define C6DOFIMU23_OFFSET_ID_CODE_4   0x1E
 
#define C6DOFIMU23_OFFSET_BANK_SELECTION   0x1F
 
#define C6DOFIMU23_OFFSET_SELF_TEST_ACCEL   0x11
 6DOF IMU 23 description offset bank 1. More...
 
#define C6DOFIMU23_OFFSET_SELF_TEST_GYRO   0x12
 
#define C6DOFIMU23_OFFSET_WHO_AM_I   0x0E
 
#define C6DOFIMU23_OFFSET_ODR_CFG_1   0x11
 6DOF IMU 23 description offset bank 6. More...
 
#define C6DOFIMU23_OFFSET_ODR_CFG_2   0x13
 
#define C6DOFIMU23_OFFSET_ODR_CFG_3   0x14
 
#define C6DOFIMU23_OFFSET_ODR_CFG_4   0x14
 
#define C6DOFIMU23_OFFSET_ODR_CFG_5   0x15
 
#define C6DOFIMU23_OFFSET_ODR_CFG_6   0x16
 
#define C6DOFIMU23_OFFSET_SENSITIVITY_CFG   0x14
 6DOF IMU 23 description offset bank 7. More...
 
#define C6DOFIMU23_FIXED_VALUE   0xAA55
 6DOF IMU 23 fixed value. More...
 
#define C6DOFIMU23_DATA_RESOLUTION   32768.0f
 6DOF IMU 23 resolution. More...
 
#define C6DOFIMU23_ACCEL_FS_DEFAULT   16.384f
 
#define C6DOFIMU23_GYRO_FS_DEFAULT   655.36f
 
#define C6DOFIMU23_TEMP_DATA_RESOLUTION   20.0f
 
#define C6DOFIMU23_TEMP_DATA_OFFSET   25.0f
 
#define C6DOFIMU23_SET_DATA_SAMPLE_EDGE   SET_SPI_DATA_SAMPLE_EDGE
 Data sample selection. More...
 
#define C6DOFIMU23_SET_DATA_SAMPLE_MIDDLE   SET_SPI_DATA_SAMPLE_MIDDLE
 
#define C6DOFIMU23_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping. More...
 

Enumerations

enum  c6dofimu23_return_value_t { C6DOFIMU23_OK = 0, C6DOFIMU23_ERROR = -1 }
 6DOF IMU 23 Click return value data. More...
 

Functions

void c6dofimu23_cfg_setup (c6dofimu23_cfg_t *cfg)
 6DOF IMU 23 configuration object setup function. More...
 
err_t c6dofimu23_init (c6dofimu23_t *ctx, c6dofimu23_cfg_t *cfg)
 6DOF IMU 23 initialization function. More...
 
err_t c6dofimu23_default_cfg (c6dofimu23_t *ctx)
 6DOF IMU 23 default configuration function. More...
 
err_t c6dofimu23_reg_write (c6dofimu23_t *ctx, uint8_t address, uint16_t data_in)
 6DOF IMU 23 reg write function. More...
 
err_t c6dofimu23_reg_read (c6dofimu23_t *ctx, uint8_t address, uint16_t *data_out)
 6DOF IMU 23 reg read function. More...
 
err_t c6dofimu23_check_communication (c6dofimu23_t *ctx)
 6DOF IMU 23 check communication function. More...
 
void c6dofimu23_device_enable (c6dofimu23_t *ctx)
 6DOF IMU 23 device enable function. More...
 
void c6dofimu23_device_disable (c6dofimu23_t *ctx)
 6DOF IMU 23 device disable function. More...
 
uint8_t c6dofimu23_get_odr (c6dofimu23_t *ctx)
 6DOF IMU 23 get odr function. More...
 
err_t c6dofimu23_get_accel_data (c6dofimu23_t *ctx, c6dofimu23_axis_t *acc_axis)
 6DOF IMU 23 get the accel sensor axes function. More...
 
err_t c6dofimu23_get_gyro_data (c6dofimu23_t *ctx, c6dofimu23_axis_t *gyro_axis)
 6DOF IMU 23 get the gyro sensor axes function. More...
 
err_t c6dofimu23_get_temperature (c6dofimu23_t *ctx, float *temperature)
 6DOF IMU 23 get the internal temperature function. More...
 

Detailed Description

This file contains API for 6DOF IMU 23 Click Driver.

Enumeration Type Documentation

◆ c6dofimu23_return_value_t

6DOF IMU 23 Click return value data.

Predefined enum values for driver return values.

Enumerator
C6DOFIMU23_OK 
C6DOFIMU23_ERROR