compiled unsuccessful but not sure if it works

Fork of LSM6DS3 by adam&chuang

Committer:
adam_z
Date:
Thu Feb 25 07:49:16 2016 +0000
Revision:
3:d5307f077753
Parent:
0:301b2cb34ead
come and get it

Who changed what in which revision?

UserRevisionLine numberNew contents of line
adam_z 0:301b2cb34ead 1 #ifndef __LSM6DS3_Types_H__
adam_z 0:301b2cb34ead 2 #define __LSM6DS3_Types_H__
adam_z 0:301b2cb34ead 3
adam_z 0:301b2cb34ead 4 /*******************************************************************************
adam_z 0:301b2cb34ead 5 * Register : TEST_PAGE
adam_z 0:301b2cb34ead 6 * Address : 0X00
adam_z 0:301b2cb34ead 7 * Bit Group Name: FLASH_PAGE
adam_z 0:301b2cb34ead 8 * Permission : RW
adam_z 0:301b2cb34ead 9 *******************************************************************************/
adam_z 0:301b2cb34ead 10 #define FLASH_PAGE 0x40
adam_z 0:301b2cb34ead 11
adam_z 0:301b2cb34ead 12 /*******************************************************************************
adam_z 0:301b2cb34ead 13 * Register : RAM_ACCESS
adam_z 0:301b2cb34ead 14 * Address : 0X01
adam_z 0:301b2cb34ead 15 * Bit Group Name: PROG_RAM1
adam_z 0:301b2cb34ead 16 * Permission : RW
adam_z 0:301b2cb34ead 17 *******************************************************************************/
adam_z 0:301b2cb34ead 18 typedef enum {
adam_z 0:301b2cb34ead 19 LSM6DS3_ACC_GYRO_PROG_RAM1_DISABLED = 0x00,
adam_z 0:301b2cb34ead 20 LSM6DS3_ACC_GYRO_PROG_RAM1_ENABLED = 0x01,
adam_z 0:301b2cb34ead 21 } LSM6DS3_ACC_GYRO_PROG_RAM1_t;
adam_z 0:301b2cb34ead 22
adam_z 0:301b2cb34ead 23 /*******************************************************************************
adam_z 0:301b2cb34ead 24 * Register : RAM_ACCESS
adam_z 0:301b2cb34ead 25 * Address : 0X01
adam_z 0:301b2cb34ead 26 * Bit Group Name: CUSTOMROM1
adam_z 0:301b2cb34ead 27 * Permission : RW
adam_z 0:301b2cb34ead 28 *******************************************************************************/
adam_z 0:301b2cb34ead 29 typedef enum {
adam_z 0:301b2cb34ead 30 LSM6DS3_ACC_GYRO_CUSTOMROM1_DISABLED = 0x00,
adam_z 0:301b2cb34ead 31 LSM6DS3_ACC_GYRO_CUSTOMROM1_ENABLED = 0x04,
adam_z 0:301b2cb34ead 32 } LSM6DS3_ACC_GYRO_CUSTOMROM1_t;
adam_z 0:301b2cb34ead 33
adam_z 0:301b2cb34ead 34 /*******************************************************************************
adam_z 0:301b2cb34ead 35 * Register : RAM_ACCESS
adam_z 0:301b2cb34ead 36 * Address : 0X01
adam_z 0:301b2cb34ead 37 * Bit Group Name: RAM_PAGE
adam_z 0:301b2cb34ead 38 * Permission : RW
adam_z 0:301b2cb34ead 39 *******************************************************************************/
adam_z 0:301b2cb34ead 40 typedef enum {
adam_z 0:301b2cb34ead 41 LSM6DS3_ACC_GYRO_RAM_PAGE_DISABLED = 0x00,
adam_z 0:301b2cb34ead 42 LSM6DS3_ACC_GYRO_RAM_PAGE_ENABLED = 0x80,
adam_z 0:301b2cb34ead 43 } LSM6DS3_ACC_GYRO_RAM_PAGE_t;
adam_z 0:301b2cb34ead 44
adam_z 0:301b2cb34ead 45 /*******************************************************************************
adam_z 0:301b2cb34ead 46 * Register : SENSOR_SYNC_TIME
adam_z 0:301b2cb34ead 47 * Address : 0X04
adam_z 0:301b2cb34ead 48 * Bit Group Name: TPH
adam_z 0:301b2cb34ead 49 * Permission : RW
adam_z 0:301b2cb34ead 50 *******************************************************************************/
adam_z 0:301b2cb34ead 51 #define LSM6DS3_ACC_GYRO_TPH_MASK 0xFF
adam_z 0:301b2cb34ead 52 #define LSM6DS3_ACC_GYRO_TPH_POSITION 0
adam_z 0:301b2cb34ead 53
adam_z 0:301b2cb34ead 54 /*******************************************************************************
adam_z 0:301b2cb34ead 55 * Register : SENSOR_SYNC_EN
adam_z 0:301b2cb34ead 56 * Address : 0X05
adam_z 0:301b2cb34ead 57 * Bit Group Name: SYNC_EN
adam_z 0:301b2cb34ead 58 * Permission : RW
adam_z 0:301b2cb34ead 59 *******************************************************************************/
adam_z 0:301b2cb34ead 60 typedef enum {
adam_z 0:301b2cb34ead 61 LSM6DS3_ACC_GYRO_SYNC_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 62 LSM6DS3_ACC_GYRO_SYNC_EN_ENABLED = 0x01,
adam_z 0:301b2cb34ead 63 } LSM6DS3_ACC_GYRO_SYNC_EN_t;
adam_z 0:301b2cb34ead 64
adam_z 0:301b2cb34ead 65 /*******************************************************************************
adam_z 0:301b2cb34ead 66 * Register : SENSOR_SYNC_EN
adam_z 0:301b2cb34ead 67 * Address : 0X05
adam_z 0:301b2cb34ead 68 * Bit Group Name: HP_RST
adam_z 0:301b2cb34ead 69 * Permission : RW
adam_z 0:301b2cb34ead 70 *******************************************************************************/
adam_z 0:301b2cb34ead 71 typedef enum {
adam_z 0:301b2cb34ead 72 LSM6DS3_ACC_GYRO_HP_RST_RST_OFF = 0x00,
adam_z 0:301b2cb34ead 73 LSM6DS3_ACC_GYRO_HP_RST_RST_ON = 0x02,
adam_z 0:301b2cb34ead 74 } LSM6DS3_ACC_GYRO_HP_RST_t;
adam_z 0:301b2cb34ead 75
adam_z 0:301b2cb34ead 76 /*******************************************************************************
adam_z 0:301b2cb34ead 77 * Register : FIFO_CTRL1
adam_z 0:301b2cb34ead 78 * Address : 0X06
adam_z 0:301b2cb34ead 79 * Bit Group Name: WTM_FIFO
adam_z 0:301b2cb34ead 80 * Permission : RW
adam_z 0:301b2cb34ead 81 *******************************************************************************/
adam_z 0:301b2cb34ead 82 #define LSM6DS3_ACC_GYRO_WTM_FIFO_CTRL1_MASK 0xFF
adam_z 0:301b2cb34ead 83 #define LSM6DS3_ACC_GYRO_WTM_FIFO_CTRL1_POSITION 0
adam_z 0:301b2cb34ead 84 #define LSM6DS3_ACC_GYRO_WTM_FIFO_CTRL2_MASK 0x0F
adam_z 0:301b2cb34ead 85 #define LSM6DS3_ACC_GYRO_WTM_FIFO_CTRL2_POSITION 0
adam_z 0:301b2cb34ead 86
adam_z 0:301b2cb34ead 87 /*******************************************************************************
adam_z 0:301b2cb34ead 88 * Register : FIFO_CTRL2
adam_z 0:301b2cb34ead 89 * Address : 0X07
adam_z 0:301b2cb34ead 90 * Bit Group Name: TIM_PEDO_FIFO_DRDY
adam_z 0:301b2cb34ead 91 * Permission : RW
adam_z 0:301b2cb34ead 92 *******************************************************************************/
adam_z 0:301b2cb34ead 93 typedef enum {
adam_z 0:301b2cb34ead 94 LSM6DS3_ACC_GYRO_TIM_PEDO_FIFO_DRDY_DISABLED = 0x00,
adam_z 0:301b2cb34ead 95 LSM6DS3_ACC_GYRO_TIM_PEDO_FIFO_DRDY_ENABLED = 0x40,
adam_z 0:301b2cb34ead 96 } LSM6DS3_ACC_GYRO_TIM_PEDO_FIFO_DRDY_t;
adam_z 0:301b2cb34ead 97
adam_z 0:301b2cb34ead 98 /*******************************************************************************
adam_z 0:301b2cb34ead 99 * Register : FIFO_CTRL2
adam_z 0:301b2cb34ead 100 * Address : 0X07
adam_z 0:301b2cb34ead 101 * Bit Group Name: TIM_PEDO_FIFO_EN
adam_z 0:301b2cb34ead 102 * Permission : RW
adam_z 0:301b2cb34ead 103 *******************************************************************************/
adam_z 0:301b2cb34ead 104 typedef enum {
adam_z 0:301b2cb34ead 105 LSM6DS3_ACC_GYRO_TIM_PEDO_FIFO_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 106 LSM6DS3_ACC_GYRO_TIM_PEDO_FIFO_EN_ENABLED = 0x80,
adam_z 0:301b2cb34ead 107 } LSM6DS3_ACC_GYRO_TIM_PEDO_FIFO_EN_t;
adam_z 0:301b2cb34ead 108
adam_z 0:301b2cb34ead 109 /*******************************************************************************
adam_z 0:301b2cb34ead 110 * Register : FIFO_CTRL3
adam_z 0:301b2cb34ead 111 * Address : 0X08
adam_z 0:301b2cb34ead 112 * Bit Group Name: DEC_FIFO_XL
adam_z 0:301b2cb34ead 113 * Permission : RW
adam_z 0:301b2cb34ead 114 *******************************************************************************/
adam_z 0:301b2cb34ead 115 typedef enum {
adam_z 0:301b2cb34ead 116 LSM6DS3_ACC_GYRO_DEC_FIFO_XL_DATA_NOT_IN_FIFO = 0x00,
adam_z 0:301b2cb34ead 117 LSM6DS3_ACC_GYRO_DEC_FIFO_XL_NO_DECIMATION = 0x01,
adam_z 0:301b2cb34ead 118 LSM6DS3_ACC_GYRO_DEC_FIFO_XL_DECIMATION_BY_2 = 0x02,
adam_z 0:301b2cb34ead 119 LSM6DS3_ACC_GYRO_DEC_FIFO_XL_DECIMATION_BY_3 = 0x03,
adam_z 0:301b2cb34ead 120 LSM6DS3_ACC_GYRO_DEC_FIFO_XL_DECIMATION_BY_4 = 0x04,
adam_z 0:301b2cb34ead 121 LSM6DS3_ACC_GYRO_DEC_FIFO_XL_DECIMATION_BY_8 = 0x05,
adam_z 0:301b2cb34ead 122 LSM6DS3_ACC_GYRO_DEC_FIFO_XL_DECIMATION_BY_16 = 0x06,
adam_z 0:301b2cb34ead 123 LSM6DS3_ACC_GYRO_DEC_FIFO_XL_DECIMATION_BY_32 = 0x07,
adam_z 0:301b2cb34ead 124 } LSM6DS3_ACC_GYRO_DEC_FIFO_XL_t;
adam_z 0:301b2cb34ead 125
adam_z 0:301b2cb34ead 126 /*******************************************************************************
adam_z 0:301b2cb34ead 127 * Register : FIFO_CTRL3
adam_z 0:301b2cb34ead 128 * Address : 0X08
adam_z 0:301b2cb34ead 129 * Bit Group Name: DEC_FIFO_G
adam_z 0:301b2cb34ead 130 * Permission : RW
adam_z 0:301b2cb34ead 131 *******************************************************************************/
adam_z 0:301b2cb34ead 132 typedef enum {
adam_z 0:301b2cb34ead 133 LSM6DS3_ACC_GYRO_DEC_FIFO_G_DATA_NOT_IN_FIFO = 0x00,
adam_z 0:301b2cb34ead 134 LSM6DS3_ACC_GYRO_DEC_FIFO_G_NO_DECIMATION = 0x08,
adam_z 0:301b2cb34ead 135 LSM6DS3_ACC_GYRO_DEC_FIFO_G_DECIMATION_BY_2 = 0x10,
adam_z 0:301b2cb34ead 136 LSM6DS3_ACC_GYRO_DEC_FIFO_G_DECIMATION_BY_3 = 0x18,
adam_z 0:301b2cb34ead 137 LSM6DS3_ACC_GYRO_DEC_FIFO_G_DECIMATION_BY_4 = 0x20,
adam_z 0:301b2cb34ead 138 LSM6DS3_ACC_GYRO_DEC_FIFO_G_DECIMATION_BY_8 = 0x28,
adam_z 0:301b2cb34ead 139 LSM6DS3_ACC_GYRO_DEC_FIFO_G_DECIMATION_BY_16 = 0x30,
adam_z 0:301b2cb34ead 140 LSM6DS3_ACC_GYRO_DEC_FIFO_G_DECIMATION_BY_32 = 0x38,
adam_z 0:301b2cb34ead 141 } LSM6DS3_ACC_GYRO_DEC_FIFO_G_t;
adam_z 0:301b2cb34ead 142
adam_z 0:301b2cb34ead 143 /*******************************************************************************
adam_z 0:301b2cb34ead 144 * Register : FIFO_CTRL4
adam_z 0:301b2cb34ead 145 * Address : 0X09
adam_z 0:301b2cb34ead 146 * Bit Group Name: DEC_FIFO_SLV0
adam_z 0:301b2cb34ead 147 * Permission : RW
adam_z 0:301b2cb34ead 148 *******************************************************************************/
adam_z 0:301b2cb34ead 149 typedef enum {
adam_z 0:301b2cb34ead 150 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV0_DATA_NOT_IN_FIFO = 0x00,
adam_z 0:301b2cb34ead 151 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV0_NO_DECIMATION = 0x01,
adam_z 0:301b2cb34ead 152 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV0_DECIMATION_BY_2 = 0x02,
adam_z 0:301b2cb34ead 153 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV0_DECIMATION_BY_3 = 0x03,
adam_z 0:301b2cb34ead 154 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV0_DECIMATION_BY_4 = 0x04,
adam_z 0:301b2cb34ead 155 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV0_DECIMATION_BY_8 = 0x05,
adam_z 0:301b2cb34ead 156 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV0_DECIMATION_BY_16 = 0x06,
adam_z 0:301b2cb34ead 157 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV0_DECIMATION_BY_32 = 0x07,
adam_z 0:301b2cb34ead 158 } LSM6DS3_ACC_GYRO_DEC_FIFO_SLV0_t;
adam_z 0:301b2cb34ead 159
adam_z 0:301b2cb34ead 160 /*******************************************************************************
adam_z 0:301b2cb34ead 161 * Register : FIFO_CTRL4
adam_z 0:301b2cb34ead 162 * Address : 0X09
adam_z 0:301b2cb34ead 163 * Bit Group Name: DEC_FIFO_SLV1
adam_z 0:301b2cb34ead 164 * Permission : RW
adam_z 0:301b2cb34ead 165 *******************************************************************************/
adam_z 0:301b2cb34ead 166 typedef enum {
adam_z 0:301b2cb34ead 167 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV1_DATA_NOT_IN_FIFO = 0x00,
adam_z 0:301b2cb34ead 168 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV1_NO_DECIMATION = 0x08,
adam_z 0:301b2cb34ead 169 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV1_DECIMATION_BY_2 = 0x10,
adam_z 0:301b2cb34ead 170 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV1_DECIMATION_BY_3 = 0x18,
adam_z 0:301b2cb34ead 171 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV1_DECIMATION_BY_4 = 0x20,
adam_z 0:301b2cb34ead 172 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV1_DECIMATION_BY_8 = 0x28,
adam_z 0:301b2cb34ead 173 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV1_DECIMATION_BY_16 = 0x30,
adam_z 0:301b2cb34ead 174 LSM6DS3_ACC_GYRO_DEC_FIFO_SLV1_DECIMATION_BY_32 = 0x38,
adam_z 0:301b2cb34ead 175 } LSM6DS3_ACC_GYRO_DEC_FIFO_SLV1_t;
adam_z 0:301b2cb34ead 176
adam_z 0:301b2cb34ead 177 /*******************************************************************************
adam_z 0:301b2cb34ead 178 * Register : FIFO_CTRL4
adam_z 0:301b2cb34ead 179 * Address : 0X09
adam_z 0:301b2cb34ead 180 * Bit Group Name: HI_DATA_ONLY
adam_z 0:301b2cb34ead 181 * Permission : RW
adam_z 0:301b2cb34ead 182 *******************************************************************************/
adam_z 0:301b2cb34ead 183 typedef enum {
adam_z 0:301b2cb34ead 184 LSM6DS3_ACC_GYRO_HI_DATA_ONLY_DISABLED = 0x00,
adam_z 0:301b2cb34ead 185 LSM6DS3_ACC_GYRO_HI_DATA_ONLY_ENABLED = 0x40,
adam_z 0:301b2cb34ead 186 } LSM6DS3_ACC_GYRO_HI_DATA_ONLY_t;
adam_z 0:301b2cb34ead 187
adam_z 0:301b2cb34ead 188 /*******************************************************************************
adam_z 0:301b2cb34ead 189 * Register : FIFO_CTRL5
adam_z 0:301b2cb34ead 190 * Address : 0X0A
adam_z 0:301b2cb34ead 191 * Bit Group Name: FIFO_MODE
adam_z 0:301b2cb34ead 192 * Permission : RW
adam_z 0:301b2cb34ead 193 *******************************************************************************/
adam_z 0:301b2cb34ead 194 typedef enum {
adam_z 0:301b2cb34ead 195 LSM6DS3_ACC_GYRO_FIFO_MODE_BYPASS = 0x00,
adam_z 0:301b2cb34ead 196 LSM6DS3_ACC_GYRO_FIFO_MODE_FIFO = 0x01,
adam_z 0:301b2cb34ead 197 LSM6DS3_ACC_GYRO_FIFO_MODE_STREAM = 0x02,
adam_z 0:301b2cb34ead 198 LSM6DS3_ACC_GYRO_FIFO_MODE_STF = 0x03,
adam_z 0:301b2cb34ead 199 LSM6DS3_ACC_GYRO_FIFO_MODE_BTS = 0x04,
adam_z 0:301b2cb34ead 200 LSM6DS3_ACC_GYRO_FIFO_MODE_DYN_STREAM = 0x05,
adam_z 0:301b2cb34ead 201 LSM6DS3_ACC_GYRO_FIFO_MODE_DYN_STREAM_2 = 0x06,
adam_z 0:301b2cb34ead 202 LSM6DS3_ACC_GYRO_FIFO_MODE_BTF = 0x07,
adam_z 0:301b2cb34ead 203 } LSM6DS3_ACC_GYRO_FIFO_MODE_t;
adam_z 0:301b2cb34ead 204
adam_z 0:301b2cb34ead 205 /*******************************************************************************
adam_z 0:301b2cb34ead 206 * Register : FIFO_CTRL5
adam_z 0:301b2cb34ead 207 * Address : 0X0A
adam_z 0:301b2cb34ead 208 * Bit Group Name: ODR_FIFO
adam_z 0:301b2cb34ead 209 * Permission : RW
adam_z 0:301b2cb34ead 210 *******************************************************************************/
adam_z 0:301b2cb34ead 211 typedef enum {
adam_z 0:301b2cb34ead 212 LSM6DS3_ACC_GYRO_ODR_FIFO_10Hz = 0x08,
adam_z 0:301b2cb34ead 213 LSM6DS3_ACC_GYRO_ODR_FIFO_25Hz = 0x10,
adam_z 0:301b2cb34ead 214 LSM6DS3_ACC_GYRO_ODR_FIFO_50Hz = 0x18,
adam_z 0:301b2cb34ead 215 LSM6DS3_ACC_GYRO_ODR_FIFO_100Hz = 0x20,
adam_z 0:301b2cb34ead 216 LSM6DS3_ACC_GYRO_ODR_FIFO_200Hz = 0x28,
adam_z 0:301b2cb34ead 217 LSM6DS3_ACC_GYRO_ODR_FIFO_400Hz = 0x30,
adam_z 0:301b2cb34ead 218 LSM6DS3_ACC_GYRO_ODR_FIFO_800Hz = 0x38,
adam_z 0:301b2cb34ead 219 LSM6DS3_ACC_GYRO_ODR_FIFO_1600Hz = 0x40,
adam_z 0:301b2cb34ead 220 LSM6DS3_ACC_GYRO_ODR_FIFO_3300Hz = 0x48,
adam_z 0:301b2cb34ead 221 LSM6DS3_ACC_GYRO_ODR_FIFO_6600Hz = 0x50,
adam_z 0:301b2cb34ead 222 LSM6DS3_ACC_GYRO_ODR_FIFO_13300Hz = 0x58,
adam_z 0:301b2cb34ead 223 } LSM6DS3_ACC_GYRO_ODR_FIFO_t;
adam_z 0:301b2cb34ead 224
adam_z 0:301b2cb34ead 225 /*******************************************************************************
adam_z 0:301b2cb34ead 226 * Register : ORIENT_CFG_G
adam_z 0:301b2cb34ead 227 * Address : 0X0B
adam_z 0:301b2cb34ead 228 * Bit Group Name: ORIENT
adam_z 0:301b2cb34ead 229 * Permission : RW
adam_z 0:301b2cb34ead 230 *******************************************************************************/
adam_z 0:301b2cb34ead 231 typedef enum {
adam_z 0:301b2cb34ead 232 LSM6DS3_ACC_GYRO_ORIENT_XYZ = 0x00,
adam_z 0:301b2cb34ead 233 LSM6DS3_ACC_GYRO_ORIENT_XZY = 0x01,
adam_z 0:301b2cb34ead 234 LSM6DS3_ACC_GYRO_ORIENT_YXZ = 0x02,
adam_z 0:301b2cb34ead 235 LSM6DS3_ACC_GYRO_ORIENT_YZX = 0x03,
adam_z 0:301b2cb34ead 236 LSM6DS3_ACC_GYRO_ORIENT_ZXY = 0x04,
adam_z 0:301b2cb34ead 237 LSM6DS3_ACC_GYRO_ORIENT_ZYX = 0x05,
adam_z 0:301b2cb34ead 238 } LSM6DS3_ACC_GYRO_ORIENT_t;
adam_z 0:301b2cb34ead 239
adam_z 0:301b2cb34ead 240 /*******************************************************************************
adam_z 0:301b2cb34ead 241 * Register : ORIENT_CFG_G
adam_z 0:301b2cb34ead 242 * Address : 0X0B
adam_z 0:301b2cb34ead 243 * Bit Group Name: SIGN_Z_G
adam_z 0:301b2cb34ead 244 * Permission : RW
adam_z 0:301b2cb34ead 245 *******************************************************************************/
adam_z 0:301b2cb34ead 246 typedef enum {
adam_z 0:301b2cb34ead 247 LSM6DS3_ACC_GYRO_SIGN_Z_G_POSITIVE = 0x00,
adam_z 0:301b2cb34ead 248 LSM6DS3_ACC_GYRO_SIGN_Z_G_NEGATIVE = 0x08,
adam_z 0:301b2cb34ead 249 } LSM6DS3_ACC_GYRO_SIGN_Z_G_t;
adam_z 0:301b2cb34ead 250
adam_z 0:301b2cb34ead 251 /*******************************************************************************
adam_z 0:301b2cb34ead 252 * Register : ORIENT_CFG_G
adam_z 0:301b2cb34ead 253 * Address : 0X0B
adam_z 0:301b2cb34ead 254 * Bit Group Name: SIGN_Y_G
adam_z 0:301b2cb34ead 255 * Permission : RW
adam_z 0:301b2cb34ead 256 *******************************************************************************/
adam_z 0:301b2cb34ead 257 typedef enum {
adam_z 0:301b2cb34ead 258 LSM6DS3_ACC_GYRO_SIGN_Y_G_POSITIVE = 0x00,
adam_z 0:301b2cb34ead 259 LSM6DS3_ACC_GYRO_SIGN_Y_G_NEGATIVE = 0x10,
adam_z 0:301b2cb34ead 260 } LSM6DS3_ACC_GYRO_SIGN_Y_G_t;
adam_z 0:301b2cb34ead 261
adam_z 0:301b2cb34ead 262 /*******************************************************************************
adam_z 0:301b2cb34ead 263 * Register : ORIENT_CFG_G
adam_z 0:301b2cb34ead 264 * Address : 0X0B
adam_z 0:301b2cb34ead 265 * Bit Group Name: SIGN_X_G
adam_z 0:301b2cb34ead 266 * Permission : RW
adam_z 0:301b2cb34ead 267 *******************************************************************************/
adam_z 0:301b2cb34ead 268 typedef enum {
adam_z 0:301b2cb34ead 269 LSM6DS3_ACC_GYRO_SIGN_X_G_POSITIVE = 0x00,
adam_z 0:301b2cb34ead 270 LSM6DS3_ACC_GYRO_SIGN_X_G_NEGATIVE = 0x20,
adam_z 0:301b2cb34ead 271 } LSM6DS3_ACC_GYRO_SIGN_X_G_t;
adam_z 0:301b2cb34ead 272
adam_z 0:301b2cb34ead 273 /*******************************************************************************
adam_z 0:301b2cb34ead 274 * Register : REFERENCE_G
adam_z 0:301b2cb34ead 275 * Address : 0X0C
adam_z 0:301b2cb34ead 276 * Bit Group Name: REF_G
adam_z 0:301b2cb34ead 277 * Permission : RW
adam_z 0:301b2cb34ead 278 *******************************************************************************/
adam_z 0:301b2cb34ead 279 #define LSM6DS3_ACC_GYRO_REF_G_MASK 0xFF
adam_z 0:301b2cb34ead 280 #define LSM6DS3_ACC_GYRO_REF_G_POSITION 0
adam_z 0:301b2cb34ead 281
adam_z 0:301b2cb34ead 282 /*******************************************************************************
adam_z 0:301b2cb34ead 283 * Register : INT1_CTRL
adam_z 0:301b2cb34ead 284 * Address : 0X0D
adam_z 0:301b2cb34ead 285 * Bit Group Name: INT1_DRDY_XL
adam_z 0:301b2cb34ead 286 * Permission : RW
adam_z 0:301b2cb34ead 287 *******************************************************************************/
adam_z 0:301b2cb34ead 288 typedef enum {
adam_z 0:301b2cb34ead 289 LSM6DS3_ACC_GYRO_INT1_DRDY_XL_DISABLED = 0x00,
adam_z 0:301b2cb34ead 290 LSM6DS3_ACC_GYRO_INT1_DRDY_XL_ENABLED = 0x01,
adam_z 0:301b2cb34ead 291 } LSM6DS3_ACC_GYRO_INT1_DRDY_XL_t;
adam_z 0:301b2cb34ead 292
adam_z 0:301b2cb34ead 293 /*******************************************************************************
adam_z 0:301b2cb34ead 294 * Register : INT1_CTRL
adam_z 0:301b2cb34ead 295 * Address : 0X0D
adam_z 0:301b2cb34ead 296 * Bit Group Name: INT1_DRDY_G
adam_z 0:301b2cb34ead 297 * Permission : RW
adam_z 0:301b2cb34ead 298 *******************************************************************************/
adam_z 0:301b2cb34ead 299 typedef enum {
adam_z 0:301b2cb34ead 300 LSM6DS3_ACC_GYRO_INT1_DRDY_G_DISABLED = 0x00,
adam_z 0:301b2cb34ead 301 LSM6DS3_ACC_GYRO_INT1_DRDY_G_ENABLED = 0x02,
adam_z 0:301b2cb34ead 302 } LSM6DS3_ACC_GYRO_INT1_DRDY_G_t;
adam_z 0:301b2cb34ead 303
adam_z 0:301b2cb34ead 304 /*******************************************************************************
adam_z 0:301b2cb34ead 305 * Register : INT1_CTRL
adam_z 0:301b2cb34ead 306 * Address : 0X0D
adam_z 0:301b2cb34ead 307 * Bit Group Name: INT1_BOOT
adam_z 0:301b2cb34ead 308 * Permission : RW
adam_z 0:301b2cb34ead 309 *******************************************************************************/
adam_z 0:301b2cb34ead 310 typedef enum {
adam_z 0:301b2cb34ead 311 LSM6DS3_ACC_GYRO_INT1_BOOT_DISABLED = 0x00,
adam_z 0:301b2cb34ead 312 LSM6DS3_ACC_GYRO_INT1_BOOT_ENABLED = 0x04,
adam_z 0:301b2cb34ead 313 } LSM6DS3_ACC_GYRO_INT1_BOOT_t;
adam_z 0:301b2cb34ead 314
adam_z 0:301b2cb34ead 315 /*******************************************************************************
adam_z 0:301b2cb34ead 316 * Register : INT1_CTRL
adam_z 0:301b2cb34ead 317 * Address : 0X0D
adam_z 0:301b2cb34ead 318 * Bit Group Name: INT1_FTH
adam_z 0:301b2cb34ead 319 * Permission : RW
adam_z 0:301b2cb34ead 320 *******************************************************************************/
adam_z 0:301b2cb34ead 321 typedef enum {
adam_z 0:301b2cb34ead 322 LSM6DS3_ACC_GYRO_INT1_FTH_DISABLED = 0x00,
adam_z 0:301b2cb34ead 323 LSM6DS3_ACC_GYRO_INT1_FTH_ENABLED = 0x08,
adam_z 0:301b2cb34ead 324 } LSM6DS3_ACC_GYRO_INT1_FTH_t;
adam_z 0:301b2cb34ead 325
adam_z 0:301b2cb34ead 326 /*******************************************************************************
adam_z 0:301b2cb34ead 327 * Register : INT1_CTRL
adam_z 0:301b2cb34ead 328 * Address : 0X0D
adam_z 0:301b2cb34ead 329 * Bit Group Name: INT1_OVR
adam_z 0:301b2cb34ead 330 * Permission : RW
adam_z 0:301b2cb34ead 331 *******************************************************************************/
adam_z 0:301b2cb34ead 332 typedef enum {
adam_z 0:301b2cb34ead 333 LSM6DS3_ACC_GYRO_INT1_OVR_DISABLED = 0x00,
adam_z 0:301b2cb34ead 334 LSM6DS3_ACC_GYRO_INT1_OVR_ENABLED = 0x10,
adam_z 0:301b2cb34ead 335 } LSM6DS3_ACC_GYRO_INT1_OVR_t;
adam_z 0:301b2cb34ead 336
adam_z 0:301b2cb34ead 337 /*******************************************************************************
adam_z 0:301b2cb34ead 338 * Register : INT1_CTRL
adam_z 0:301b2cb34ead 339 * Address : 0X0D
adam_z 0:301b2cb34ead 340 * Bit Group Name: INT1_FSS5
adam_z 0:301b2cb34ead 341 * Permission : RW
adam_z 0:301b2cb34ead 342 *******************************************************************************/
adam_z 0:301b2cb34ead 343 typedef enum {
adam_z 0:301b2cb34ead 344 LSM6DS3_ACC_GYRO_INT1_FSS5_DISABLED = 0x00,
adam_z 0:301b2cb34ead 345 LSM6DS3_ACC_GYRO_INT1_FSS5_ENABLED = 0x20,
adam_z 0:301b2cb34ead 346 } LSM6DS3_ACC_GYRO_INT1_FSS5_t;
adam_z 0:301b2cb34ead 347
adam_z 0:301b2cb34ead 348 /*******************************************************************************
adam_z 0:301b2cb34ead 349 * Register : INT1_CTRL
adam_z 0:301b2cb34ead 350 * Address : 0X0D
adam_z 0:301b2cb34ead 351 * Bit Group Name: INT1_SIGN_MOT
adam_z 0:301b2cb34ead 352 * Permission : RW
adam_z 0:301b2cb34ead 353 *******************************************************************************/
adam_z 0:301b2cb34ead 354 typedef enum {
adam_z 0:301b2cb34ead 355 LSM6DS3_ACC_GYRO_INT1_SIGN_MOT_DISABLED = 0x00,
adam_z 0:301b2cb34ead 356 LSM6DS3_ACC_GYRO_INT1_SIGN_MOT_ENABLED = 0x40,
adam_z 0:301b2cb34ead 357 } LSM6DS3_ACC_GYRO_INT1_SIGN_MOT_t;
adam_z 0:301b2cb34ead 358
adam_z 0:301b2cb34ead 359 /*******************************************************************************
adam_z 0:301b2cb34ead 360 * Register : INT1_CTRL
adam_z 0:301b2cb34ead 361 * Address : 0X0D
adam_z 0:301b2cb34ead 362 * Bit Group Name: INT1_PEDO
adam_z 0:301b2cb34ead 363 * Permission : RW
adam_z 0:301b2cb34ead 364 *******************************************************************************/
adam_z 0:301b2cb34ead 365 typedef enum {
adam_z 0:301b2cb34ead 366 LSM6DS3_ACC_GYRO_INT1_PEDO_DISABLED = 0x00,
adam_z 0:301b2cb34ead 367 LSM6DS3_ACC_GYRO_INT1_PEDO_ENABLED = 0x80,
adam_z 0:301b2cb34ead 368 } LSM6DS3_ACC_GYRO_INT1_PEDO_t;
adam_z 0:301b2cb34ead 369
adam_z 0:301b2cb34ead 370 /*******************************************************************************
adam_z 0:301b2cb34ead 371 * Register : INT2_CTRL
adam_z 0:301b2cb34ead 372 * Address : 0X0E
adam_z 0:301b2cb34ead 373 * Bit Group Name: INT2_DRDY_XL
adam_z 0:301b2cb34ead 374 * Permission : RW
adam_z 0:301b2cb34ead 375 *******************************************************************************/
adam_z 0:301b2cb34ead 376 typedef enum {
adam_z 0:301b2cb34ead 377 LSM6DS3_ACC_GYRO_INT2_DRDY_XL_DISABLED = 0x00,
adam_z 0:301b2cb34ead 378 LSM6DS3_ACC_GYRO_INT2_DRDY_XL_ENABLED = 0x01,
adam_z 0:301b2cb34ead 379 } LSM6DS3_ACC_GYRO_INT2_DRDY_XL_t;
adam_z 0:301b2cb34ead 380
adam_z 0:301b2cb34ead 381 /*******************************************************************************
adam_z 0:301b2cb34ead 382 * Register : INT2_CTRL
adam_z 0:301b2cb34ead 383 * Address : 0X0E
adam_z 0:301b2cb34ead 384 * Bit Group Name: INT2_DRDY_G
adam_z 0:301b2cb34ead 385 * Permission : RW
adam_z 0:301b2cb34ead 386 *******************************************************************************/
adam_z 0:301b2cb34ead 387 typedef enum {
adam_z 0:301b2cb34ead 388 LSM6DS3_ACC_GYRO_INT2_DRDY_G_DISABLED = 0x00,
adam_z 0:301b2cb34ead 389 LSM6DS3_ACC_GYRO_INT2_DRDY_G_ENABLED = 0x02,
adam_z 0:301b2cb34ead 390 } LSM6DS3_ACC_GYRO_INT2_DRDY_G_t;
adam_z 0:301b2cb34ead 391
adam_z 0:301b2cb34ead 392 /*******************************************************************************
adam_z 0:301b2cb34ead 393 * Register : INT2_CTRL
adam_z 0:301b2cb34ead 394 * Address : 0X0E
adam_z 0:301b2cb34ead 395 * Bit Group Name: INT2_FTH
adam_z 0:301b2cb34ead 396 * Permission : RW
adam_z 0:301b2cb34ead 397 *******************************************************************************/
adam_z 0:301b2cb34ead 398 typedef enum {
adam_z 0:301b2cb34ead 399 LSM6DS3_ACC_GYRO_INT2_FTH_DISABLED = 0x00,
adam_z 0:301b2cb34ead 400 LSM6DS3_ACC_GYRO_INT2_FTH_ENABLED = 0x08,
adam_z 0:301b2cb34ead 401 } LSM6DS3_ACC_GYRO_INT2_FTH_t;
adam_z 0:301b2cb34ead 402
adam_z 0:301b2cb34ead 403 /*******************************************************************************
adam_z 0:301b2cb34ead 404 * Register : INT2_CTRL
adam_z 0:301b2cb34ead 405 * Address : 0X0E
adam_z 0:301b2cb34ead 406 * Bit Group Name: INT2_OVR
adam_z 0:301b2cb34ead 407 * Permission : RW
adam_z 0:301b2cb34ead 408 *******************************************************************************/
adam_z 0:301b2cb34ead 409 typedef enum {
adam_z 0:301b2cb34ead 410 LSM6DS3_ACC_GYRO_INT2_OVR_DISABLED = 0x00,
adam_z 0:301b2cb34ead 411 LSM6DS3_ACC_GYRO_INT2_OVR_ENABLED = 0x10,
adam_z 0:301b2cb34ead 412 } LSM6DS3_ACC_GYRO_INT2_OVR_t;
adam_z 0:301b2cb34ead 413
adam_z 0:301b2cb34ead 414 /*******************************************************************************
adam_z 0:301b2cb34ead 415 * Register : INT2_CTRL
adam_z 0:301b2cb34ead 416 * Address : 0X0E
adam_z 0:301b2cb34ead 417 * Bit Group Name: INT2_FSS5
adam_z 0:301b2cb34ead 418 * Permission : RW
adam_z 0:301b2cb34ead 419 *******************************************************************************/
adam_z 0:301b2cb34ead 420 typedef enum {
adam_z 0:301b2cb34ead 421 LSM6DS3_ACC_GYRO_INT2_FSS5_DISABLED = 0x00,
adam_z 0:301b2cb34ead 422 LSM6DS3_ACC_GYRO_INT2_FSS5_ENABLED = 0x20,
adam_z 0:301b2cb34ead 423 } LSM6DS3_ACC_GYRO_INT2_FSS5_t;
adam_z 0:301b2cb34ead 424
adam_z 0:301b2cb34ead 425 /*******************************************************************************
adam_z 0:301b2cb34ead 426 * Register : INT2_CTRL
adam_z 0:301b2cb34ead 427 * Address : 0X0E
adam_z 0:301b2cb34ead 428 * Bit Group Name: INT2_SIGN_MOT
adam_z 0:301b2cb34ead 429 * Permission : RW
adam_z 0:301b2cb34ead 430 *******************************************************************************/
adam_z 0:301b2cb34ead 431 typedef enum {
adam_z 0:301b2cb34ead 432 LSM6DS3_ACC_GYRO_INT2_SIGN_MOT_DISABLED = 0x00,
adam_z 0:301b2cb34ead 433 LSM6DS3_ACC_GYRO_INT2_SIGN_MOT_ENABLED = 0x40,
adam_z 0:301b2cb34ead 434 } LSM6DS3_ACC_GYRO_INT2_SIGN_MOT_t;
adam_z 0:301b2cb34ead 435
adam_z 0:301b2cb34ead 436 /*******************************************************************************
adam_z 0:301b2cb34ead 437 * Register : INT2_CTRL
adam_z 0:301b2cb34ead 438 * Address : 0X0E
adam_z 0:301b2cb34ead 439 * Bit Group Name: INT2_PEDO
adam_z 0:301b2cb34ead 440 * Permission : RW
adam_z 0:301b2cb34ead 441 *******************************************************************************/
adam_z 0:301b2cb34ead 442 typedef enum {
adam_z 0:301b2cb34ead 443 LSM6DS3_ACC_GYRO_INT2_PEDO_DISABLED = 0x00,
adam_z 0:301b2cb34ead 444 LSM6DS3_ACC_GYRO_INT2_PEDO_ENABLED = 0x80,
adam_z 0:301b2cb34ead 445 } LSM6DS3_ACC_GYRO_INT2_PEDO_t;
adam_z 0:301b2cb34ead 446
adam_z 0:301b2cb34ead 447 /*******************************************************************************
adam_z 0:301b2cb34ead 448 * Register : WHO_AM_I
adam_z 0:301b2cb34ead 449 * Address : 0X0F
adam_z 0:301b2cb34ead 450 * Bit Group Name: WHO_AM_I_BIT
adam_z 0:301b2cb34ead 451 * Permission : RO
adam_z 0:301b2cb34ead 452 *******************************************************************************/
adam_z 0:301b2cb34ead 453 #define LSM6DS3_ACC_GYRO_WHO_AM_I_BIT_MASK 0xFF
adam_z 0:301b2cb34ead 454 #define LSM6DS3_ACC_GYRO_WHO_AM_I_BIT_POSITION 0
adam_z 0:301b2cb34ead 455
adam_z 0:301b2cb34ead 456 /*******************************************************************************
adam_z 0:301b2cb34ead 457 * Register : CTRL1_XL
adam_z 0:301b2cb34ead 458 * Address : 0X10
adam_z 0:301b2cb34ead 459 * Bit Group Name: BW_XL
adam_z 0:301b2cb34ead 460 * Permission : RW
adam_z 0:301b2cb34ead 461 *******************************************************************************/
adam_z 0:301b2cb34ead 462 typedef enum {
adam_z 0:301b2cb34ead 463 LSM6DS3_ACC_GYRO_BW_XL_400Hz = 0x00,
adam_z 0:301b2cb34ead 464 LSM6DS3_ACC_GYRO_BW_XL_200Hz = 0x01,
adam_z 0:301b2cb34ead 465 LSM6DS3_ACC_GYRO_BW_XL_100Hz = 0x02,
adam_z 0:301b2cb34ead 466 LSM6DS3_ACC_GYRO_BW_XL_50Hz = 0x03,
adam_z 0:301b2cb34ead 467 } LSM6DS3_ACC_GYRO_BW_XL_t;
adam_z 0:301b2cb34ead 468
adam_z 0:301b2cb34ead 469 /*******************************************************************************
adam_z 0:301b2cb34ead 470 * Register : CTRL1_XL
adam_z 0:301b2cb34ead 471 * Address : 0X10
adam_z 0:301b2cb34ead 472 * Bit Group Name: FS_XL
adam_z 0:301b2cb34ead 473 * Permission : RW
adam_z 0:301b2cb34ead 474 *******************************************************************************/
adam_z 0:301b2cb34ead 475 typedef enum {
adam_z 0:301b2cb34ead 476 LSM6DS3_ACC_GYRO_FS_XL_2g = 0x00,
adam_z 0:301b2cb34ead 477 LSM6DS3_ACC_GYRO_FS_XL_16g = 0x04,
adam_z 0:301b2cb34ead 478 LSM6DS3_ACC_GYRO_FS_XL_4g = 0x08,
adam_z 0:301b2cb34ead 479 LSM6DS3_ACC_GYRO_FS_XL_8g = 0x0C,
adam_z 0:301b2cb34ead 480 } LSM6DS3_ACC_GYRO_FS_XL_t;
adam_z 0:301b2cb34ead 481
adam_z 0:301b2cb34ead 482 /*******************************************************************************
adam_z 0:301b2cb34ead 483 * Register : CTRL1_XL
adam_z 0:301b2cb34ead 484 * Address : 0X10
adam_z 0:301b2cb34ead 485 * Bit Group Name: ODR_XL
adam_z 0:301b2cb34ead 486 * Permission : RW
adam_z 0:301b2cb34ead 487 *******************************************************************************/
adam_z 0:301b2cb34ead 488 typedef enum {
adam_z 0:301b2cb34ead 489 LSM6DS3_ACC_GYRO_ODR_XL_POWER_DOWN = 0x00,
adam_z 0:301b2cb34ead 490 LSM6DS3_ACC_GYRO_ODR_XL_13Hz = 0x10,
adam_z 0:301b2cb34ead 491 LSM6DS3_ACC_GYRO_ODR_XL_26Hz = 0x20,
adam_z 0:301b2cb34ead 492 LSM6DS3_ACC_GYRO_ODR_XL_52Hz = 0x30,
adam_z 0:301b2cb34ead 493 LSM6DS3_ACC_GYRO_ODR_XL_104Hz = 0x40,
adam_z 0:301b2cb34ead 494 LSM6DS3_ACC_GYRO_ODR_XL_208Hz = 0x50,
adam_z 0:301b2cb34ead 495 LSM6DS3_ACC_GYRO_ODR_XL_416Hz = 0x60,
adam_z 0:301b2cb34ead 496 LSM6DS3_ACC_GYRO_ODR_XL_833Hz = 0x70,
adam_z 0:301b2cb34ead 497 LSM6DS3_ACC_GYRO_ODR_XL_1660Hz = 0x80,
adam_z 0:301b2cb34ead 498 LSM6DS3_ACC_GYRO_ODR_XL_3330Hz = 0x90,
adam_z 0:301b2cb34ead 499 LSM6DS3_ACC_GYRO_ODR_XL_6660Hz = 0xA0,
adam_z 0:301b2cb34ead 500 LSM6DS3_ACC_GYRO_ODR_XL_13330Hz = 0xB0,
adam_z 0:301b2cb34ead 501 } LSM6DS3_ACC_GYRO_ODR_XL_t;
adam_z 0:301b2cb34ead 502
adam_z 0:301b2cb34ead 503 /*******************************************************************************
adam_z 0:301b2cb34ead 504 * Register : CTRL2_G
adam_z 0:301b2cb34ead 505 * Address : 0X11
adam_z 0:301b2cb34ead 506 * Bit Group Name: FS_125
adam_z 0:301b2cb34ead 507 * Permission : RW
adam_z 0:301b2cb34ead 508 *******************************************************************************/
adam_z 0:301b2cb34ead 509 typedef enum {
adam_z 0:301b2cb34ead 510 LSM6DS3_ACC_GYRO_FS_125_DISABLED = 0x00,
adam_z 0:301b2cb34ead 511 LSM6DS3_ACC_GYRO_FS_125_ENABLED = 0x02,
adam_z 0:301b2cb34ead 512 } LSM6DS3_ACC_GYRO_FS_125_t;
adam_z 0:301b2cb34ead 513
adam_z 0:301b2cb34ead 514 /*******************************************************************************
adam_z 0:301b2cb34ead 515 * Register : CTRL2_G
adam_z 0:301b2cb34ead 516 * Address : 0X11
adam_z 0:301b2cb34ead 517 * Bit Group Name: FS_G
adam_z 0:301b2cb34ead 518 * Permission : RW
adam_z 0:301b2cb34ead 519 *******************************************************************************/
adam_z 0:301b2cb34ead 520 typedef enum {
adam_z 0:301b2cb34ead 521 LSM6DS3_ACC_GYRO_FS_G_245dps = 0x00,
adam_z 0:301b2cb34ead 522 LSM6DS3_ACC_GYRO_FS_G_500dps = 0x04,
adam_z 0:301b2cb34ead 523 LSM6DS3_ACC_GYRO_FS_G_1000dps = 0x08,
adam_z 0:301b2cb34ead 524 LSM6DS3_ACC_GYRO_FS_G_2000dps = 0x0C,
adam_z 0:301b2cb34ead 525 } LSM6DS3_ACC_GYRO_FS_G_t;
adam_z 0:301b2cb34ead 526
adam_z 0:301b2cb34ead 527 /*******************************************************************************
adam_z 0:301b2cb34ead 528 * Register : CTRL2_G
adam_z 0:301b2cb34ead 529 * Address : 0X11
adam_z 0:301b2cb34ead 530 * Bit Group Name: ODR_G
adam_z 0:301b2cb34ead 531 * Permission : RW
adam_z 0:301b2cb34ead 532 *******************************************************************************/
adam_z 0:301b2cb34ead 533 typedef enum {
adam_z 0:301b2cb34ead 534 LSM6DS3_ACC_GYRO_ODR_G_POWER_DOWN = 0x00,
adam_z 0:301b2cb34ead 535 LSM6DS3_ACC_GYRO_ODR_G_13Hz = 0x10,
adam_z 0:301b2cb34ead 536 LSM6DS3_ACC_GYRO_ODR_G_26Hz = 0x20,
adam_z 0:301b2cb34ead 537 LSM6DS3_ACC_GYRO_ODR_G_52Hz = 0x30,
adam_z 0:301b2cb34ead 538 LSM6DS3_ACC_GYRO_ODR_G_104Hz = 0x40,
adam_z 0:301b2cb34ead 539 LSM6DS3_ACC_GYRO_ODR_G_208Hz = 0x50,
adam_z 0:301b2cb34ead 540 LSM6DS3_ACC_GYRO_ODR_G_416Hz = 0x60,
adam_z 0:301b2cb34ead 541 LSM6DS3_ACC_GYRO_ODR_G_833Hz = 0x70,
adam_z 0:301b2cb34ead 542 LSM6DS3_ACC_GYRO_ODR_G_1660Hz = 0x80,
adam_z 0:301b2cb34ead 543 } LSM6DS3_ACC_GYRO_ODR_G_t;
adam_z 0:301b2cb34ead 544
adam_z 0:301b2cb34ead 545 /*******************************************************************************
adam_z 0:301b2cb34ead 546 * Register : CTRL3_C
adam_z 0:301b2cb34ead 547 * Address : 0X12
adam_z 0:301b2cb34ead 548 * Bit Group Name: SW_RESET
adam_z 0:301b2cb34ead 549 * Permission : RW
adam_z 0:301b2cb34ead 550 *******************************************************************************/
adam_z 0:301b2cb34ead 551 typedef enum {
adam_z 0:301b2cb34ead 552 LSM6DS3_ACC_GYRO_SW_RESET_NORMAL_MODE = 0x00,
adam_z 0:301b2cb34ead 553 LSM6DS3_ACC_GYRO_SW_RESET_RESET_DEVICE = 0x01,
adam_z 0:301b2cb34ead 554 } LSM6DS3_ACC_GYRO_SW_RESET_t;
adam_z 0:301b2cb34ead 555
adam_z 0:301b2cb34ead 556 /*******************************************************************************
adam_z 0:301b2cb34ead 557 * Register : CTRL3_C
adam_z 0:301b2cb34ead 558 * Address : 0X12
adam_z 0:301b2cb34ead 559 * Bit Group Name: BLE
adam_z 0:301b2cb34ead 560 * Permission : RW
adam_z 0:301b2cb34ead 561 *******************************************************************************/
adam_z 0:301b2cb34ead 562 typedef enum {
adam_z 0:301b2cb34ead 563 LSM6DS3_ACC_GYRO_BLE_LSB = 0x00,
adam_z 0:301b2cb34ead 564 LSM6DS3_ACC_GYRO_BLE_MSB = 0x02,
adam_z 0:301b2cb34ead 565 } LSM6DS3_ACC_GYRO_BLE_t;
adam_z 0:301b2cb34ead 566
adam_z 0:301b2cb34ead 567 /*******************************************************************************
adam_z 0:301b2cb34ead 568 * Register : CTRL3_C
adam_z 0:301b2cb34ead 569 * Address : 0X12
adam_z 0:301b2cb34ead 570 * Bit Group Name: IF_INC
adam_z 0:301b2cb34ead 571 * Permission : RW
adam_z 0:301b2cb34ead 572 *******************************************************************************/
adam_z 0:301b2cb34ead 573 typedef enum {
adam_z 0:301b2cb34ead 574 LSM6DS3_ACC_GYRO_IF_INC_DISABLED = 0x00,
adam_z 0:301b2cb34ead 575 LSM6DS3_ACC_GYRO_IF_INC_ENABLED = 0x04,
adam_z 0:301b2cb34ead 576 } LSM6DS3_ACC_GYRO_IF_INC_t;
adam_z 0:301b2cb34ead 577
adam_z 0:301b2cb34ead 578 /*******************************************************************************
adam_z 0:301b2cb34ead 579 * Register : CTRL3_C
adam_z 0:301b2cb34ead 580 * Address : 0X12
adam_z 0:301b2cb34ead 581 * Bit Group Name: SIM
adam_z 0:301b2cb34ead 582 * Permission : RW
adam_z 0:301b2cb34ead 583 *******************************************************************************/
adam_z 0:301b2cb34ead 584 typedef enum {
adam_z 0:301b2cb34ead 585 LSM6DS3_ACC_GYRO_SIM_4_WIRE = 0x00,
adam_z 0:301b2cb34ead 586 LSM6DS3_ACC_GYRO_SIM_3_WIRE = 0x08,
adam_z 0:301b2cb34ead 587 } LSM6DS3_ACC_GYRO_SIM_t;
adam_z 0:301b2cb34ead 588
adam_z 0:301b2cb34ead 589 /*******************************************************************************
adam_z 0:301b2cb34ead 590 * Register : CTRL3_C
adam_z 0:301b2cb34ead 591 * Address : 0X12
adam_z 0:301b2cb34ead 592 * Bit Group Name: PP_OD
adam_z 0:301b2cb34ead 593 * Permission : RW
adam_z 0:301b2cb34ead 594 *******************************************************************************/
adam_z 0:301b2cb34ead 595 typedef enum {
adam_z 0:301b2cb34ead 596 LSM6DS3_ACC_GYRO_PP_OD_PUSH_PULL = 0x00,
adam_z 0:301b2cb34ead 597 LSM6DS3_ACC_GYRO_PP_OD_OPEN_DRAIN = 0x10,
adam_z 0:301b2cb34ead 598 } LSM6DS3_ACC_GYRO_PP_OD_t;
adam_z 0:301b2cb34ead 599
adam_z 0:301b2cb34ead 600 /*******************************************************************************
adam_z 0:301b2cb34ead 601 * Register : CTRL3_C
adam_z 0:301b2cb34ead 602 * Address : 0X12
adam_z 0:301b2cb34ead 603 * Bit Group Name: INT_ACT_LEVEL
adam_z 0:301b2cb34ead 604 * Permission : RW
adam_z 0:301b2cb34ead 605 *******************************************************************************/
adam_z 0:301b2cb34ead 606 typedef enum {
adam_z 0:301b2cb34ead 607 LSM6DS3_ACC_GYRO_INT_ACT_LEVEL_ACTIVE_HI = 0x00,
adam_z 0:301b2cb34ead 608 LSM6DS3_ACC_GYRO_INT_ACT_LEVEL_ACTIVE_LO = 0x20,
adam_z 0:301b2cb34ead 609 } LSM6DS3_ACC_GYRO_INT_ACT_LEVEL_t;
adam_z 0:301b2cb34ead 610
adam_z 0:301b2cb34ead 611 /*******************************************************************************
adam_z 0:301b2cb34ead 612 * Register : CTRL3_C
adam_z 0:301b2cb34ead 613 * Address : 0X12
adam_z 0:301b2cb34ead 614 * Bit Group Name: BDU
adam_z 0:301b2cb34ead 615 * Permission : RW
adam_z 0:301b2cb34ead 616 *******************************************************************************/
adam_z 0:301b2cb34ead 617 typedef enum {
adam_z 0:301b2cb34ead 618 LSM6DS3_ACC_GYRO_BDU_CONTINUOS = 0x00,
adam_z 0:301b2cb34ead 619 LSM6DS3_ACC_GYRO_BDU_BLOCK_UPDATE = 0x40,
adam_z 0:301b2cb34ead 620 } LSM6DS3_ACC_GYRO_BDU_t;
adam_z 0:301b2cb34ead 621
adam_z 0:301b2cb34ead 622 /*******************************************************************************
adam_z 0:301b2cb34ead 623 * Register : CTRL3_C
adam_z 0:301b2cb34ead 624 * Address : 0X12
adam_z 0:301b2cb34ead 625 * Bit Group Name: BOOT
adam_z 0:301b2cb34ead 626 * Permission : RW
adam_z 0:301b2cb34ead 627 *******************************************************************************/
adam_z 0:301b2cb34ead 628 typedef enum {
adam_z 0:301b2cb34ead 629 LSM6DS3_ACC_GYRO_BOOT_NORMAL_MODE = 0x00,
adam_z 0:301b2cb34ead 630 LSM6DS3_ACC_GYRO_BOOT_REBOOT_MODE = 0x80,
adam_z 0:301b2cb34ead 631 } LSM6DS3_ACC_GYRO_BOOT_t;
adam_z 0:301b2cb34ead 632
adam_z 0:301b2cb34ead 633 /*******************************************************************************
adam_z 0:301b2cb34ead 634 * Register : CTRL4_C
adam_z 0:301b2cb34ead 635 * Address : 0X13
adam_z 0:301b2cb34ead 636 * Bit Group Name: STOP_ON_FTH
adam_z 0:301b2cb34ead 637 * Permission : RW
adam_z 0:301b2cb34ead 638 *******************************************************************************/
adam_z 0:301b2cb34ead 639 typedef enum {
adam_z 0:301b2cb34ead 640 LSM6DS3_ACC_GYRO_STOP_ON_FTH_DISABLED = 0x00,
adam_z 0:301b2cb34ead 641 LSM6DS3_ACC_GYRO_STOP_ON_FTH_ENABLED = 0x01,
adam_z 0:301b2cb34ead 642 } LSM6DS3_ACC_GYRO_STOP_ON_FTH_t;
adam_z 0:301b2cb34ead 643
adam_z 0:301b2cb34ead 644 /*******************************************************************************
adam_z 0:301b2cb34ead 645 * Register : CTRL4_C
adam_z 0:301b2cb34ead 646 * Address : 0X13
adam_z 0:301b2cb34ead 647 * Bit Group Name: MODE3_EN
adam_z 0:301b2cb34ead 648 * Permission : RW
adam_z 0:301b2cb34ead 649 *******************************************************************************/
adam_z 0:301b2cb34ead 650 typedef enum {
adam_z 0:301b2cb34ead 651 LSM6DS3_ACC_GYRO_MODE3_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 652 LSM6DS3_ACC_GYRO_MODE3_EN_ENABLED = 0x02,
adam_z 0:301b2cb34ead 653 } LSM6DS3_ACC_GYRO_MODE3_EN_t;
adam_z 0:301b2cb34ead 654
adam_z 0:301b2cb34ead 655 /*******************************************************************************
adam_z 0:301b2cb34ead 656 * Register : CTRL4_C
adam_z 0:301b2cb34ead 657 * Address : 0X13
adam_z 0:301b2cb34ead 658 * Bit Group Name: I2C_DISABLE
adam_z 0:301b2cb34ead 659 * Permission : RW
adam_z 0:301b2cb34ead 660 *******************************************************************************/
adam_z 0:301b2cb34ead 661 typedef enum {
adam_z 0:301b2cb34ead 662 LSM6DS3_ACC_GYRO_I2C_DISABLE_I2C_AND_SPI = 0x00,
adam_z 0:301b2cb34ead 663 LSM6DS3_ACC_GYRO_I2C_DISABLE_SPI_ONLY = 0x04,
adam_z 0:301b2cb34ead 664 } LSM6DS3_ACC_GYRO_I2C_DISABLE_t;
adam_z 0:301b2cb34ead 665
adam_z 0:301b2cb34ead 666 /*******************************************************************************
adam_z 0:301b2cb34ead 667 * Register : CTRL4_C
adam_z 0:301b2cb34ead 668 * Address : 0X13
adam_z 0:301b2cb34ead 669 * Bit Group Name: DRDY_MSK
adam_z 0:301b2cb34ead 670 * Permission : RW
adam_z 0:301b2cb34ead 671 *******************************************************************************/
adam_z 0:301b2cb34ead 672 typedef enum {
adam_z 0:301b2cb34ead 673 LSM6DS3_ACC_GYRO_DRDY_MSK_DISABLED = 0x00,
adam_z 0:301b2cb34ead 674 LSM6DS3_ACC_GYRO_DRDY_MSK_ENABLED = 0x08,
adam_z 0:301b2cb34ead 675 } LSM6DS3_ACC_GYRO_DRDY_MSK_t;
adam_z 0:301b2cb34ead 676
adam_z 0:301b2cb34ead 677 /*******************************************************************************
adam_z 0:301b2cb34ead 678 * Register : CTRL4_C
adam_z 0:301b2cb34ead 679 * Address : 0X13
adam_z 0:301b2cb34ead 680 * Bit Group Name: FIFO_TEMP_EN
adam_z 0:301b2cb34ead 681 * Permission : RW
adam_z 0:301b2cb34ead 682 *******************************************************************************/
adam_z 0:301b2cb34ead 683 typedef enum {
adam_z 0:301b2cb34ead 684 LSM6DS3_ACC_GYRO_FIFO_TEMP_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 685 LSM6DS3_ACC_GYRO_FIFO_TEMP_EN_ENABLED = 0x10,
adam_z 0:301b2cb34ead 686 } LSM6DS3_ACC_GYRO_FIFO_TEMP_EN_t;
adam_z 0:301b2cb34ead 687
adam_z 0:301b2cb34ead 688 /*******************************************************************************
adam_z 0:301b2cb34ead 689 * Register : CTRL4_C
adam_z 0:301b2cb34ead 690 * Address : 0X13
adam_z 0:301b2cb34ead 691 * Bit Group Name: INT2_ON_INT1
adam_z 0:301b2cb34ead 692 * Permission : RW
adam_z 0:301b2cb34ead 693 *******************************************************************************/
adam_z 0:301b2cb34ead 694 typedef enum {
adam_z 0:301b2cb34ead 695 LSM6DS3_ACC_GYRO_INT2_ON_INT1_DISABLED = 0x00,
adam_z 0:301b2cb34ead 696 LSM6DS3_ACC_GYRO_INT2_ON_INT1_ENABLED = 0x20,
adam_z 0:301b2cb34ead 697 } LSM6DS3_ACC_GYRO_INT2_ON_INT1_t;
adam_z 0:301b2cb34ead 698
adam_z 0:301b2cb34ead 699 /*******************************************************************************
adam_z 0:301b2cb34ead 700 * Register : CTRL4_C
adam_z 0:301b2cb34ead 701 * Address : 0X13
adam_z 0:301b2cb34ead 702 * Bit Group Name: SLEEP_G
adam_z 0:301b2cb34ead 703 * Permission : RW
adam_z 0:301b2cb34ead 704 *******************************************************************************/
adam_z 0:301b2cb34ead 705 typedef enum {
adam_z 0:301b2cb34ead 706 LSM6DS3_ACC_GYRO_SLEEP_G_DISABLED = 0x00,
adam_z 0:301b2cb34ead 707 LSM6DS3_ACC_GYRO_SLEEP_G_ENABLED = 0x40,
adam_z 0:301b2cb34ead 708 } LSM6DS3_ACC_GYRO_SLEEP_G_t;
adam_z 0:301b2cb34ead 709
adam_z 0:301b2cb34ead 710 /*******************************************************************************
adam_z 0:301b2cb34ead 711 * Register : CTRL4_C
adam_z 0:301b2cb34ead 712 * Address : 0X13
adam_z 0:301b2cb34ead 713 * Bit Group Name: BW_SCAL_ODR
adam_z 0:301b2cb34ead 714 * Permission : RW
adam_z 0:301b2cb34ead 715 *******************************************************************************/
adam_z 0:301b2cb34ead 716 typedef enum {
adam_z 0:301b2cb34ead 717 LSM6DS3_ACC_GYRO_BW_SCAL_ODR_DISABLED = 0x00,
adam_z 0:301b2cb34ead 718 LSM6DS3_ACC_GYRO_BW_SCAL_ODR_ENABLED = 0x80,
adam_z 0:301b2cb34ead 719 } LSM6DS3_ACC_GYRO_BW_SCAL_ODR_t;
adam_z 0:301b2cb34ead 720
adam_z 0:301b2cb34ead 721 /*******************************************************************************
adam_z 0:301b2cb34ead 722 * Register : CTRL5_C
adam_z 0:301b2cb34ead 723 * Address : 0X14
adam_z 0:301b2cb34ead 724 * Bit Group Name: ST_XL
adam_z 0:301b2cb34ead 725 * Permission : RW
adam_z 0:301b2cb34ead 726 *******************************************************************************/
adam_z 0:301b2cb34ead 727 typedef enum {
adam_z 0:301b2cb34ead 728 LSM6DS3_ACC_GYRO_ST_XL_NORMAL_MODE = 0x00,
adam_z 0:301b2cb34ead 729 LSM6DS3_ACC_GYRO_ST_XL_POS_SIGN_TEST = 0x01,
adam_z 0:301b2cb34ead 730 LSM6DS3_ACC_GYRO_ST_XL_NEG_SIGN_TEST = 0x02,
adam_z 0:301b2cb34ead 731 LSM6DS3_ACC_GYRO_ST_XL_NA = 0x03,
adam_z 0:301b2cb34ead 732 } LSM6DS3_ACC_GYRO_ST_XL_t;
adam_z 0:301b2cb34ead 733
adam_z 0:301b2cb34ead 734 /*******************************************************************************
adam_z 0:301b2cb34ead 735 * Register : CTRL5_C
adam_z 0:301b2cb34ead 736 * Address : 0X14
adam_z 0:301b2cb34ead 737 * Bit Group Name: ST_G
adam_z 0:301b2cb34ead 738 * Permission : RW
adam_z 0:301b2cb34ead 739 *******************************************************************************/
adam_z 0:301b2cb34ead 740 typedef enum {
adam_z 0:301b2cb34ead 741 LSM6DS3_ACC_GYRO_ST_G_NORMAL_MODE = 0x00,
adam_z 0:301b2cb34ead 742 LSM6DS3_ACC_GYRO_ST_G_POS_SIGN_TEST = 0x04,
adam_z 0:301b2cb34ead 743 LSM6DS3_ACC_GYRO_ST_G_NA = 0x08,
adam_z 0:301b2cb34ead 744 LSM6DS3_ACC_GYRO_ST_G_NEG_SIGN_TEST = 0x0C,
adam_z 0:301b2cb34ead 745 } LSM6DS3_ACC_GYRO_ST_G_t;
adam_z 0:301b2cb34ead 746
adam_z 0:301b2cb34ead 747 /*******************************************************************************
adam_z 0:301b2cb34ead 748 * Register : CTRL6_G
adam_z 0:301b2cb34ead 749 * Address : 0X15
adam_z 0:301b2cb34ead 750 * Bit Group Name: LP_XL
adam_z 0:301b2cb34ead 751 * Permission : RW
adam_z 0:301b2cb34ead 752 *******************************************************************************/
adam_z 0:301b2cb34ead 753 typedef enum {
adam_z 0:301b2cb34ead 754 LSM6DS3_ACC_GYRO_LP_XL_DISABLED = 0x00,
adam_z 0:301b2cb34ead 755 LSM6DS3_ACC_GYRO_LP_XL_ENABLED = 0x10,
adam_z 0:301b2cb34ead 756 } LSM6DS3_ACC_GYRO_LP_XL_t;
adam_z 0:301b2cb34ead 757
adam_z 0:301b2cb34ead 758 /*******************************************************************************
adam_z 0:301b2cb34ead 759 * Register : CTRL6_G
adam_z 0:301b2cb34ead 760 * Address : 0X15
adam_z 0:301b2cb34ead 761 * Bit Group Name: DEN_LVL2_EN
adam_z 0:301b2cb34ead 762 * Permission : RW
adam_z 0:301b2cb34ead 763 *******************************************************************************/
adam_z 0:301b2cb34ead 764 typedef enum {
adam_z 0:301b2cb34ead 765 LSM6DS3_ACC_GYRO_DEN_LVL2_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 766 LSM6DS3_ACC_GYRO_DEN_LVL2_EN_ENABLED = 0x20,
adam_z 0:301b2cb34ead 767 } LSM6DS3_ACC_GYRO_DEN_LVL2_EN_t;
adam_z 0:301b2cb34ead 768
adam_z 0:301b2cb34ead 769 /*******************************************************************************
adam_z 0:301b2cb34ead 770 * Register : CTRL6_G
adam_z 0:301b2cb34ead 771 * Address : 0X15
adam_z 0:301b2cb34ead 772 * Bit Group Name: DEN_LVL_EN
adam_z 0:301b2cb34ead 773 * Permission : RW
adam_z 0:301b2cb34ead 774 *******************************************************************************/
adam_z 0:301b2cb34ead 775 typedef enum {
adam_z 0:301b2cb34ead 776 LSM6DS3_ACC_GYRO_DEN_LVL_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 777 LSM6DS3_ACC_GYRO_DEN_LVL_EN_ENABLED = 0x40,
adam_z 0:301b2cb34ead 778 } LSM6DS3_ACC_GYRO_DEN_LVL_EN_t;
adam_z 0:301b2cb34ead 779
adam_z 0:301b2cb34ead 780 /*******************************************************************************
adam_z 0:301b2cb34ead 781 * Register : CTRL6_G
adam_z 0:301b2cb34ead 782 * Address : 0X15
adam_z 0:301b2cb34ead 783 * Bit Group Name: DEN_EDGE_EN
adam_z 0:301b2cb34ead 784 * Permission : RW
adam_z 0:301b2cb34ead 785 *******************************************************************************/
adam_z 0:301b2cb34ead 786 typedef enum {
adam_z 0:301b2cb34ead 787 LSM6DS3_ACC_GYRO_DEN_EDGE_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 788 LSM6DS3_ACC_GYRO_DEN_EDGE_EN_ENABLED = 0x80,
adam_z 0:301b2cb34ead 789 } LSM6DS3_ACC_GYRO_DEN_EDGE_EN_t;
adam_z 0:301b2cb34ead 790
adam_z 0:301b2cb34ead 791 /*******************************************************************************
adam_z 0:301b2cb34ead 792 * Register : CTRL7_G
adam_z 0:301b2cb34ead 793 * Address : 0X16
adam_z 0:301b2cb34ead 794 * Bit Group Name: HPM_G
adam_z 0:301b2cb34ead 795 * Permission : RW
adam_z 0:301b2cb34ead 796 *******************************************************************************/
adam_z 0:301b2cb34ead 797 typedef enum {
adam_z 0:301b2cb34ead 798 LSM6DS3_ACC_GYRO_HPM_G_NORMAL_MODE = 0x00,
adam_z 0:301b2cb34ead 799 LSM6DS3_ACC_GYRO_HPM_G_REF_SIGNAL = 0x10,
adam_z 0:301b2cb34ead 800 LSM6DS3_ACC_GYRO_HPM_G_NORMAL_MODE_2 = 0x20,
adam_z 0:301b2cb34ead 801 LSM6DS3_ACC_GYRO_HPM_G_AUTO_RESET_ON_INT = 0x30,
adam_z 0:301b2cb34ead 802 } LSM6DS3_ACC_GYRO_HPM_G_t;
adam_z 0:301b2cb34ead 803
adam_z 0:301b2cb34ead 804 /*******************************************************************************
adam_z 0:301b2cb34ead 805 * Register : CTRL7_G
adam_z 0:301b2cb34ead 806 * Address : 0X16
adam_z 0:301b2cb34ead 807 * Bit Group Name: HP_EN
adam_z 0:301b2cb34ead 808 * Permission : RW
adam_z 0:301b2cb34ead 809 *******************************************************************************/
adam_z 0:301b2cb34ead 810 typedef enum {
adam_z 0:301b2cb34ead 811 LSM6DS3_ACC_GYRO_HP_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 812 LSM6DS3_ACC_GYRO_HP_EN_ENABLED = 0x40,
adam_z 0:301b2cb34ead 813 } LSM6DS3_ACC_GYRO_HP_EN_t;
adam_z 0:301b2cb34ead 814
adam_z 0:301b2cb34ead 815 /*******************************************************************************
adam_z 0:301b2cb34ead 816 * Register : CTRL7_G
adam_z 0:301b2cb34ead 817 * Address : 0X16
adam_z 0:301b2cb34ead 818 * Bit Group Name: LP_EN
adam_z 0:301b2cb34ead 819 * Permission : RW
adam_z 0:301b2cb34ead 820 *******************************************************************************/
adam_z 0:301b2cb34ead 821 typedef enum {
adam_z 0:301b2cb34ead 822 LSM6DS3_ACC_GYRO_LP_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 823 LSM6DS3_ACC_GYRO_LP_EN_ENABLED = 0x80,
adam_z 0:301b2cb34ead 824 } LSM6DS3_ACC_GYRO_LP_EN_t;
adam_z 0:301b2cb34ead 825
adam_z 0:301b2cb34ead 826 /*******************************************************************************
adam_z 0:301b2cb34ead 827 * Register : CTRL8_XL
adam_z 0:301b2cb34ead 828 * Address : 0X17
adam_z 0:301b2cb34ead 829 * Bit Group Name: FDS
adam_z 0:301b2cb34ead 830 * Permission : RW
adam_z 0:301b2cb34ead 831 *******************************************************************************/
adam_z 0:301b2cb34ead 832 typedef enum {
adam_z 0:301b2cb34ead 833 LSM6DS3_ACC_GYRO_FDS_FILTER_OFF = 0x00,
adam_z 0:301b2cb34ead 834 LSM6DS3_ACC_GYRO_FDS_FILTER_ON = 0x04,
adam_z 0:301b2cb34ead 835 } LSM6DS3_ACC_GYRO_FDS_t;
adam_z 0:301b2cb34ead 836
adam_z 0:301b2cb34ead 837 /*******************************************************************************
adam_z 0:301b2cb34ead 838 * Register : CTRL9_XL
adam_z 0:301b2cb34ead 839 * Address : 0X18
adam_z 0:301b2cb34ead 840 * Bit Group Name: XEN_XL
adam_z 0:301b2cb34ead 841 * Permission : RW
adam_z 0:301b2cb34ead 842 *******************************************************************************/
adam_z 0:301b2cb34ead 843 typedef enum {
adam_z 0:301b2cb34ead 844 LSM6DS3_ACC_GYRO_XEN_XL_DISABLED = 0x00,
adam_z 0:301b2cb34ead 845 LSM6DS3_ACC_GYRO_XEN_XL_ENABLED = 0x08,
adam_z 0:301b2cb34ead 846 } LSM6DS3_ACC_GYRO_XEN_XL_t;
adam_z 0:301b2cb34ead 847
adam_z 0:301b2cb34ead 848 /*******************************************************************************
adam_z 0:301b2cb34ead 849 * Register : CTRL9_XL
adam_z 0:301b2cb34ead 850 * Address : 0X18
adam_z 0:301b2cb34ead 851 * Bit Group Name: YEN_XL
adam_z 0:301b2cb34ead 852 * Permission : RW
adam_z 0:301b2cb34ead 853 *******************************************************************************/
adam_z 0:301b2cb34ead 854 typedef enum {
adam_z 0:301b2cb34ead 855 LSM6DS3_ACC_GYRO_YEN_XL_DISABLED = 0x00,
adam_z 0:301b2cb34ead 856 LSM6DS3_ACC_GYRO_YEN_XL_ENABLED = 0x10,
adam_z 0:301b2cb34ead 857 } LSM6DS3_ACC_GYRO_YEN_XL_t;
adam_z 0:301b2cb34ead 858
adam_z 0:301b2cb34ead 859 /*******************************************************************************
adam_z 0:301b2cb34ead 860 * Register : CTRL9_XL
adam_z 0:301b2cb34ead 861 * Address : 0X18
adam_z 0:301b2cb34ead 862 * Bit Group Name: ZEN_XL
adam_z 0:301b2cb34ead 863 * Permission : RW
adam_z 0:301b2cb34ead 864 *******************************************************************************/
adam_z 0:301b2cb34ead 865 typedef enum {
adam_z 0:301b2cb34ead 866 LSM6DS3_ACC_GYRO_ZEN_XL_DISABLED = 0x00,
adam_z 0:301b2cb34ead 867 LSM6DS3_ACC_GYRO_ZEN_XL_ENABLED = 0x20,
adam_z 0:301b2cb34ead 868 } LSM6DS3_ACC_GYRO_ZEN_XL_t;
adam_z 0:301b2cb34ead 869
adam_z 0:301b2cb34ead 870 /*******************************************************************************
adam_z 0:301b2cb34ead 871 * Register : CTRL10_C
adam_z 0:301b2cb34ead 872 * Address : 0X19
adam_z 0:301b2cb34ead 873 * Bit Group Name: SIGN_MOTION_EN
adam_z 0:301b2cb34ead 874 * Permission : RW
adam_z 0:301b2cb34ead 875 *******************************************************************************/
adam_z 0:301b2cb34ead 876 typedef enum {
adam_z 0:301b2cb34ead 877 LSM6DS3_ACC_GYRO_SIGN_MOTION_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 878 LSM6DS3_ACC_GYRO_SIGN_MOTION_EN_ENABLED = 0x01,
adam_z 0:301b2cb34ead 879 } LSM6DS3_ACC_GYRO_SIGN_MOTION_EN_t;
adam_z 0:301b2cb34ead 880
adam_z 0:301b2cb34ead 881 /*******************************************************************************
adam_z 0:301b2cb34ead 882 * Register : CTRL10_C
adam_z 0:301b2cb34ead 883 * Address : 0X19
adam_z 0:301b2cb34ead 884 * Bit Group Name: PEDO_RST_STEP
adam_z 0:301b2cb34ead 885 * Permission : RW
adam_z 0:301b2cb34ead 886 *******************************************************************************/
adam_z 0:301b2cb34ead 887 typedef enum {
adam_z 0:301b2cb34ead 888 LSM6DS3_ACC_GYRO_PEDO_RST_STEP_DISABLED = 0x00,
adam_z 0:301b2cb34ead 889 LSM6DS3_ACC_GYRO_PEDO_RST_STEP_ENABLED = 0x02,
adam_z 0:301b2cb34ead 890 } LSM6DS3_ACC_GYRO_PEDO_RST_STEP_t;
adam_z 0:301b2cb34ead 891
adam_z 0:301b2cb34ead 892 /*******************************************************************************
adam_z 0:301b2cb34ead 893 * Register : CTRL10_C
adam_z 0:301b2cb34ead 894 * Address : 0X19
adam_z 0:301b2cb34ead 895 * Bit Group Name: XEN_G
adam_z 0:301b2cb34ead 896 * Permission : RW
adam_z 0:301b2cb34ead 897 *******************************************************************************/
adam_z 0:301b2cb34ead 898 typedef enum {
adam_z 0:301b2cb34ead 899 LSM6DS3_ACC_GYRO_XEN_G_DISABLED = 0x00,
adam_z 0:301b2cb34ead 900 LSM6DS3_ACC_GYRO_XEN_G_ENABLED = 0x08,
adam_z 0:301b2cb34ead 901 } LSM6DS3_ACC_GYRO_XEN_G_t;
adam_z 0:301b2cb34ead 902
adam_z 0:301b2cb34ead 903 /*******************************************************************************
adam_z 0:301b2cb34ead 904 * Register : CTRL10_C
adam_z 0:301b2cb34ead 905 * Address : 0X19
adam_z 0:301b2cb34ead 906 * Bit Group Name: YEN_G
adam_z 0:301b2cb34ead 907 * Permission : RW
adam_z 0:301b2cb34ead 908 *******************************************************************************/
adam_z 0:301b2cb34ead 909 typedef enum {
adam_z 0:301b2cb34ead 910 LSM6DS3_ACC_GYRO_YEN_G_DISABLED = 0x00,
adam_z 0:301b2cb34ead 911 LSM6DS3_ACC_GYRO_YEN_G_ENABLED = 0x10,
adam_z 0:301b2cb34ead 912 } LSM6DS3_ACC_GYRO_YEN_G_t;
adam_z 0:301b2cb34ead 913
adam_z 0:301b2cb34ead 914 /*******************************************************************************
adam_z 0:301b2cb34ead 915 * Register : CTRL10_C
adam_z 0:301b2cb34ead 916 * Address : 0X19
adam_z 0:301b2cb34ead 917 * Bit Group Name: ZEN_G
adam_z 0:301b2cb34ead 918 * Permission : RW
adam_z 0:301b2cb34ead 919 *******************************************************************************/
adam_z 0:301b2cb34ead 920 typedef enum {
adam_z 0:301b2cb34ead 921 LSM6DS3_ACC_GYRO_ZEN_G_DISABLED = 0x00,
adam_z 0:301b2cb34ead 922 LSM6DS3_ACC_GYRO_ZEN_G_ENABLED = 0x20,
adam_z 0:301b2cb34ead 923 } LSM6DS3_ACC_GYRO_ZEN_G_t;
adam_z 0:301b2cb34ead 924
adam_z 0:301b2cb34ead 925 /*******************************************************************************
adam_z 0:301b2cb34ead 926 * Register : CTRL10_C
adam_z 0:301b2cb34ead 927 * Address : 0X19
adam_z 0:301b2cb34ead 928 * Bit Group Name: FUNC_EN
adam_z 0:301b2cb34ead 929 * Permission : RW
adam_z 0:301b2cb34ead 930 *******************************************************************************/
adam_z 0:301b2cb34ead 931 typedef enum {
adam_z 0:301b2cb34ead 932 LSM6DS3_ACC_GYRO_FUNC_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 933 LSM6DS3_ACC_GYRO_FUNC_EN_ENABLED = 0x04,
adam_z 0:301b2cb34ead 934 } LSM6DS3_ACC_GYRO_FUNC_EN_t;
adam_z 0:301b2cb34ead 935
adam_z 0:301b2cb34ead 936 /*******************************************************************************
adam_z 0:301b2cb34ead 937 * Register : MASTER_CONFIG
adam_z 0:301b2cb34ead 938 * Address : 0X1A
adam_z 0:301b2cb34ead 939 * Bit Group Name: MASTER_ON
adam_z 0:301b2cb34ead 940 * Permission : RW
adam_z 0:301b2cb34ead 941 *******************************************************************************/
adam_z 0:301b2cb34ead 942 typedef enum {
adam_z 0:301b2cb34ead 943 LSM6DS3_ACC_GYRO_MASTER_ON_DISABLED = 0x00,
adam_z 0:301b2cb34ead 944 LSM6DS3_ACC_GYRO_MASTER_ON_ENABLED = 0x01,
adam_z 0:301b2cb34ead 945 } LSM6DS3_ACC_GYRO_MASTER_ON_t;
adam_z 0:301b2cb34ead 946
adam_z 0:301b2cb34ead 947 /*******************************************************************************
adam_z 0:301b2cb34ead 948 * Register : MASTER_CONFIG
adam_z 0:301b2cb34ead 949 * Address : 0X1A
adam_z 0:301b2cb34ead 950 * Bit Group Name: IRON_EN
adam_z 0:301b2cb34ead 951 * Permission : RW
adam_z 0:301b2cb34ead 952 *******************************************************************************/
adam_z 0:301b2cb34ead 953 typedef enum {
adam_z 0:301b2cb34ead 954 LSM6DS3_ACC_GYRO_IRON_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 955 LSM6DS3_ACC_GYRO_IRON_EN_ENABLED = 0x02,
adam_z 0:301b2cb34ead 956 } LSM6DS3_ACC_GYRO_IRON_EN_t;
adam_z 0:301b2cb34ead 957
adam_z 0:301b2cb34ead 958 /*******************************************************************************
adam_z 0:301b2cb34ead 959 * Register : MASTER_CONFIG
adam_z 0:301b2cb34ead 960 * Address : 0X1A
adam_z 0:301b2cb34ead 961 * Bit Group Name: PASS_THRU_MODE
adam_z 0:301b2cb34ead 962 * Permission : RW
adam_z 0:301b2cb34ead 963 *******************************************************************************/
adam_z 0:301b2cb34ead 964 typedef enum {
adam_z 0:301b2cb34ead 965 LSM6DS3_ACC_GYRO_PASS_THRU_MODE_DISABLED = 0x00,
adam_z 0:301b2cb34ead 966 LSM6DS3_ACC_GYRO_PASS_THRU_MODE_ENABLED = 0x04,
adam_z 0:301b2cb34ead 967 } LSM6DS3_ACC_GYRO_PASS_THRU_MODE_t;
adam_z 0:301b2cb34ead 968
adam_z 0:301b2cb34ead 969 /*******************************************************************************
adam_z 0:301b2cb34ead 970 * Register : MASTER_CONFIG
adam_z 0:301b2cb34ead 971 * Address : 0X1A
adam_z 0:301b2cb34ead 972 * Bit Group Name: PULL_UP_EN
adam_z 0:301b2cb34ead 973 * Permission : RW
adam_z 0:301b2cb34ead 974 *******************************************************************************/
adam_z 0:301b2cb34ead 975 typedef enum {
adam_z 0:301b2cb34ead 976 LSM6DS3_ACC_GYRO_PULL_UP_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 977 LSM6DS3_ACC_GYRO_PULL_UP_EN_ENABLED = 0x08,
adam_z 0:301b2cb34ead 978 } LSM6DS3_ACC_GYRO_PULL_UP_EN_t;
adam_z 0:301b2cb34ead 979
adam_z 0:301b2cb34ead 980 /*******************************************************************************
adam_z 0:301b2cb34ead 981 * Register : MASTER_CONFIG
adam_z 0:301b2cb34ead 982 * Address : 0X1A
adam_z 0:301b2cb34ead 983 * Bit Group Name: START_CONFIG
adam_z 0:301b2cb34ead 984 * Permission : RW
adam_z 0:301b2cb34ead 985 *******************************************************************************/
adam_z 0:301b2cb34ead 986 typedef enum {
adam_z 0:301b2cb34ead 987 LSM6DS3_ACC_GYRO_START_CONFIG_XL_G_DRDY = 0x00,
adam_z 0:301b2cb34ead 988 LSM6DS3_ACC_GYRO_START_CONFIG_EXT_INT2 = 0x10,
adam_z 0:301b2cb34ead 989 } LSM6DS3_ACC_GYRO_START_CONFIG_t;
adam_z 0:301b2cb34ead 990
adam_z 0:301b2cb34ead 991 /*******************************************************************************
adam_z 0:301b2cb34ead 992 * Register : MASTER_CONFIG
adam_z 0:301b2cb34ead 993 * Address : 0X1A
adam_z 0:301b2cb34ead 994 * Bit Group Name: DATA_VAL_SEL_FIFO
adam_z 0:301b2cb34ead 995 * Permission : RW
adam_z 0:301b2cb34ead 996 *******************************************************************************/
adam_z 0:301b2cb34ead 997 typedef enum {
adam_z 0:301b2cb34ead 998 LSM6DS3_ACC_GYRO_DATA_VAL_SEL_FIFO_XL_G_DRDY = 0x00,
adam_z 0:301b2cb34ead 999 LSM6DS3_ACC_GYRO_DATA_VAL_SEL_FIFO_SHUB_DRDY = 0x40,
adam_z 0:301b2cb34ead 1000 } LSM6DS3_ACC_GYRO_DATA_VAL_SEL_FIFO_t;
adam_z 0:301b2cb34ead 1001
adam_z 0:301b2cb34ead 1002 /*******************************************************************************
adam_z 0:301b2cb34ead 1003 * Register : MASTER_CONFIG
adam_z 0:301b2cb34ead 1004 * Address : 0X1A
adam_z 0:301b2cb34ead 1005 * Bit Group Name: DRDY_ON_INT1
adam_z 0:301b2cb34ead 1006 * Permission : RW
adam_z 0:301b2cb34ead 1007 *******************************************************************************/
adam_z 0:301b2cb34ead 1008 typedef enum {
adam_z 0:301b2cb34ead 1009 LSM6DS3_ACC_GYRO_DRDY_ON_INT1_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1010 LSM6DS3_ACC_GYRO_DRDY_ON_INT1_ENABLED = 0x80,
adam_z 0:301b2cb34ead 1011 } LSM6DS3_ACC_GYRO_DRDY_ON_INT1_t;
adam_z 0:301b2cb34ead 1012
adam_z 0:301b2cb34ead 1013 /*******************************************************************************
adam_z 0:301b2cb34ead 1014 * Register : WAKE_UP_SRC
adam_z 0:301b2cb34ead 1015 * Address : 0X1B
adam_z 0:301b2cb34ead 1016 * Bit Group Name: Z_WU
adam_z 0:301b2cb34ead 1017 * Permission : RO
adam_z 0:301b2cb34ead 1018 *******************************************************************************/
adam_z 0:301b2cb34ead 1019 typedef enum {
adam_z 0:301b2cb34ead 1020 LSM6DS3_ACC_GYRO_Z_WU_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1021 LSM6DS3_ACC_GYRO_Z_WU_DETECTED = 0x01,
adam_z 0:301b2cb34ead 1022 } LSM6DS3_ACC_GYRO_Z_WU_t;
adam_z 0:301b2cb34ead 1023
adam_z 0:301b2cb34ead 1024 /*******************************************************************************
adam_z 0:301b2cb34ead 1025 * Register : WAKE_UP_SRC
adam_z 0:301b2cb34ead 1026 * Address : 0X1B
adam_z 0:301b2cb34ead 1027 * Bit Group Name: Y_WU
adam_z 0:301b2cb34ead 1028 * Permission : RO
adam_z 0:301b2cb34ead 1029 *******************************************************************************/
adam_z 0:301b2cb34ead 1030 typedef enum {
adam_z 0:301b2cb34ead 1031 LSM6DS3_ACC_GYRO_Y_WU_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1032 LSM6DS3_ACC_GYRO_Y_WU_DETECTED = 0x02,
adam_z 0:301b2cb34ead 1033 } LSM6DS3_ACC_GYRO_Y_WU_t;
adam_z 0:301b2cb34ead 1034
adam_z 0:301b2cb34ead 1035 /*******************************************************************************
adam_z 0:301b2cb34ead 1036 * Register : WAKE_UP_SRC
adam_z 0:301b2cb34ead 1037 * Address : 0X1B
adam_z 0:301b2cb34ead 1038 * Bit Group Name: X_WU
adam_z 0:301b2cb34ead 1039 * Permission : RO
adam_z 0:301b2cb34ead 1040 *******************************************************************************/
adam_z 0:301b2cb34ead 1041 typedef enum {
adam_z 0:301b2cb34ead 1042 LSM6DS3_ACC_GYRO_X_WU_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1043 LSM6DS3_ACC_GYRO_X_WU_DETECTED = 0x04,
adam_z 0:301b2cb34ead 1044 } LSM6DS3_ACC_GYRO_X_WU_t;
adam_z 0:301b2cb34ead 1045
adam_z 0:301b2cb34ead 1046 /*******************************************************************************
adam_z 0:301b2cb34ead 1047 * Register : WAKE_UP_SRC
adam_z 0:301b2cb34ead 1048 * Address : 0X1B
adam_z 0:301b2cb34ead 1049 * Bit Group Name: WU_EV_STATUS
adam_z 0:301b2cb34ead 1050 * Permission : RO
adam_z 0:301b2cb34ead 1051 *******************************************************************************/
adam_z 0:301b2cb34ead 1052 typedef enum {
adam_z 0:301b2cb34ead 1053 LSM6DS3_ACC_GYRO_WU_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1054 LSM6DS3_ACC_GYRO_WU_EV_STATUS_DETECTED = 0x08,
adam_z 0:301b2cb34ead 1055 } LSM6DS3_ACC_GYRO_WU_EV_STATUS_t;
adam_z 0:301b2cb34ead 1056
adam_z 0:301b2cb34ead 1057 /*******************************************************************************
adam_z 0:301b2cb34ead 1058 * Register : WAKE_UP_SRC
adam_z 0:301b2cb34ead 1059 * Address : 0X1B
adam_z 0:301b2cb34ead 1060 * Bit Group Name: SLEEP_EV_STATUS
adam_z 0:301b2cb34ead 1061 * Permission : RO
adam_z 0:301b2cb34ead 1062 *******************************************************************************/
adam_z 0:301b2cb34ead 1063 typedef enum {
adam_z 0:301b2cb34ead 1064 LSM6DS3_ACC_GYRO_SLEEP_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1065 LSM6DS3_ACC_GYRO_SLEEP_EV_STATUS_DETECTED = 0x10,
adam_z 0:301b2cb34ead 1066 } LSM6DS3_ACC_GYRO_SLEEP_EV_STATUS_t;
adam_z 0:301b2cb34ead 1067
adam_z 0:301b2cb34ead 1068 /*******************************************************************************
adam_z 0:301b2cb34ead 1069 * Register : WAKE_UP_SRC
adam_z 0:301b2cb34ead 1070 * Address : 0X1B
adam_z 0:301b2cb34ead 1071 * Bit Group Name: FF_EV_STATUS
adam_z 0:301b2cb34ead 1072 * Permission : RO
adam_z 0:301b2cb34ead 1073 *******************************************************************************/
adam_z 0:301b2cb34ead 1074 typedef enum {
adam_z 0:301b2cb34ead 1075 LSM6DS3_ACC_GYRO_FF_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1076 LSM6DS3_ACC_GYRO_FF_EV_STATUS_DETECTED = 0x20,
adam_z 0:301b2cb34ead 1077 } LSM6DS3_ACC_GYRO_FF_EV_STATUS_t;
adam_z 0:301b2cb34ead 1078
adam_z 0:301b2cb34ead 1079 /*******************************************************************************
adam_z 0:301b2cb34ead 1080 * Register : TAP_SRC
adam_z 0:301b2cb34ead 1081 * Address : 0X1C
adam_z 0:301b2cb34ead 1082 * Bit Group Name: Z_TAP
adam_z 0:301b2cb34ead 1083 * Permission : RO
adam_z 0:301b2cb34ead 1084 *******************************************************************************/
adam_z 0:301b2cb34ead 1085 typedef enum {
adam_z 0:301b2cb34ead 1086 LSM6DS3_ACC_GYRO_Z_TAP_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1087 LSM6DS3_ACC_GYRO_Z_TAP_DETECTED = 0x01,
adam_z 0:301b2cb34ead 1088 } LSM6DS3_ACC_GYRO_Z_TAP_t;
adam_z 0:301b2cb34ead 1089
adam_z 0:301b2cb34ead 1090 /*******************************************************************************
adam_z 0:301b2cb34ead 1091 * Register : TAP_SRC
adam_z 0:301b2cb34ead 1092 * Address : 0X1C
adam_z 0:301b2cb34ead 1093 * Bit Group Name: Y_TAP
adam_z 0:301b2cb34ead 1094 * Permission : RO
adam_z 0:301b2cb34ead 1095 *******************************************************************************/
adam_z 0:301b2cb34ead 1096 typedef enum {
adam_z 0:301b2cb34ead 1097 LSM6DS3_ACC_GYRO_Y_TAP_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1098 LSM6DS3_ACC_GYRO_Y_TAP_DETECTED = 0x02,
adam_z 0:301b2cb34ead 1099 } LSM6DS3_ACC_GYRO_Y_TAP_t;
adam_z 0:301b2cb34ead 1100
adam_z 0:301b2cb34ead 1101 /*******************************************************************************
adam_z 0:301b2cb34ead 1102 * Register : TAP_SRC
adam_z 0:301b2cb34ead 1103 * Address : 0X1C
adam_z 0:301b2cb34ead 1104 * Bit Group Name: X_TAP
adam_z 0:301b2cb34ead 1105 * Permission : RO
adam_z 0:301b2cb34ead 1106 *******************************************************************************/
adam_z 0:301b2cb34ead 1107 typedef enum {
adam_z 0:301b2cb34ead 1108 LSM6DS3_ACC_GYRO_X_TAP_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1109 LSM6DS3_ACC_GYRO_X_TAP_DETECTED = 0x04,
adam_z 0:301b2cb34ead 1110 } LSM6DS3_ACC_GYRO_X_TAP_t;
adam_z 0:301b2cb34ead 1111
adam_z 0:301b2cb34ead 1112 /*******************************************************************************
adam_z 0:301b2cb34ead 1113 * Register : TAP_SRC
adam_z 0:301b2cb34ead 1114 * Address : 0X1C
adam_z 0:301b2cb34ead 1115 * Bit Group Name: TAP_SIGN
adam_z 0:301b2cb34ead 1116 * Permission : RO
adam_z 0:301b2cb34ead 1117 *******************************************************************************/
adam_z 0:301b2cb34ead 1118 typedef enum {
adam_z 0:301b2cb34ead 1119 LSM6DS3_ACC_GYRO_TAP_SIGN_POS_SIGN = 0x00,
adam_z 0:301b2cb34ead 1120 LSM6DS3_ACC_GYRO_TAP_SIGN_NEG_SIGN = 0x08,
adam_z 0:301b2cb34ead 1121 } LSM6DS3_ACC_GYRO_TAP_SIGN_t;
adam_z 0:301b2cb34ead 1122
adam_z 0:301b2cb34ead 1123 /*******************************************************************************
adam_z 0:301b2cb34ead 1124 * Register : TAP_SRC
adam_z 0:301b2cb34ead 1125 * Address : 0X1C
adam_z 0:301b2cb34ead 1126 * Bit Group Name: DOUBLE_TAP_EV_STATUS
adam_z 0:301b2cb34ead 1127 * Permission : RO
adam_z 0:301b2cb34ead 1128 *******************************************************************************/
adam_z 0:301b2cb34ead 1129 typedef enum {
adam_z 0:301b2cb34ead 1130 LSM6DS3_ACC_GYRO_DOUBLE_TAP_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1131 LSM6DS3_ACC_GYRO_DOUBLE_TAP_EV_STATUS_DETECTED = 0x10,
adam_z 0:301b2cb34ead 1132 } LSM6DS3_ACC_GYRO_DOUBLE_TAP_EV_STATUS_t;
adam_z 0:301b2cb34ead 1133
adam_z 0:301b2cb34ead 1134 /*******************************************************************************
adam_z 0:301b2cb34ead 1135 * Register : TAP_SRC
adam_z 0:301b2cb34ead 1136 * Address : 0X1C
adam_z 0:301b2cb34ead 1137 * Bit Group Name: SINGLE_TAP_EV_STATUS
adam_z 0:301b2cb34ead 1138 * Permission : RO
adam_z 0:301b2cb34ead 1139 *******************************************************************************/
adam_z 0:301b2cb34ead 1140 typedef enum {
adam_z 0:301b2cb34ead 1141 LSM6DS3_ACC_GYRO_SINGLE_TAP_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1142 LSM6DS3_ACC_GYRO_SINGLE_TAP_EV_STATUS_DETECTED = 0x20,
adam_z 0:301b2cb34ead 1143 } LSM6DS3_ACC_GYRO_SINGLE_TAP_EV_STATUS_t;
adam_z 0:301b2cb34ead 1144
adam_z 0:301b2cb34ead 1145 /*******************************************************************************
adam_z 0:301b2cb34ead 1146 * Register : TAP_SRC
adam_z 0:301b2cb34ead 1147 * Address : 0X1C
adam_z 0:301b2cb34ead 1148 * Bit Group Name: TAP_EV_STATUS
adam_z 0:301b2cb34ead 1149 * Permission : RO
adam_z 0:301b2cb34ead 1150 *******************************************************************************/
adam_z 0:301b2cb34ead 1151 typedef enum {
adam_z 0:301b2cb34ead 1152 LSM6DS3_ACC_GYRO_TAP_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1153 LSM6DS3_ACC_GYRO_TAP_EV_STATUS_DETECTED = 0x40,
adam_z 0:301b2cb34ead 1154 } LSM6DS3_ACC_GYRO_TAP_EV_STATUS_t;
adam_z 0:301b2cb34ead 1155
adam_z 0:301b2cb34ead 1156 /*******************************************************************************
adam_z 0:301b2cb34ead 1157 * Register : D6D_SRC
adam_z 0:301b2cb34ead 1158 * Address : 0X1D
adam_z 0:301b2cb34ead 1159 * Bit Group Name: DSD_XL
adam_z 0:301b2cb34ead 1160 * Permission : RO
adam_z 0:301b2cb34ead 1161 *******************************************************************************/
adam_z 0:301b2cb34ead 1162 typedef enum {
adam_z 0:301b2cb34ead 1163 LSM6DS3_ACC_GYRO_DSD_XL_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1164 LSM6DS3_ACC_GYRO_DSD_XL_DETECTED = 0x01,
adam_z 0:301b2cb34ead 1165 } LSM6DS3_ACC_GYRO_DSD_XL_t;
adam_z 0:301b2cb34ead 1166
adam_z 0:301b2cb34ead 1167 /*******************************************************************************
adam_z 0:301b2cb34ead 1168 * Register : D6D_SRC
adam_z 0:301b2cb34ead 1169 * Address : 0X1D
adam_z 0:301b2cb34ead 1170 * Bit Group Name: DSD_XH
adam_z 0:301b2cb34ead 1171 * Permission : RO
adam_z 0:301b2cb34ead 1172 *******************************************************************************/
adam_z 0:301b2cb34ead 1173 typedef enum {
adam_z 0:301b2cb34ead 1174 LSM6DS3_ACC_GYRO_DSD_XH_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1175 LSM6DS3_ACC_GYRO_DSD_XH_DETECTED = 0x02,
adam_z 0:301b2cb34ead 1176 } LSM6DS3_ACC_GYRO_DSD_XH_t;
adam_z 0:301b2cb34ead 1177
adam_z 0:301b2cb34ead 1178 /*******************************************************************************
adam_z 0:301b2cb34ead 1179 * Register : D6D_SRC
adam_z 0:301b2cb34ead 1180 * Address : 0X1D
adam_z 0:301b2cb34ead 1181 * Bit Group Name: DSD_YL
adam_z 0:301b2cb34ead 1182 * Permission : RO
adam_z 0:301b2cb34ead 1183 *******************************************************************************/
adam_z 0:301b2cb34ead 1184 typedef enum {
adam_z 0:301b2cb34ead 1185 LSM6DS3_ACC_GYRO_DSD_YL_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1186 LSM6DS3_ACC_GYRO_DSD_YL_DETECTED = 0x04,
adam_z 0:301b2cb34ead 1187 } LSM6DS3_ACC_GYRO_DSD_YL_t;
adam_z 0:301b2cb34ead 1188
adam_z 0:301b2cb34ead 1189 /*******************************************************************************
adam_z 0:301b2cb34ead 1190 * Register : D6D_SRC
adam_z 0:301b2cb34ead 1191 * Address : 0X1D
adam_z 0:301b2cb34ead 1192 * Bit Group Name: DSD_YH
adam_z 0:301b2cb34ead 1193 * Permission : RO
adam_z 0:301b2cb34ead 1194 *******************************************************************************/
adam_z 0:301b2cb34ead 1195 typedef enum {
adam_z 0:301b2cb34ead 1196 LSM6DS3_ACC_GYRO_DSD_YH_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1197 LSM6DS3_ACC_GYRO_DSD_YH_DETECTED = 0x08,
adam_z 0:301b2cb34ead 1198 } LSM6DS3_ACC_GYRO_DSD_YH_t;
adam_z 0:301b2cb34ead 1199
adam_z 0:301b2cb34ead 1200 /*******************************************************************************
adam_z 0:301b2cb34ead 1201 * Register : D6D_SRC
adam_z 0:301b2cb34ead 1202 * Address : 0X1D
adam_z 0:301b2cb34ead 1203 * Bit Group Name: DSD_ZL
adam_z 0:301b2cb34ead 1204 * Permission : RO
adam_z 0:301b2cb34ead 1205 *******************************************************************************/
adam_z 0:301b2cb34ead 1206 typedef enum {
adam_z 0:301b2cb34ead 1207 LSM6DS3_ACC_GYRO_DSD_ZL_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1208 LSM6DS3_ACC_GYRO_DSD_ZL_DETECTED = 0x10,
adam_z 0:301b2cb34ead 1209 } LSM6DS3_ACC_GYRO_DSD_ZL_t;
adam_z 0:301b2cb34ead 1210
adam_z 0:301b2cb34ead 1211 /*******************************************************************************
adam_z 0:301b2cb34ead 1212 * Register : D6D_SRC
adam_z 0:301b2cb34ead 1213 * Address : 0X1D
adam_z 0:301b2cb34ead 1214 * Bit Group Name: DSD_ZH
adam_z 0:301b2cb34ead 1215 * Permission : RO
adam_z 0:301b2cb34ead 1216 *******************************************************************************/
adam_z 0:301b2cb34ead 1217 typedef enum {
adam_z 0:301b2cb34ead 1218 LSM6DS3_ACC_GYRO_DSD_ZH_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1219 LSM6DS3_ACC_GYRO_DSD_ZH_DETECTED = 0x20,
adam_z 0:301b2cb34ead 1220 } LSM6DS3_ACC_GYRO_DSD_ZH_t;
adam_z 0:301b2cb34ead 1221
adam_z 0:301b2cb34ead 1222 /*******************************************************************************
adam_z 0:301b2cb34ead 1223 * Register : D6D_SRC
adam_z 0:301b2cb34ead 1224 * Address : 0X1D
adam_z 0:301b2cb34ead 1225 * Bit Group Name: D6D_EV_STATUS
adam_z 0:301b2cb34ead 1226 * Permission : RO
adam_z 0:301b2cb34ead 1227 *******************************************************************************/
adam_z 0:301b2cb34ead 1228 typedef enum {
adam_z 0:301b2cb34ead 1229 LSM6DS3_ACC_GYRO_D6D_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1230 LSM6DS3_ACC_GYRO_D6D_EV_STATUS_DETECTED = 0x40,
adam_z 0:301b2cb34ead 1231 } LSM6DS3_ACC_GYRO_D6D_EV_STATUS_t;
adam_z 0:301b2cb34ead 1232
adam_z 0:301b2cb34ead 1233 /*******************************************************************************
adam_z 0:301b2cb34ead 1234 * Register : STATUS_REG
adam_z 0:301b2cb34ead 1235 * Address : 0X1E
adam_z 0:301b2cb34ead 1236 * Bit Group Name: XLDA
adam_z 0:301b2cb34ead 1237 * Permission : RO
adam_z 0:301b2cb34ead 1238 *******************************************************************************/
adam_z 0:301b2cb34ead 1239 typedef enum {
adam_z 0:301b2cb34ead 1240 LSM6DS3_ACC_GYRO_XLDA_NO_DATA_AVAIL = 0x00,
adam_z 0:301b2cb34ead 1241 LSM6DS3_ACC_GYRO_XLDA_DATA_AVAIL = 0x01,
adam_z 0:301b2cb34ead 1242 } LSM6DS3_ACC_GYRO_XLDA_t;
adam_z 0:301b2cb34ead 1243
adam_z 0:301b2cb34ead 1244 /*******************************************************************************
adam_z 0:301b2cb34ead 1245 * Register : STATUS_REG
adam_z 0:301b2cb34ead 1246 * Address : 0X1E
adam_z 0:301b2cb34ead 1247 * Bit Group Name: GDA
adam_z 0:301b2cb34ead 1248 * Permission : RO
adam_z 0:301b2cb34ead 1249 *******************************************************************************/
adam_z 0:301b2cb34ead 1250 typedef enum {
adam_z 0:301b2cb34ead 1251 LSM6DS3_ACC_GYRO_GDA_NO_DATA_AVAIL = 0x00,
adam_z 0:301b2cb34ead 1252 LSM6DS3_ACC_GYRO_GDA_DATA_AVAIL = 0x02,
adam_z 0:301b2cb34ead 1253 } LSM6DS3_ACC_GYRO_GDA_t;
adam_z 0:301b2cb34ead 1254
adam_z 0:301b2cb34ead 1255 /*******************************************************************************
adam_z 0:301b2cb34ead 1256 * Register : STATUS_REG
adam_z 0:301b2cb34ead 1257 * Address : 0X1E
adam_z 0:301b2cb34ead 1258 * Bit Group Name: EV_BOOT
adam_z 0:301b2cb34ead 1259 * Permission : RO
adam_z 0:301b2cb34ead 1260 *******************************************************************************/
adam_z 0:301b2cb34ead 1261 typedef enum {
adam_z 0:301b2cb34ead 1262 LSM6DS3_ACC_GYRO_EV_BOOT_NO_BOOT_RUNNING = 0x00,
adam_z 0:301b2cb34ead 1263 LSM6DS3_ACC_GYRO_EV_BOOT_BOOT_IS_RUNNING = 0x08,
adam_z 0:301b2cb34ead 1264 } LSM6DS3_ACC_GYRO_EV_BOOT_t;
adam_z 0:301b2cb34ead 1265
adam_z 0:301b2cb34ead 1266 /*******************************************************************************
adam_z 0:301b2cb34ead 1267 * Register : FIFO_STATUS1
adam_z 0:301b2cb34ead 1268 * Address : 0X3A
adam_z 0:301b2cb34ead 1269 * Bit Group Name: DIFF_FIFO
adam_z 0:301b2cb34ead 1270 * Permission : RO
adam_z 0:301b2cb34ead 1271 *******************************************************************************/
adam_z 0:301b2cb34ead 1272 #define LSM6DS3_ACC_GYRO_DIFF_FIFO_STATUS1_MASK 0xFF
adam_z 0:301b2cb34ead 1273 #define LSM6DS3_ACC_GYRO_DIFF_FIFO_STATUS1_POSITION 0
adam_z 0:301b2cb34ead 1274 #define LSM6DS3_ACC_GYRO_DIFF_FIFO_STATUS2_MASK 0xF
adam_z 0:301b2cb34ead 1275 #define LSM6DS3_ACC_GYRO_DIFF_FIFO_STATUS2_POSITION 0
adam_z 0:301b2cb34ead 1276
adam_z 0:301b2cb34ead 1277 /*******************************************************************************
adam_z 0:301b2cb34ead 1278 * Register : FIFO_STATUS2
adam_z 0:301b2cb34ead 1279 * Address : 0X3B
adam_z 0:301b2cb34ead 1280 * Bit Group Name: FIFO_EMPTY
adam_z 0:301b2cb34ead 1281 * Permission : RO
adam_z 0:301b2cb34ead 1282 *******************************************************************************/
adam_z 0:301b2cb34ead 1283 typedef enum {
adam_z 0:301b2cb34ead 1284 LSM6DS3_ACC_GYRO_FIFO_EMPTY_FIFO_NOT_EMPTY = 0x00,
adam_z 0:301b2cb34ead 1285 LSM6DS3_ACC_GYRO_FIFO_EMPTY_FIFO_EMPTY = 0x10,
adam_z 0:301b2cb34ead 1286 } LSM6DS3_ACC_GYRO_FIFO_EMPTY_t;
adam_z 0:301b2cb34ead 1287
adam_z 0:301b2cb34ead 1288 /*******************************************************************************
adam_z 0:301b2cb34ead 1289 * Register : FIFO_STATUS2
adam_z 0:301b2cb34ead 1290 * Address : 0X3B
adam_z 0:301b2cb34ead 1291 * Bit Group Name: FIFO_FULL
adam_z 0:301b2cb34ead 1292 * Permission : RO
adam_z 0:301b2cb34ead 1293 *******************************************************************************/
adam_z 0:301b2cb34ead 1294 typedef enum {
adam_z 0:301b2cb34ead 1295 LSM6DS3_ACC_GYRO_FIFO_FULL_FIFO_NOT_FULL = 0x00,
adam_z 0:301b2cb34ead 1296 LSM6DS3_ACC_GYRO_FIFO_FULL_FIFO_FULL = 0x20,
adam_z 0:301b2cb34ead 1297 } LSM6DS3_ACC_GYRO_FIFO_FULL_t;
adam_z 0:301b2cb34ead 1298
adam_z 0:301b2cb34ead 1299 /*******************************************************************************
adam_z 0:301b2cb34ead 1300 * Register : FIFO_STATUS2
adam_z 0:301b2cb34ead 1301 * Address : 0X3B
adam_z 0:301b2cb34ead 1302 * Bit Group Name: OVERRUN
adam_z 0:301b2cb34ead 1303 * Permission : RO
adam_z 0:301b2cb34ead 1304 *******************************************************************************/
adam_z 0:301b2cb34ead 1305 typedef enum {
adam_z 0:301b2cb34ead 1306 LSM6DS3_ACC_GYRO_OVERRUN_NO_OVERRUN = 0x00,
adam_z 0:301b2cb34ead 1307 LSM6DS3_ACC_GYRO_OVERRUN_OVERRUN = 0x40,
adam_z 0:301b2cb34ead 1308 } LSM6DS3_ACC_GYRO_OVERRUN_t;
adam_z 0:301b2cb34ead 1309
adam_z 0:301b2cb34ead 1310 /*******************************************************************************
adam_z 0:301b2cb34ead 1311 * Register : FIFO_STATUS2
adam_z 0:301b2cb34ead 1312 * Address : 0X3B
adam_z 0:301b2cb34ead 1313 * Bit Group Name: WTM
adam_z 0:301b2cb34ead 1314 * Permission : RO
adam_z 0:301b2cb34ead 1315 *******************************************************************************/
adam_z 0:301b2cb34ead 1316 typedef enum {
adam_z 0:301b2cb34ead 1317 LSM6DS3_ACC_GYRO_WTM_BELOW_WTM = 0x00,
adam_z 0:301b2cb34ead 1318 LSM6DS3_ACC_GYRO_WTM_ABOVE_OR_EQUAL_WTM = 0x80,
adam_z 0:301b2cb34ead 1319 } LSM6DS3_ACC_GYRO_WTM_t;
adam_z 0:301b2cb34ead 1320
adam_z 0:301b2cb34ead 1321 /*******************************************************************************
adam_z 0:301b2cb34ead 1322 * Register : FIFO_STATUS3
adam_z 0:301b2cb34ead 1323 * Address : 0X3C
adam_z 0:301b2cb34ead 1324 * Bit Group Name: FIFO_PATTERN
adam_z 0:301b2cb34ead 1325 * Permission : RO
adam_z 0:301b2cb34ead 1326 *******************************************************************************/
adam_z 0:301b2cb34ead 1327 #define LSM6DS3_ACC_GYRO_FIFO_STATUS3_PATTERN_MASK 0xFF
adam_z 0:301b2cb34ead 1328 #define LSM6DS3_ACC_GYRO_FIFO_STATUS3_PATTERN_POSITION 0
adam_z 0:301b2cb34ead 1329 #define LSM6DS3_ACC_GYRO_FIFO_STATUS4_PATTERN_MASK 0x03
adam_z 0:301b2cb34ead 1330 #define LSM6DS3_ACC_GYRO_FIFO_STATUS4_PATTERN_POSITION 0
adam_z 0:301b2cb34ead 1331
adam_z 0:301b2cb34ead 1332 /*******************************************************************************
adam_z 0:301b2cb34ead 1333 * Register : FUNC_SRC
adam_z 0:301b2cb34ead 1334 * Address : 0X53
adam_z 0:301b2cb34ead 1335 * Bit Group Name: SENS_HUB_END
adam_z 0:301b2cb34ead 1336 * Permission : RO
adam_z 0:301b2cb34ead 1337 *******************************************************************************/
adam_z 0:301b2cb34ead 1338 typedef enum {
adam_z 0:301b2cb34ead 1339 LSM6DS3_ACC_GYRO_SENS_HUB_END_STILL_ONGOING = 0x00,
adam_z 0:301b2cb34ead 1340 LSM6DS3_ACC_GYRO_SENS_HUB_END_OP_COMPLETED = 0x01,
adam_z 0:301b2cb34ead 1341 } LSM6DS3_ACC_GYRO_SENS_HUB_END_t;
adam_z 0:301b2cb34ead 1342
adam_z 0:301b2cb34ead 1343 /*******************************************************************************
adam_z 0:301b2cb34ead 1344 * Register : FUNC_SRC
adam_z 0:301b2cb34ead 1345 * Address : 0X53
adam_z 0:301b2cb34ead 1346 * Bit Group Name: SOFT_IRON_END
adam_z 0:301b2cb34ead 1347 * Permission : RO
adam_z 0:301b2cb34ead 1348 *******************************************************************************/
adam_z 0:301b2cb34ead 1349 typedef enum {
adam_z 0:301b2cb34ead 1350 LSM6DS3_ACC_GYRO_SOFT_IRON_END_NOT_COMPLETED = 0x00,
adam_z 0:301b2cb34ead 1351 LSM6DS3_ACC_GYRO_SOFT_IRON_END_COMPLETED = 0x02,
adam_z 0:301b2cb34ead 1352 } LSM6DS3_ACC_GYRO_SOFT_IRON_END_t;
adam_z 0:301b2cb34ead 1353
adam_z 0:301b2cb34ead 1354 /*******************************************************************************
adam_z 0:301b2cb34ead 1355 * Register : FUNC_SRC
adam_z 0:301b2cb34ead 1356 * Address : 0X53
adam_z 0:301b2cb34ead 1357 * Bit Group Name: PEDO_EV_STATUS
adam_z 0:301b2cb34ead 1358 * Permission : RO
adam_z 0:301b2cb34ead 1359 *******************************************************************************/
adam_z 0:301b2cb34ead 1360 typedef enum {
adam_z 0:301b2cb34ead 1361 LSM6DS3_ACC_GYRO_PEDO_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1362 LSM6DS3_ACC_GYRO_PEDO_EV_STATUS_DETECTED = 0x10,
adam_z 0:301b2cb34ead 1363 } LSM6DS3_ACC_GYRO_PEDO_EV_STATUS_t;
adam_z 0:301b2cb34ead 1364
adam_z 0:301b2cb34ead 1365 /*******************************************************************************
adam_z 0:301b2cb34ead 1366 * Register : FUNC_SRC
adam_z 0:301b2cb34ead 1367 * Address : 0X53
adam_z 0:301b2cb34ead 1368 * Bit Group Name: TILT_EV_STATUS
adam_z 0:301b2cb34ead 1369 * Permission : RO
adam_z 0:301b2cb34ead 1370 *******************************************************************************/
adam_z 0:301b2cb34ead 1371 typedef enum {
adam_z 0:301b2cb34ead 1372 LSM6DS3_ACC_GYRO_TILT_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1373 LSM6DS3_ACC_GYRO_TILT_EV_STATUS_DETECTED = 0x20,
adam_z 0:301b2cb34ead 1374 } LSM6DS3_ACC_GYRO_TILT_EV_STATUS_t;
adam_z 0:301b2cb34ead 1375
adam_z 0:301b2cb34ead 1376 /*******************************************************************************
adam_z 0:301b2cb34ead 1377 * Register : FUNC_SRC
adam_z 0:301b2cb34ead 1378 * Address : 0X53
adam_z 0:301b2cb34ead 1379 * Bit Group Name: SIGN_MOT_EV_STATUS
adam_z 0:301b2cb34ead 1380 * Permission : RO
adam_z 0:301b2cb34ead 1381 *******************************************************************************/
adam_z 0:301b2cb34ead 1382 typedef enum {
adam_z 0:301b2cb34ead 1383 LSM6DS3_ACC_GYRO_SIGN_MOT_EV_STATUS_NOT_DETECTED = 0x00,
adam_z 0:301b2cb34ead 1384 LSM6DS3_ACC_GYRO_SIGN_MOT_EV_STATUS_DETECTED = 0x40,
adam_z 0:301b2cb34ead 1385 } LSM6DS3_ACC_GYRO_SIGN_MOT_EV_STATUS_t;
adam_z 0:301b2cb34ead 1386
adam_z 0:301b2cb34ead 1387 /*******************************************************************************
adam_z 0:301b2cb34ead 1388 * Register : TAP_CFG1
adam_z 0:301b2cb34ead 1389 * Address : 0X58
adam_z 0:301b2cb34ead 1390 * Bit Group Name: LIR
adam_z 0:301b2cb34ead 1391 * Permission : RW
adam_z 0:301b2cb34ead 1392 *******************************************************************************/
adam_z 0:301b2cb34ead 1393 typedef enum {
adam_z 0:301b2cb34ead 1394 LSM6DS3_ACC_GYRO_LIR_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1395 LSM6DS3_ACC_GYRO_LIR_ENABLED = 0x01,
adam_z 0:301b2cb34ead 1396 } LSM6DS3_ACC_GYRO_LIR_t;
adam_z 0:301b2cb34ead 1397
adam_z 0:301b2cb34ead 1398 /*******************************************************************************
adam_z 0:301b2cb34ead 1399 * Register : TAP_CFG1
adam_z 0:301b2cb34ead 1400 * Address : 0X58
adam_z 0:301b2cb34ead 1401 * Bit Group Name: TAP_Z_EN
adam_z 0:301b2cb34ead 1402 * Permission : RW
adam_z 0:301b2cb34ead 1403 *******************************************************************************/
adam_z 0:301b2cb34ead 1404 typedef enum {
adam_z 0:301b2cb34ead 1405 LSM6DS3_ACC_GYRO_TAP_Z_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1406 LSM6DS3_ACC_GYRO_TAP_Z_EN_ENABLED = 0x02,
adam_z 0:301b2cb34ead 1407 } LSM6DS3_ACC_GYRO_TAP_Z_EN_t;
adam_z 0:301b2cb34ead 1408
adam_z 0:301b2cb34ead 1409 /*******************************************************************************
adam_z 0:301b2cb34ead 1410 * Register : TAP_CFG1
adam_z 0:301b2cb34ead 1411 * Address : 0X58
adam_z 0:301b2cb34ead 1412 * Bit Group Name: TAP_Y_EN
adam_z 0:301b2cb34ead 1413 * Permission : RW
adam_z 0:301b2cb34ead 1414 *******************************************************************************/
adam_z 0:301b2cb34ead 1415 typedef enum {
adam_z 0:301b2cb34ead 1416 LSM6DS3_ACC_GYRO_TAP_Y_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1417 LSM6DS3_ACC_GYRO_TAP_Y_EN_ENABLED = 0x04,
adam_z 0:301b2cb34ead 1418 } LSM6DS3_ACC_GYRO_TAP_Y_EN_t;
adam_z 0:301b2cb34ead 1419
adam_z 0:301b2cb34ead 1420 /*******************************************************************************
adam_z 0:301b2cb34ead 1421 * Register : TAP_CFG1
adam_z 0:301b2cb34ead 1422 * Address : 0X58
adam_z 0:301b2cb34ead 1423 * Bit Group Name: TAP_X_EN
adam_z 0:301b2cb34ead 1424 * Permission : RW
adam_z 0:301b2cb34ead 1425 *******************************************************************************/
adam_z 0:301b2cb34ead 1426 typedef enum {
adam_z 0:301b2cb34ead 1427 LSM6DS3_ACC_GYRO_TAP_X_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1428 LSM6DS3_ACC_GYRO_TAP_X_EN_ENABLED = 0x08,
adam_z 0:301b2cb34ead 1429 } LSM6DS3_ACC_GYRO_TAP_X_EN_t;
adam_z 0:301b2cb34ead 1430
adam_z 0:301b2cb34ead 1431 /*******************************************************************************
adam_z 0:301b2cb34ead 1432 * Register : TAP_CFG1
adam_z 0:301b2cb34ead 1433 * Address : 0X58
adam_z 0:301b2cb34ead 1434 * Bit Group Name: TILT_EN
adam_z 0:301b2cb34ead 1435 * Permission : RW
adam_z 0:301b2cb34ead 1436 *******************************************************************************/
adam_z 0:301b2cb34ead 1437 typedef enum {
adam_z 0:301b2cb34ead 1438 LSM6DS3_ACC_GYRO_TILT_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1439 LSM6DS3_ACC_GYRO_TILT_EN_ENABLED = 0x20,
adam_z 0:301b2cb34ead 1440 } LSM6DS3_ACC_GYRO_TILT_EN_t;
adam_z 0:301b2cb34ead 1441
adam_z 0:301b2cb34ead 1442 /*******************************************************************************
adam_z 0:301b2cb34ead 1443 * Register : TAP_CFG1
adam_z 0:301b2cb34ead 1444 * Address : 0X58
adam_z 0:301b2cb34ead 1445 * Bit Group Name: PEDO_EN
adam_z 0:301b2cb34ead 1446 * Permission : RW
adam_z 0:301b2cb34ead 1447 *******************************************************************************/
adam_z 0:301b2cb34ead 1448 typedef enum {
adam_z 0:301b2cb34ead 1449 LSM6DS3_ACC_GYRO_PEDO_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1450 LSM6DS3_ACC_GYRO_PEDO_EN_ENABLED = 0x40,
adam_z 0:301b2cb34ead 1451 } LSM6DS3_ACC_GYRO_PEDO_EN_t;
adam_z 0:301b2cb34ead 1452
adam_z 0:301b2cb34ead 1453 /*******************************************************************************
adam_z 0:301b2cb34ead 1454 * Register : TAP_CFG1
adam_z 0:301b2cb34ead 1455 * Address : 0X58
adam_z 0:301b2cb34ead 1456 * Bit Group Name: TIMER_EN
adam_z 0:301b2cb34ead 1457 * Permission : RW
adam_z 0:301b2cb34ead 1458 *******************************************************************************/
adam_z 0:301b2cb34ead 1459 typedef enum {
adam_z 0:301b2cb34ead 1460 LSM6DS3_ACC_GYRO_TIMER_EN_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1461 LSM6DS3_ACC_GYRO_TIMER_EN_ENABLED = 0x80,
adam_z 0:301b2cb34ead 1462 } LSM6DS3_ACC_GYRO_TIMER_EN_t;
adam_z 0:301b2cb34ead 1463
adam_z 0:301b2cb34ead 1464 /*******************************************************************************
adam_z 0:301b2cb34ead 1465 * Register : TAP_THS_6D
adam_z 0:301b2cb34ead 1466 * Address : 0X59
adam_z 0:301b2cb34ead 1467 * Bit Group Name: TAP_THS
adam_z 0:301b2cb34ead 1468 * Permission : RW
adam_z 0:301b2cb34ead 1469 *******************************************************************************/
adam_z 0:301b2cb34ead 1470 #define LSM6DS3_ACC_GYRO_TAP_THS_MASK 0x1F
adam_z 0:301b2cb34ead 1471 #define LSM6DS3_ACC_GYRO_TAP_THS_POSITION 0
adam_z 0:301b2cb34ead 1472
adam_z 0:301b2cb34ead 1473 /*******************************************************************************
adam_z 0:301b2cb34ead 1474 * Register : TAP_THS_6D
adam_z 0:301b2cb34ead 1475 * Address : 0X59
adam_z 0:301b2cb34ead 1476 * Bit Group Name: SIXD_THS
adam_z 0:301b2cb34ead 1477 * Permission : RW
adam_z 0:301b2cb34ead 1478 *******************************************************************************/
adam_z 0:301b2cb34ead 1479 typedef enum {
adam_z 0:301b2cb34ead 1480 LSM6DS3_ACC_GYRO_SIXD_THS_80_degree = 0x00,
adam_z 0:301b2cb34ead 1481 LSM6DS3_ACC_GYRO_SIXD_THS_70_degree = 0x20,
adam_z 0:301b2cb34ead 1482 LSM6DS3_ACC_GYRO_SIXD_THS_60_degree = 0x40,
adam_z 0:301b2cb34ead 1483 LSM6DS3_ACC_GYRO_SIXD_THS_50_degree = 0x60,
adam_z 0:301b2cb34ead 1484 } LSM6DS3_ACC_GYRO_SIXD_THS_t;
adam_z 0:301b2cb34ead 1485
adam_z 0:301b2cb34ead 1486 /*******************************************************************************
adam_z 0:301b2cb34ead 1487 * Register : INT_DUR2
adam_z 0:301b2cb34ead 1488 * Address : 0X5A
adam_z 0:301b2cb34ead 1489 * Bit Group Name: SHOCK
adam_z 0:301b2cb34ead 1490 * Permission : RW
adam_z 0:301b2cb34ead 1491 *******************************************************************************/
adam_z 0:301b2cb34ead 1492 #define LSM6DS3_ACC_GYRO_SHOCK_MASK 0x03
adam_z 0:301b2cb34ead 1493 #define LSM6DS3_ACC_GYRO_SHOCK_POSITION 0
adam_z 0:301b2cb34ead 1494
adam_z 0:301b2cb34ead 1495 /*******************************************************************************
adam_z 0:301b2cb34ead 1496 * Register : INT_DUR2
adam_z 0:301b2cb34ead 1497 * Address : 0X5A
adam_z 0:301b2cb34ead 1498 * Bit Group Name: QUIET
adam_z 0:301b2cb34ead 1499 * Permission : RW
adam_z 0:301b2cb34ead 1500 *******************************************************************************/
adam_z 0:301b2cb34ead 1501 #define LSM6DS3_ACC_GYRO_QUIET_MASK 0x0C
adam_z 0:301b2cb34ead 1502 #define LSM6DS3_ACC_GYRO_QUIET_POSITION 2
adam_z 0:301b2cb34ead 1503
adam_z 0:301b2cb34ead 1504 /*******************************************************************************
adam_z 0:301b2cb34ead 1505 * Register : INT_DUR2
adam_z 0:301b2cb34ead 1506 * Address : 0X5A
adam_z 0:301b2cb34ead 1507 * Bit Group Name: DUR
adam_z 0:301b2cb34ead 1508 * Permission : RW
adam_z 0:301b2cb34ead 1509 *******************************************************************************/
adam_z 0:301b2cb34ead 1510 #define LSM6DS3_ACC_GYRO_DUR_MASK 0xF0
adam_z 0:301b2cb34ead 1511 #define LSM6DS3_ACC_GYRO_DUR_POSITION 4
adam_z 0:301b2cb34ead 1512
adam_z 0:301b2cb34ead 1513 /*******************************************************************************
adam_z 0:301b2cb34ead 1514 * Register : WAKE_UP_THS
adam_z 0:301b2cb34ead 1515 * Address : 0X5B
adam_z 0:301b2cb34ead 1516 * Bit Group Name: WK_THS
adam_z 0:301b2cb34ead 1517 * Permission : RW
adam_z 0:301b2cb34ead 1518 *******************************************************************************/
adam_z 0:301b2cb34ead 1519 #define LSM6DS3_ACC_GYRO_WK_THS_MASK 0x3F
adam_z 0:301b2cb34ead 1520 #define LSM6DS3_ACC_GYRO_WK_THS_POSITION 0
adam_z 0:301b2cb34ead 1521
adam_z 0:301b2cb34ead 1522 /*******************************************************************************
adam_z 0:301b2cb34ead 1523 * Register : WAKE_UP_THS
adam_z 0:301b2cb34ead 1524 * Address : 0X5B
adam_z 0:301b2cb34ead 1525 * Bit Group Name: INACTIVITY_ON
adam_z 0:301b2cb34ead 1526 * Permission : RW
adam_z 0:301b2cb34ead 1527 *******************************************************************************/
adam_z 0:301b2cb34ead 1528 typedef enum {
adam_z 0:301b2cb34ead 1529 LSM6DS3_ACC_GYRO_INACTIVITY_ON_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1530 LSM6DS3_ACC_GYRO_INACTIVITY_ON_ENABLED = 0x40,
adam_z 0:301b2cb34ead 1531 } LSM6DS3_ACC_GYRO_INACTIVITY_ON_t;
adam_z 0:301b2cb34ead 1532
adam_z 0:301b2cb34ead 1533 /*******************************************************************************
adam_z 0:301b2cb34ead 1534 * Register : WAKE_UP_THS
adam_z 0:301b2cb34ead 1535 * Address : 0X5B
adam_z 0:301b2cb34ead 1536 * Bit Group Name: SINGLE_DOUBLE_TAP
adam_z 0:301b2cb34ead 1537 * Permission : RW
adam_z 0:301b2cb34ead 1538 *******************************************************************************/
adam_z 0:301b2cb34ead 1539 typedef enum {
adam_z 0:301b2cb34ead 1540 LSM6DS3_ACC_GYRO_SINGLE_DOUBLE_TAP_DOUBLE_TAP = 0x00,
adam_z 0:301b2cb34ead 1541 LSM6DS3_ACC_GYRO_SINGLE_DOUBLE_TAP_SINGLE_TAP = 0x80,
adam_z 0:301b2cb34ead 1542 } LSM6DS3_ACC_GYRO_SINGLE_DOUBLE_TAP_t;
adam_z 0:301b2cb34ead 1543
adam_z 0:301b2cb34ead 1544 /*******************************************************************************
adam_z 0:301b2cb34ead 1545 * Register : WAKE_UP_DUR
adam_z 0:301b2cb34ead 1546 * Address : 0X5C
adam_z 0:301b2cb34ead 1547 * Bit Group Name: SLEEP_DUR
adam_z 0:301b2cb34ead 1548 * Permission : RW
adam_z 0:301b2cb34ead 1549 *******************************************************************************/
adam_z 0:301b2cb34ead 1550 #define LSM6DS3_ACC_GYRO_SLEEP_DUR_MASK 0x0F
adam_z 0:301b2cb34ead 1551 #define LSM6DS3_ACC_GYRO_SLEEP_DUR_POSITION 0
adam_z 0:301b2cb34ead 1552
adam_z 0:301b2cb34ead 1553 /*******************************************************************************
adam_z 0:301b2cb34ead 1554 * Register : WAKE_UP_DUR
adam_z 0:301b2cb34ead 1555 * Address : 0X5C
adam_z 0:301b2cb34ead 1556 * Bit Group Name: TIMER_HR
adam_z 0:301b2cb34ead 1557 * Permission : RW
adam_z 0:301b2cb34ead 1558 *******************************************************************************/
adam_z 0:301b2cb34ead 1559 typedef enum {
adam_z 0:301b2cb34ead 1560 LSM6DS3_ACC_GYRO_TIMER_HR_6_4ms = 0x00,
adam_z 0:301b2cb34ead 1561 LSM6DS3_ACC_GYRO_TIMER_HR_25us = 0x10,
adam_z 0:301b2cb34ead 1562 } LSM6DS3_ACC_GYRO_TIMER_HR_t;
adam_z 0:301b2cb34ead 1563
adam_z 0:301b2cb34ead 1564 /*******************************************************************************
adam_z 0:301b2cb34ead 1565 * Register : WAKE_UP_DUR
adam_z 0:301b2cb34ead 1566 * Address : 0X5C
adam_z 0:301b2cb34ead 1567 * Bit Group Name: WAKE_DUR
adam_z 0:301b2cb34ead 1568 * Permission : RW
adam_z 0:301b2cb34ead 1569 *******************************************************************************/
adam_z 0:301b2cb34ead 1570 #define LSM6DS3_ACC_GYRO_WAKE_DUR_MASK 0x60
adam_z 0:301b2cb34ead 1571 #define LSM6DS3_ACC_GYRO_WAKE_DUR_POSITION 5
adam_z 0:301b2cb34ead 1572
adam_z 0:301b2cb34ead 1573 /*******************************************************************************
adam_z 0:301b2cb34ead 1574 * Register : FREE_FALL
adam_z 0:301b2cb34ead 1575 * Address : 0X5D
adam_z 0:301b2cb34ead 1576 * Bit Group Name: FF_DUR
adam_z 0:301b2cb34ead 1577 * Permission : RW
adam_z 0:301b2cb34ead 1578 *******************************************************************************/
adam_z 0:301b2cb34ead 1579 #define LSM6DS3_ACC_GYRO_FF_FREE_FALL_DUR_MASK 0xF8
adam_z 0:301b2cb34ead 1580 #define LSM6DS3_ACC_GYRO_FF_FREE_FALL_DUR_POSITION 3
adam_z 0:301b2cb34ead 1581 #define LSM6DS3_ACC_GYRO_FF_WAKE_UP_DUR_MASK 0x80
adam_z 0:301b2cb34ead 1582 #define LSM6DS3_ACC_GYRO_FF_WAKE_UP_DUR_POSITION 7
adam_z 0:301b2cb34ead 1583
adam_z 0:301b2cb34ead 1584
adam_z 0:301b2cb34ead 1585 /*******************************************************************************
adam_z 0:301b2cb34ead 1586 * Register : FREE_FALL
adam_z 0:301b2cb34ead 1587 * Address : 0X5D
adam_z 0:301b2cb34ead 1588 * Bit Group Name: FF_THS
adam_z 0:301b2cb34ead 1589 * Permission : RW
adam_z 0:301b2cb34ead 1590 *******************************************************************************/
adam_z 0:301b2cb34ead 1591 typedef enum {
adam_z 0:301b2cb34ead 1592 LSM6DS3_ACC_GYRO_FF_THS_5 = 0x00,
adam_z 0:301b2cb34ead 1593 LSM6DS3_ACC_GYRO_FF_THS_7 = 0x01,
adam_z 0:301b2cb34ead 1594 LSM6DS3_ACC_GYRO_FF_THS_8 = 0x02,
adam_z 0:301b2cb34ead 1595 LSM6DS3_ACC_GYRO_FF_THS_10 = 0x03,
adam_z 0:301b2cb34ead 1596 LSM6DS3_ACC_GYRO_FF_THS_11 = 0x04,
adam_z 0:301b2cb34ead 1597 LSM6DS3_ACC_GYRO_FF_THS_13 = 0x05,
adam_z 0:301b2cb34ead 1598 LSM6DS3_ACC_GYRO_FF_THS_15 = 0x06,
adam_z 0:301b2cb34ead 1599 LSM6DS3_ACC_GYRO_FF_THS_16 = 0x07,
adam_z 0:301b2cb34ead 1600 } LSM6DS3_ACC_GYRO_FF_THS_t;
adam_z 0:301b2cb34ead 1601
adam_z 0:301b2cb34ead 1602 /*******************************************************************************
adam_z 0:301b2cb34ead 1603 * Register : MD1_CFG
adam_z 0:301b2cb34ead 1604 * Address : 0X5E
adam_z 0:301b2cb34ead 1605 * Bit Group Name: INT1_TIMER
adam_z 0:301b2cb34ead 1606 * Permission : RW
adam_z 0:301b2cb34ead 1607 *******************************************************************************/
adam_z 0:301b2cb34ead 1608 typedef enum {
adam_z 0:301b2cb34ead 1609 LSM6DS3_ACC_GYRO_INT1_TIMER_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1610 LSM6DS3_ACC_GYRO_INT1_TIMER_ENABLED = 0x01,
adam_z 0:301b2cb34ead 1611 } LSM6DS3_ACC_GYRO_INT1_TIMER_t;
adam_z 0:301b2cb34ead 1612
adam_z 0:301b2cb34ead 1613 /*******************************************************************************
adam_z 0:301b2cb34ead 1614 * Register : MD1_CFG
adam_z 0:301b2cb34ead 1615 * Address : 0X5E
adam_z 0:301b2cb34ead 1616 * Bit Group Name: INT1_TILT
adam_z 0:301b2cb34ead 1617 * Permission : RW
adam_z 0:301b2cb34ead 1618 *******************************************************************************/
adam_z 0:301b2cb34ead 1619 typedef enum {
adam_z 0:301b2cb34ead 1620 LSM6DS3_ACC_GYRO_INT1_TILT_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1621 LSM6DS3_ACC_GYRO_INT1_TILT_ENABLED = 0x02,
adam_z 0:301b2cb34ead 1622 } LSM6DS3_ACC_GYRO_INT1_TILT_t;
adam_z 0:301b2cb34ead 1623
adam_z 0:301b2cb34ead 1624 /*******************************************************************************
adam_z 0:301b2cb34ead 1625 * Register : MD1_CFG
adam_z 0:301b2cb34ead 1626 * Address : 0X5E
adam_z 0:301b2cb34ead 1627 * Bit Group Name: INT1_6D
adam_z 0:301b2cb34ead 1628 * Permission : RW
adam_z 0:301b2cb34ead 1629 *******************************************************************************/
adam_z 0:301b2cb34ead 1630 typedef enum {
adam_z 0:301b2cb34ead 1631 LSM6DS3_ACC_GYRO_INT1_6D_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1632 LSM6DS3_ACC_GYRO_INT1_6D_ENABLED = 0x04,
adam_z 0:301b2cb34ead 1633 } LSM6DS3_ACC_GYRO_INT1_6D_t;
adam_z 0:301b2cb34ead 1634
adam_z 0:301b2cb34ead 1635 /*******************************************************************************
adam_z 0:301b2cb34ead 1636 * Register : MD1_CFG
adam_z 0:301b2cb34ead 1637 * Address : 0X5E
adam_z 0:301b2cb34ead 1638 * Bit Group Name: INT1_TAP
adam_z 0:301b2cb34ead 1639 * Permission : RW
adam_z 0:301b2cb34ead 1640 *******************************************************************************/
adam_z 0:301b2cb34ead 1641 typedef enum {
adam_z 0:301b2cb34ead 1642 LSM6DS3_ACC_GYRO_INT1_TAP_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1643 LSM6DS3_ACC_GYRO_INT1_TAP_ENABLED = 0x08,
adam_z 0:301b2cb34ead 1644 } LSM6DS3_ACC_GYRO_INT1_TAP_t;
adam_z 0:301b2cb34ead 1645
adam_z 0:301b2cb34ead 1646 /*******************************************************************************
adam_z 0:301b2cb34ead 1647 * Register : MD1_CFG
adam_z 0:301b2cb34ead 1648 * Address : 0X5E
adam_z 0:301b2cb34ead 1649 * Bit Group Name: INT1_FF
adam_z 0:301b2cb34ead 1650 * Permission : RW
adam_z 0:301b2cb34ead 1651 *******************************************************************************/
adam_z 0:301b2cb34ead 1652 typedef enum {
adam_z 0:301b2cb34ead 1653 LSM6DS3_ACC_GYRO_INT1_FF_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1654 LSM6DS3_ACC_GYRO_INT1_FF_ENABLED = 0x10,
adam_z 0:301b2cb34ead 1655 } LSM6DS3_ACC_GYRO_INT1_FF_t;
adam_z 0:301b2cb34ead 1656
adam_z 0:301b2cb34ead 1657 /*******************************************************************************
adam_z 0:301b2cb34ead 1658 * Register : MD1_CFG
adam_z 0:301b2cb34ead 1659 * Address : 0X5E
adam_z 0:301b2cb34ead 1660 * Bit Group Name: INT1_WU
adam_z 0:301b2cb34ead 1661 * Permission : RW
adam_z 0:301b2cb34ead 1662 *******************************************************************************/
adam_z 0:301b2cb34ead 1663 typedef enum {
adam_z 0:301b2cb34ead 1664 LSM6DS3_ACC_GYRO_INT1_WU_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1665 LSM6DS3_ACC_GYRO_INT1_WU_ENABLED = 0x20,
adam_z 0:301b2cb34ead 1666 } LSM6DS3_ACC_GYRO_INT1_WU_t;
adam_z 0:301b2cb34ead 1667
adam_z 0:301b2cb34ead 1668 /*******************************************************************************
adam_z 0:301b2cb34ead 1669 * Register : MD1_CFG
adam_z 0:301b2cb34ead 1670 * Address : 0X5E
adam_z 0:301b2cb34ead 1671 * Bit Group Name: INT1_SINGLE_TAP
adam_z 0:301b2cb34ead 1672 * Permission : RW
adam_z 0:301b2cb34ead 1673 *******************************************************************************/
adam_z 0:301b2cb34ead 1674 typedef enum {
adam_z 0:301b2cb34ead 1675 LSM6DS3_ACC_GYRO_INT1_SINGLE_TAP_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1676 LSM6DS3_ACC_GYRO_INT1_SINGLE_TAP_ENABLED = 0x40,
adam_z 0:301b2cb34ead 1677 } LSM6DS3_ACC_GYRO_INT1_SINGLE_TAP_t;
adam_z 0:301b2cb34ead 1678
adam_z 0:301b2cb34ead 1679 /*******************************************************************************
adam_z 0:301b2cb34ead 1680 * Register : MD1_CFG
adam_z 0:301b2cb34ead 1681 * Address : 0X5E
adam_z 0:301b2cb34ead 1682 * Bit Group Name: INT1_SLEEP
adam_z 0:301b2cb34ead 1683 * Permission : RW
adam_z 0:301b2cb34ead 1684 *******************************************************************************/
adam_z 0:301b2cb34ead 1685 typedef enum {
adam_z 0:301b2cb34ead 1686 LSM6DS3_ACC_GYRO_INT1_SLEEP_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1687 LSM6DS3_ACC_GYRO_INT1_SLEEP_ENABLED = 0x80,
adam_z 0:301b2cb34ead 1688 } LSM6DS3_ACC_GYRO_INT1_SLEEP_t;
adam_z 0:301b2cb34ead 1689
adam_z 0:301b2cb34ead 1690 /*******************************************************************************
adam_z 0:301b2cb34ead 1691 * Register : MD2_CFG
adam_z 0:301b2cb34ead 1692 * Address : 0X5F
adam_z 0:301b2cb34ead 1693 * Bit Group Name: INT2_TIMER
adam_z 0:301b2cb34ead 1694 * Permission : RW
adam_z 0:301b2cb34ead 1695 *******************************************************************************/
adam_z 0:301b2cb34ead 1696 typedef enum {
adam_z 0:301b2cb34ead 1697 LSM6DS3_ACC_GYRO_INT2_TIMER_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1698 LSM6DS3_ACC_GYRO_INT2_TIMER_ENABLED = 0x01,
adam_z 0:301b2cb34ead 1699 } LSM6DS3_ACC_GYRO_INT2_TIMER_t;
adam_z 0:301b2cb34ead 1700
adam_z 0:301b2cb34ead 1701 /*******************************************************************************
adam_z 0:301b2cb34ead 1702 * Register : MD2_CFG
adam_z 0:301b2cb34ead 1703 * Address : 0X5F
adam_z 0:301b2cb34ead 1704 * Bit Group Name: INT2_TILT
adam_z 0:301b2cb34ead 1705 * Permission : RW
adam_z 0:301b2cb34ead 1706 *******************************************************************************/
adam_z 0:301b2cb34ead 1707 typedef enum {
adam_z 0:301b2cb34ead 1708 LSM6DS3_ACC_GYRO_INT2_TILT_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1709 LSM6DS3_ACC_GYRO_INT2_TILT_ENABLED = 0x02,
adam_z 0:301b2cb34ead 1710 } LSM6DS3_ACC_GYRO_INT2_TILT_t;
adam_z 0:301b2cb34ead 1711
adam_z 0:301b2cb34ead 1712 /*******************************************************************************
adam_z 0:301b2cb34ead 1713 * Register : MD2_CFG
adam_z 0:301b2cb34ead 1714 * Address : 0X5F
adam_z 0:301b2cb34ead 1715 * Bit Group Name: INT2_6D
adam_z 0:301b2cb34ead 1716 * Permission : RW
adam_z 0:301b2cb34ead 1717 *******************************************************************************/
adam_z 0:301b2cb34ead 1718 typedef enum {
adam_z 0:301b2cb34ead 1719 LSM6DS3_ACC_GYRO_INT2_6D_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1720 LSM6DS3_ACC_GYRO_INT2_6D_ENABLED = 0x04,
adam_z 0:301b2cb34ead 1721 } LSM6DS3_ACC_GYRO_INT2_6D_t;
adam_z 0:301b2cb34ead 1722
adam_z 0:301b2cb34ead 1723 /*******************************************************************************
adam_z 0:301b2cb34ead 1724 * Register : MD2_CFG
adam_z 0:301b2cb34ead 1725 * Address : 0X5F
adam_z 0:301b2cb34ead 1726 * Bit Group Name: INT2_TAP
adam_z 0:301b2cb34ead 1727 * Permission : RW
adam_z 0:301b2cb34ead 1728 *******************************************************************************/
adam_z 0:301b2cb34ead 1729 typedef enum {
adam_z 0:301b2cb34ead 1730 LSM6DS3_ACC_GYRO_INT2_TAP_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1731 LSM6DS3_ACC_GYRO_INT2_TAP_ENABLED = 0x08,
adam_z 0:301b2cb34ead 1732 } LSM6DS3_ACC_GYRO_INT2_TAP_t;
adam_z 0:301b2cb34ead 1733
adam_z 0:301b2cb34ead 1734 /*******************************************************************************
adam_z 0:301b2cb34ead 1735 * Register : MD2_CFG
adam_z 0:301b2cb34ead 1736 * Address : 0X5F
adam_z 0:301b2cb34ead 1737 * Bit Group Name: INT2_FF
adam_z 0:301b2cb34ead 1738 * Permission : RW
adam_z 0:301b2cb34ead 1739 *******************************************************************************/
adam_z 0:301b2cb34ead 1740 typedef enum {
adam_z 0:301b2cb34ead 1741 LSM6DS3_ACC_GYRO_INT2_FF_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1742 LSM6DS3_ACC_GYRO_INT2_FF_ENABLED = 0x10,
adam_z 0:301b2cb34ead 1743 } LSM6DS3_ACC_GYRO_INT2_FF_t;
adam_z 0:301b2cb34ead 1744
adam_z 0:301b2cb34ead 1745 /*******************************************************************************
adam_z 0:301b2cb34ead 1746 * Register : MD2_CFG
adam_z 0:301b2cb34ead 1747 * Address : 0X5F
adam_z 0:301b2cb34ead 1748 * Bit Group Name: INT2_WU
adam_z 0:301b2cb34ead 1749 * Permission : RW
adam_z 0:301b2cb34ead 1750 *******************************************************************************/
adam_z 0:301b2cb34ead 1751 typedef enum {
adam_z 0:301b2cb34ead 1752 LSM6DS3_ACC_GYRO_INT2_WU_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1753 LSM6DS3_ACC_GYRO_INT2_WU_ENABLED = 0x20,
adam_z 0:301b2cb34ead 1754 } LSM6DS3_ACC_GYRO_INT2_WU_t;
adam_z 0:301b2cb34ead 1755
adam_z 0:301b2cb34ead 1756 /*******************************************************************************
adam_z 0:301b2cb34ead 1757 * Register : MD2_CFG
adam_z 0:301b2cb34ead 1758 * Address : 0X5F
adam_z 0:301b2cb34ead 1759 * Bit Group Name: INT2_SINGLE_TAP
adam_z 0:301b2cb34ead 1760 * Permission : RW
adam_z 0:301b2cb34ead 1761 *******************************************************************************/
adam_z 0:301b2cb34ead 1762 typedef enum {
adam_z 0:301b2cb34ead 1763 LSM6DS3_ACC_GYRO_INT2_SINGLE_TAP_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1764 LSM6DS3_ACC_GYRO_INT2_SINGLE_TAP_ENABLED = 0x40,
adam_z 0:301b2cb34ead 1765 } LSM6DS3_ACC_GYRO_INT2_SINGLE_TAP_t;
adam_z 0:301b2cb34ead 1766
adam_z 0:301b2cb34ead 1767 /*******************************************************************************
adam_z 0:301b2cb34ead 1768 * Register : MD2_CFG
adam_z 0:301b2cb34ead 1769 * Address : 0X5F
adam_z 0:301b2cb34ead 1770 * Bit Group Name: INT2_SLEEP
adam_z 0:301b2cb34ead 1771 * Permission : RW
adam_z 0:301b2cb34ead 1772 *******************************************************************************/
adam_z 0:301b2cb34ead 1773 typedef enum {
adam_z 0:301b2cb34ead 1774 LSM6DS3_ACC_GYRO_INT2_SLEEP_DISABLED = 0x00,
adam_z 0:301b2cb34ead 1775 LSM6DS3_ACC_GYRO_INT2_SLEEP_ENABLED = 0x80,
adam_z 0:301b2cb34ead 1776 } LSM6DS3_ACC_GYRO_INT2_SLEEP_t;
adam_z 0:301b2cb34ead 1777
adam_z 0:301b2cb34ead 1778 #endif