Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
bmi088_regs.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2019 Gautier Hattenberger <gaurier.hattenberger@enac.fr>
3  *
4  * This file is part of paparazzi.
5  *
6  * paparazzi is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2, or (at your option)
9  * any later version.
10  *
11  * paparazzi is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with paparazzi; see the file COPYING. If not, see
18  * <http://www.gnu.org/licenses/>.
19  */
20 
27 #ifndef BMI088_REGS_H
28 #define BMI088_REGS_H
29 
30 /* default I2C address */
31 #define BMI088_ACCEL_ADDR (0x18<<1)
32 #define BMI088_ACCEL_ADDR_ALT (0x19<<1)
33 
34 #define BMI088_ACCEL_CHIP_ID 0x00 // Default value 0x1E
35 #define BMI088_ACCEL_ERR_REG 0x02
36 #define BMI088_ACCEL_STATUS 0x03
37 
38 #define BMI088_ACCEL_X_LSB 0x12
39 #define BMI088_ACCEL_X_MSB 0x13
40 #define BMI088_ACCEL_Y_LSB 0x14
41 #define BMI088_ACCEL_Y_MSB 0x15
42 #define BMI088_ACCEL_Z_LSB 0x16
43 #define BMI088_ACCEL_Z_MSB 0x17
44 
45 #define BMI088_ACCEL_SENSOR_TIME_0 0x18
46 #define BMI088_ACCEL_SENSOR_TIME_1 0x19
47 #define BMI088_ACCEL_SENSOR_TIME_2 0x1A
48 
49 #define BMI088_ACCEL_INT_STAT_1 0x1D
50 
51 #define BMI088_ACCEL_TEMP_MSB 0x22
52 #define BMI088_ACCEL_TEMP_LSB 0x23
53 
54 #define BMI088_ACCEL_CONF 0x40
55 #define BMI088_ACCEL_RANGE 0x41
56 
57 #define BMI088_ACCEL_INT1_IO_CTRL 0x53
58 #define BMI088_ACCEL_INT2_IO_CTRL 0x54
59 #define BMI088_ACCEL_INT_MAP_DATA 0x58
60 
61 #define BMI088_ACCEL_SELF_TEST 0x6D
62 
63 #define BMI088_ACCEL_PWR_CONF 0x7C
64 #define BMI088_ACCEL_PWR_CTRl 0x7D
65 
66 #define BMI088_ACCEL_SOFT_RESET 0x7E
67 
68 #define BMI088_GYRO_ADDR (0x68<<1)
69 #define BMI088_GYRO_ADDR_ALT (0x69<<1)
70 
71 #define BMI088_GYRO_CHIP_ID 0x00 // Default value 0x0F
72 
73 #define BMI088_GYRO_RATE_X_LSB 0x02
74 #define BMI088_GYRO_RATE_X_MSB 0x03
75 #define BMI088_GYRO_RATE_Y_LSB 0x04
76 #define BMI088_GYRO_RATE_Y_MSB 0x05
77 #define BMI088_GYRO_RATE_Z_LSB 0x06
78 #define BMI088_GYRO_RATE_Z_MSB 0x07
79 
80 #define BMI088_GYRO_INT_STAT_1 0x0A
81 
82 #define BMI088_GYRO_RANGE 0x0F
83 #define BMI088_GYRO_BAND_WIDTH 0x10
84 
85 #define BMI088_GYRO_LPM_1 0x11
86 
87 #define BMI088_GYRO_SOFT_RESET 0x14
88 
89 #define BMI088_GYRO_INT_CTRL 0x15
90 #define BMI088_GYRO_INT3_INT4_IO_CONF 0x16
91 #define BMI088_GYRO_INT3_INT4_IO_MAP 0x18
92 
93 #define BMI088_GYRO_SELF_TEST 0x3C
94 
98 {
103 };
104 
108 {
117 };
118 
122 {
126 };
127 
131 {
134 };
135 
139 {
142 };
143 
147 {
153 };
154 
158 {
167 };
168 
172 {
176 };
177 
178 
179 #endif /* BMI088_REGS_H */
180 
Bmi088AccelPowerType
Accel power type.
Definition: bmi088_regs.h:131
@ BMI088_ACCEL_SUSPEND
Definition: bmi088_regs.h:133
@ BMI088_ACCEL_ACTIVE
Definition: bmi088_regs.h:132
Bmi088GyroODR
Gyro output data rate and bandwidth.
Definition: bmi088_regs.h:158
@ BMI088_GYRO_ODR_400_BW_47
Definition: bmi088_regs.h:162
@ BMI088_GYRO_ODR_1000_BW_116
Definition: bmi088_regs.h:161
@ BMI088_GYRO_ODR_100_BW_12
Definition: bmi088_regs.h:164
@ BMI088_GYRO_ODR_2000_BW_532
Definition: bmi088_regs.h:159
@ BMI088_GYRO_ODR_100_BW_32
Definition: bmi088_regs.h:166
@ BMI088_GYRO_ODR_200_BW_23
Definition: bmi088_regs.h:163
@ BMI088_GYRO_ODR_2000_BW_230
Definition: bmi088_regs.h:160
@ BMI088_GYRO_ODR_200_BW_64
Definition: bmi088_regs.h:165
Bmi088GyroRanges
Gyro output range.
Definition: bmi088_regs.h:147
@ BMI088_GYRO_RANGE_500
Definition: bmi088_regs.h:150
@ BMI088_GYRO_RANGE_1000
Definition: bmi088_regs.h:149
@ BMI088_GYRO_RANGE_2000
Definition: bmi088_regs.h:148
@ BMI088_GYRO_RANGE_125
Definition: bmi088_regs.h:152
@ BMI088_GYRO_RANGE_250
Definition: bmi088_regs.h:151
Bmi088AccelODR
Accel outpur data rate.
Definition: bmi088_regs.h:108
@ BMI088_ACCEL_ODR_400
Definition: bmi088_regs.h:114
@ BMI088_ACCEL_ODR_200
Definition: bmi088_regs.h:113
@ BMI088_ACCEL_ODR_12
Definition: bmi088_regs.h:109
@ BMI088_ACCEL_ODR_50
Definition: bmi088_regs.h:111
@ BMI088_ACCEL_ODR_100
Definition: bmi088_regs.h:112
@ BMI088_ACCEL_ODR_25
Definition: bmi088_regs.h:110
@ BMI088_ACCEL_ODR_800
Definition: bmi088_regs.h:115
@ BMI088_ACCEL_ODR_1600
Definition: bmi088_regs.h:116
Bmi088AccelRanges
Accel output range.
Definition: bmi088_regs.h:98
@ BMI088_ACCEL_RANGE_24G
Definition: bmi088_regs.h:102
@ BMI088_ACCEL_RANGE_6G
Definition: bmi088_regs.h:100
@ BMI088_ACCEL_RANGE_3G
Definition: bmi088_regs.h:99
@ BMI088_ACCEL_RANGE_12G
Definition: bmi088_regs.h:101
Bmi088AccelBW
Accel bandwith.
Definition: bmi088_regs.h:122
@ BMI088_ACCEL_BW_OSR2
Definition: bmi088_regs.h:124
@ BMI088_ACCEL_BW_OSR4
Definition: bmi088_regs.h:123
@ BMI088_ACCEL_BW_NORMAL
Definition: bmi088_regs.h:125
Bmi088GyroPowerType
Gyro power type.
Definition: bmi088_regs.h:172
@ BMI088_GYRO_SUSPEND
Definition: bmi088_regs.h:174
@ BMI088_GYRO_NORMAL
Definition: bmi088_regs.h:173
@ BMI088_GYRO_DEEP_SUSPEND
Definition: bmi088_regs.h:175
Bmi088AccelPowerCtrl
Accel power control.
Definition: bmi088_regs.h:139
@ BMI088_ACCEL_POWER_ON
Definition: bmi088_regs.h:141
@ BMI088_ACCEL_POWER_OFF
Definition: bmi088_regs.h:140