gyro7 2.0.0.0
gyro7.h File Reference

This file contains API for Gyro 7 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  gyro7_t
 Gyro 7 Click context object. More...
 
struct  gyro7_cfg_t
 Gyro 7 Click configuration object. More...
 

Macros

#define GYRO7_REG_DLPF_B1_H_Y_AXIS   0x02
 Gyro 7 register map.
 
#define GYRO7_REG_DLPF_B1_L_Y_AXIS   0x09
 
#define GYRO7_REG_DLPF_B0B2_H_X_AXIS   0x0E
 
#define GYRO7_REG_DLPF_B0B2_L_X_AXIS   0x0F
 
#define GYRO7_REG_DLPF_B1_H_X_AXIS   0x10
 
#define GYRO7_REG_DLPF_B1_L_X_AXIS   0x11
 
#define GYRO7_REG_DLPF_B0B2_H_Y_AXIS   0x12
 
#define GYRO7_REG_XG_OFFS_USRH   0x13
 
#define GYRO7_REG_XG_OFFS_USRL   0x14
 
#define GYRO7_REG_YG_OFFS_USRH   0x15
 
#define GYRO7_REG_YG_OFFS_USRL   0x16
 
#define GYRO7_REG_SMPLRT_DIV   0x19
 
#define GYRO7_REG_CONFIG   0x1A
 
#define GYRO7_REG_GYRO_CONFIG   0x1B
 
#define GYRO7_REG_HPF_DLPF_RST_AZ   0x26
 
#define GYRO7_REG_INT_PIN_CFG   0x37
 
#define GYRO7_REG_INT_ENABLE   0x38
 
#define GYRO7_REG_INT_STATUS   0x3A
 
#define GYRO7_REG_TEMP_OUT_H   0x41
 
#define GYRO7_REG_TEMP_OUT_L   0x42
 
#define GYRO7_REG_GYRO_XOUT_H   0x43
 
#define GYRO7_REG_GYRO_XOUT_L   0x44
 
#define GYRO7_REG_GYRO_YOUT_H   0x45
 
#define GYRO7_REG_GYRO_YOUT_L   0x46
 
#define GYRO7_REG_USER_CTRL   0x6A
 
#define GYRO7_REG_PWR_MGMT_1   0x6B
 
#define GYRO7_REG_DLPF_B0B2_L_Y_AXIS   0x70
 
#define GYRO7_REG_DLPF_A1_H   0x71
 
#define GYRO7_REG_DLPF_A1_L   0x72
 
#define GYRO7_REG_DLPF_A2_H   0x73
 
#define GYRO7_REG_DLPF_A2_L   0x74
 
#define GYRO7_REG_WHO_AM_I   0x75
 
#define GYRO7_REG_SPI_SEL   0x76
 
#define GYRO7_DLPF_B0B2_40_160_HZ   0x0004
 Gyro 7 DLPF settings.
 
#define GYRO7_DLPF_B0B2_80_320_HZ   0x0011
 
#define GYRO7_DLPF_B0B2_160_640_HZ   0x0040
 
#define GYRO7_DLPF_B0B2_250_HZ   0x0095
 
#define GYRO7_DLPF_B0B2_500_HZ   0x0212
 
#define GYRO7_DLPF_B1_40_160_HZ   0x0008
 
#define GYRO7_DLPF_B1_80_320_HZ   0x001C
 
#define GYRO7_DLPF_B1_160_640_HZ   0x006D
 
#define GYRO7_DLPF_B1_250_HZ   0x0100
 
#define GYRO7_DLPF_B1_500_HZ   0x0387
 
#define GYRO7_DLPF_A1_40_160_HZ   0x82D7
 
#define GYRO7_DLPF_A1_80_320_HZ   0x85AF
 
#define GYRO7_DLPF_A1_160_640_HZ   0x8B59
 
#define GYRO7_DLPF_A1_250_HZ   0x91AE
 
#define GYRO7_DLPF_A1_500_HZ   0xA2EE
 
#define GYRO7_DLPF_A2_40_160_HZ   0x3D38
 
#define GYRO7_DLPF_A2_80_320_HZ   0x3A8F
 
#define GYRO7_DLPF_A2_160_640_HZ   0x3594
 
#define GYRO7_DLPF_A2_250_HZ   0x307C
 
#define GYRO7_DLPF_A2_500_HZ   0x24BD
 
#define GYRO7_DLPF_40_160_HZ   0x00
 
#define GYRO7_DLPF_80_320_HZ   0x01
 
#define GYRO7_DLPF_160_640_HZ   0x02
 
#define GYRO7_DLPF_250_HZ   0x03
 
#define GYRO7_DLPF_500_HZ   0x04
 
#define GYRO7_CONFIG_HPF_ORDER_BYPASS_HPF   0x00
 Gyro 7 configuration settings.
 
#define GYRO7_CONFIG_HPF_ORDER_ONE_HPF   0x40
 
#define GYRO7_CONFIG_HPF_ORDER_TWO_HPF   0x60
 
#define GYRO7_CONFIG_HPF_CFG_M_FACTOR_9   0x00
 
#define GYRO7_CONFIG_HPF_CFG_M_FACTOR_11   0x04
 
#define GYRO7_CONFIG_HPF_CFG_M_FACTOR_12   0x08
 
#define GYRO7_CONFIG_HPF_CFG_M_FACTOR_13   0x0C
 
#define GYRO7_CONFIG_HPF_CFG_M_FACTOR_14   0x10
 
#define GYRO7_CONFIG_HPF_CFG_M_FACTOR_15   0x14
 
#define GYRO7_CONFIG_HPF_CFG_M_FACTOR_16   0x18
 
#define GYRO7_CONFIG_HPF_CFG_M_FACTOR_17   0x1C
 
