summaryrefslogtreecommitdiff
path: root/src/sensor/registers.hpp
blob: fadb62b2c5d488e7dfd270af9549fc0323cd2c98 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
#pragma once

#include <stdint.h>

namespace SensorRegisters
{
	const uint8_t XG_OFFS_TC = 0x00U;
	const uint8_t YG_OFFS_TC = 0x01U;
	const uint8_t ZG_OFFS_TC = 0x02U;

	const uint8_t X_FINE_GAIN = 0x03U;
	const uint8_t Y_FINE_GAIN = 0x04U;
	const uint8_t Z_FINE_GAIN = 0x05U;

	const uint8_t XA_OFFS_H = 0x06U;
	const uint8_t XA_OFFS_L_TC = 0x07U;
	const uint8_t YA_OFFS_H = 0x08U;
	const uint8_t YA_OFFS_L_TC = 0x09U;
	const uint8_t ZA_OFFS_H = 0x0AU;
	const uint8_t ZA_OFFS_L_TC = 0x0BU;

	const uint8_t SELF_TEST_X = 0x0DU;
	const uint8_t SELF_TEST_Y = 0x0EU;
	const uint8_t SELF_TEST_Z = 0x0FU;
	const uint8_t SELF_TEST_A = 0x10U;

	const uint8_t XG_OFFS_USRH = 0x13U;
	const uint8_t XG_OFFS_USRL = 0x14U;
	const uint8_t YG_OFFS_USRH = 0x15U;
	const uint8_t YG_OFFS_USRL = 0x16U;
	const uint8_t ZG_OFFS_USRH = 0x17U;
	const uint8_t ZG_OFFS_USRL = 0x18U;

	const uint8_t SMPLRT_DIV = 0x19U;
	const uint8_t CONFIG = 0x1AU;
	const uint8_t GYRO_CONFIG = 0x1BU;
	const uint8_t ACCEL_CONFIG = 0x1CU;

	const uint8_t FF_THR = 0x1DU;
	const uint8_t FF_DUR = 0x1EU;
	const uint8_t MOT_THR = 0x1FU;
	const uint8_t MOT_DUR = 0x20U;
	const uint8_t ZRMOT_THR = 0x21U;
	const uint8_t ZRMOT_DUR = 0x22U;
	const uint8_t FIFO_EN = 0x23U;

	const uint8_t I2C_MST_CTRL = 0x24U;
	const uint8_t I2C_SLV0_ADDR = 0x25U;
	const uint8_t I2C_SLV0_REG = 0x26U;
	const uint8_t I2C_SLV0_CTRL = 0x27U;
	const uint8_t I2C_SLV1_ADDR = 0x28U;
	const uint8_t I2C_SLV1_REG = 0x29U;
	const uint8_t I2C_SLV1_CTRL = 0x2AU;
	const uint8_t I2C_SLV2_ADDR = 0x2BU;
	const uint8_t I2C_SLV2_REG = 0x2CU;
	const uint8_t I2C_SLV2_CTRL = 0x2DU;
	const uint8_t I2C_SLV3_ADDR = 0x2EU;
	const uint8_t I2C_SLV3_REG = 0x2FU;
	const uint8_t I2C_SLV3_CTRL = 0x30U;
	const uint8_t I2C_SLV4_ADDR = 0x31U;
	const uint8_t I2C_SLV4_REG = 0x32U;
	const uint8_t I2C_SLV4_DO = 0x33U;
	const uint8_t I2C_SLV4_CTRL = 0x34U;
	const uint8_t I2C_SLV4_DI = 0x35U;
	const uint8_t I2C_MST_STATUS = 0x36U;

	const uint8_t INT_PIN_CFG = 0x37U;
	const uint8_t INT_ENABLE = 0x38U;
	const uint8_t DMP_INT_STATUS = 0x39U;
	const uint8_t INT_STATUS = 0x3AU;