#define GYRO7_CONFIG_DLPF_CFG_BYPASS_DLPF   0x00
 
#define GYRO7_CONFIG_DLPF_CFG_ENABLE_DLPF   0x02
 
#define GYRO7_SAMPLE_RATE_31p25_HZ   255
 Gyro 7 sample rate settings.
 
#define GYRO7_SAMPLE_RATE_40_HZ   199
 
#define GYRO7_SAMPLE_RATE_80_HZ   99
 
#define GYRO7_SAMPLE_RATE_100_HZ   79
 
#define GYRO7_SAMPLE_RATE_200_HZ   39
 
#define GYRO7_SAMPLE_RATE_400_HZ   19
 
#define GYRO7_SAMPLE_RATE_800_HZ   9
 
#define GYRO7_SAMPLE_RATE_1000_HZ   7
 
#define GYRO7_SAMPLE_RATE_2000_HZ   3
 
#define GYRO7_SAMPLE_RATE_4000_HZ   1
 
#define GYRO7_SAMPLE_RATE_8000_HZ   0
 
#define GYRO7_INT_PIN_CFG_INT_LEVEL   0x80
 Gyro 7 interrupt pin config settings.
 
#define GYRO7_INT_PIN_CFG_INT_OPEN   0x40
 
#define GYRO7_INT_PIN_CFG_LATCH_INT_EN   0x20
 
#define GYRO7_INT_PIN_CFG_INT_RD_CLEAR   0x10
 
#define GYRO7_INT_ENABLE_DATA_RDY_EN   0x01
 Gyro 7 interrupt enable settings.
 
#define GYRO7_PWR_MGMT_1_DEVICE_RESET   0x80
 Gyro 7 power management 1 settings.
 
#define GYRO7_PWR_MGMT_1_SLEEP   0x40
 
#define GYRO7_PWR_MGMT_1_INTERNAL_OSC   0x00
 
#define GYRO7_PWR_MGMT_1_PLL_OSC   0x01
 
#define GYRO7_GYRO_CONFIG_XG_ST   0x80
 Gyro 7 gyro configuration settings.
 
#define GYRO7_GYRO_CONFIG_YG_ST   0x40
 
#define GYRO7_GYRO_CONFIG_FS_SEL_46p5_DPS   0x00
 
#define GYRO7_GYRO_CONFIG_FS_SEL_93_DPS   0x08
 
#define GYRO7_GYRO_CONFIG_FS_SEL_187_DPS   0x10
 
#define GYRO7_GYRO_CONFIG_FS_SEL_374_DPS   0x18
 
#define GYRO7_GYRO_CONFIG_FS_SEL_BITS_MASK   0x18
 
#define GYRO7_GYRO_CONFIG_FCHOICE_B   0x01
 
#define GYRO7_GYRO_SENSITIVITY_FS_SEL_0   700.0
 Gyro 7 gyro sensitivity scale factor.
 
#define GYRO7_GYRO_SENSITIVITY_FS_SEL_1   350.0
 
#define GYRO7_GYRO_SENSITIVITY_FS_SEL_2   175.0
 
#define GYRO7_GYRO_SENSITIVITY_FS_SEL_3   87.5
 
#define GYRO7_TEMP_SENSITIVITY   123.0
 Gyro 7 temperature calculation constant.
 
#define GYRO7_WHO_AM_I   0x88
 Gyro 7 WHO AM I register value.
 
#define GYRO7_SPI_READ_WRITE_BIT   0x80
 Gyro 7 SPI Read/Write bit setting.
 
#define GYRO7_SET_DATA_SAMPLE_EDGE   SET_SPI_DATA_SAMPLE_EDGE
 Data sample selection.
 
#define GYRO7_SET_DATA_SAMPLE_MIDDLE   SET_SPI_DATA_SAMPLE_MIDDLE
 
#define GYRO7_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.
 

Enumerations

enum  gyro7_return_value_t { GYRO7_OK = 0 , GYRO7_ERROR = -1 }
 Gyro 7 Click return value data. More...
 

Functions

void gyro7_cfg_setup (gyro7_cfg_t *cfg)
 Gyro 7 configuration object setup function.
 
err_t gyro7_init (gyro7_t *ctx, gyro7_cfg_t *cfg)
 Gyro 7 initialization function.
 
err_t gyro7_default_cfg (gyro7_t *ctx)
 Gyro 7 default configuration function.
 
err_t gyro7_generic_write (gyro7_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
 Gyro 7 data writing function.
 
err_t gyro7_generic_read (gyro7_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
 Gyro 7 data reading function.
 
err_t gyro7_write_register (gyro7_t *ctx, uint8_t reg, uint8_t data_in)
 Gyro 7 write register function.
 
err_t gyro7_read_register (gyro7_t *ctx, uint8_t reg, uint8_t *data_out)
 Gyro 7 read register function.
 
err_t gyro7_check_communication (gyro7_t *ctx)
 Gyro 7 check communication function.
 
uint8_t gyro7_get_int_pin (gyro7_t *ctx)
 Gyro 7 get int pin function.
 
err_t gyro7_set_dlpf_config (gyro7_t *ctx, uint8_t freq)
 Gyro 7 set DLPF config function.
 
err_t gyro7_read_gyroscope (gyro7_t *ctx, float *x_axis, float *y_axis)
 Gyro 7 read gyroscope function.
 
err_t gyro7_read_temperature (gyro7_t *ctx, float *temperature)
 Gyro 7 read temperature function.
 

Detailed Description

This file contains API for Gyro 7 Click Driver.

Enumeration Type Documentation

◆ gyro7_return_value_t

Gyro 7 Click return value data.

Predefined enum values for driver return values.

Enumerator
GYRO7_OK 
GYRO7_ERROR