	const uint8_t ACCEL_XOUT_H = 0x3BU;
	const uint8_t ACCEL_XOUT_L = 0x3CU;
	const uint8_t ACCEL_YOUT_H = 0x3DU;
	const uint8_t ACCEL_YOUT_L = 0x3EU;
	const uint8_t ACCEL_ZOUT_H = 0x3FU;
	const uint8_t ACCEL_ZOUT_L = 0x40U;
	const uint8_t TEMP_OUT_H = 0x41U;
	const uint8_t TEMP_OUT_L = 0x42U;
	const uint8_t GYRO_XOUT_H = 0x43U;
	const uint8_t GYRO_XOUT_L = 0x44U;
	const uint8_t GYRO_YOUT_H = 0x45U;
	const uint8_t GYRO_YOUT_L = 0x46U;
	const uint8_t GYRO_ZOUT_H = 0x47U;
	const uint8_t GYRO_ZOUT_L = 0x48U;

	const uint8_t EXT_SENS_DATA_00 = 0x49U;
	const uint8_t EXT_SENS_DATA_01 = 0x4AU;
	const uint8_t EXT_SENS_DATA_02 = 0x4BU;
	const uint8_t EXT_SENS_DATA_03 = 0x4CU;
	const uint8_t EXT_SENS_DATA_04 = 0x4DU;
	const uint8_t EXT_SENS_DATA_05 = 0x4EU;
	const uint8_t EXT_SENS_DATA_06 = 0x4FU;
	const uint8_t EXT_SENS_DATA_07 = 0x50U;
	const uint8_t EXT_SENS_DATA_08 = 0x51U;
	const uint8_t EXT_SENS_DATA_09 = 0x52U;
	const uint8_t EXT_SENS_DATA_10 = 0x53U;
	const uint8_t EXT_SENS_DATA_11 = 0x54U;
	const uint8_t EXT_SENS_DATA_12 = 0x55U;
	const uint8_t EXT_SENS_DATA_13 = 0x56U;
	const uint8_t EXT_SENS_DATA_14 = 0x57U;
	const uint8_t EXT_SENS_DATA_15 = 0x58U;
	const uint8_t EXT_SENS_DATA_16 = 0x59U;
	const uint8_t EXT_SENS_DATA_17 = 0x5AU;
	const uint8_t EXT_SENS_DATA_18 = 0x5BU;
	const uint8_t EXT_SENS_DATA_19 = 0x5CU;
	const uint8_t EXT_SENS_DATA_20 = 0x5DU;
	const uint8_t EXT_SENS_DATA_21 = 0x5EU;
	const uint8_t EXT_SENS_DATA_22 = 0x5FU;
	const uint8_t EXT_SENS_DATA_23 = 0x60U;

	const uint8_t MOT_DETECT_STATUS = 0x61U;

	const uint8_t I2C_SLV0_DO = 0x63U;
	const uint8_t I2C_SLV1_DO = 0x64U;
	const uint8_t I2C_SLV2_DO = 0x65U;
	const uint8_t I2C_SLV3_DO = 0x66U;
	const uint8_t I2C_MST_DELAY_CTRL = 0x67U;

	const uint8_t SIGNAL_PATH_RESET = 0x68U;
	const uint8_t MOT_DETECT_CTRL = 0x69U;
	const uint8_t USER_CTRL = 0x6AU;

	const uint8_t PWR_MGMT_1 = 0x6BU;
	const uint8_t PWR_MGMT_2 = 0x6CU;
	const uint8_t BANK_SEL = 0x6DU;
	const uint8_t MEM_START_ADDR = 0x6EU;
	const uint8_t MEM_R_W = 0x6FU;

	const uint8_t DMP_CFG_1 = 0x70U;
	const uint8_t DMP_CFG_2 = 0x71U;
	const uint8_t FIFO_COUNTH = 0x72U;
	const uint8_t FIFO_COUNTL = 0x73U;
	const uint8_t FIFO_R_W = 0x74U;
	const uint8_t WHO_AM_I = 0x75U;
} // namespace SensorRegisters