fxos8700_regs.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2018 UC Berkeley
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
20 #ifndef FXOS8700_REGS_H
21 #define FXOS8700_REGS_H
22 
23 #ifdef __cplusplus
24 extern "C"
25 {
26 #endif
27 
32 #define FXOS8700_REG_STATUS (0x00)
33 #define FXOS8700_REG_OUT_X_MSB (0x01)
34 #define FXOS8700_REG_OUT_X_LSB (0x02)
35 #define FXOS8700_REG_OUT_Y_MSB (0x03)
36 #define FXOS8700_REG_OUT_Y_LSB (0x04)
37 #define FXOS8700_REG_OUT_Z_MSB (0x05)
38 #define FXOS8700_REG_OUT_Z_LSB (0x06)
39 #define FXOS8700_REG_F_SETUP (0x09)
40 #define FXOS8700_REG_TRIG_CFG (0x0A)
41 #define FXOS8700_REG_SYSMOD (0x0B)
42 #define FXOS8700_REG_INT_SOURCE (0x0C)
43 #define FXOS8700_REG_WHO_AM_I (0x0D)
44 #define FXOS8700_REG_XYZ_DATA_CFG (0x0E)
45 #define FXOS8700_REG_HP_FILTER_CUTOFF (0x0F)
46 #define FXOS8700_REG_PL_STATUS (0x10)
47 #define FXOS8700_REG_PL_CFG (0x11)
48 #define FXOS8700_REG_PL_COUNT (0x12)
49 #define FXOS8700_REG_PL_BF_ZCOMP (0x13)
50 #define FXOS8700_REG_PL_THS_REG (0x14)
51 #define FXOS8700_REG_A_FFMT_CFG (0x15)
52 #define FXOS8700_REG_A_FFMT_SRC (0x16)
53 #define FXOS8700_REG_A_FFMT_THS (0x17)
54 #define FXOS8700_REG_A_FFMT_COUNT (0x18)
55 #define FXOS8700_REG_TRANSIENT_CFG (0x1D)
56 #define FXOS8700_REG_TRANSIENT_SRC (0x1E)
57 #define FXOS8700_REG_TRANSIENT_THS (0x1F)
58 #define FXOS8700_REG_TRANSIENT_COUNT (0x20)
59 #define FXOS8700_REG_PULSE_CFG (0x21)
60 #define FXOS8700_REG_PULSE_SRC (0x22)
61 #define FXOS8700_REG_PULSE_THSX (0x23)
62 #define FXOS8700_REG_PULSE_THSY (0x24)
63 #define FXOS8700_REG_PULSE_THSZ (0x25)
64 #define FXOS8700_REG_PULSE_TMLT (0x26)
65 #define FXOS8700_REG_PULSE_LTCY (0x27)
66 #define FXOS8700_REG_PULSE_WIND (0x28)
67 #define FXOS8700_REG_ASLP_COUNT (0x29)
68 #define FXOS8700_REG_CTRL_REG1 (0x2A)
69 #define FXOS8700_REG_CTRL_REG2 (0x2B)
70 #define FXOS8700_REG_CTRL_REG3 (0x2C)
71 #define FXOS8700_REG_CTRL_REG4 (0x2D)
72 #define FXOS8700_REG_CTRL_REG5 (0x2E)
73 #define FXOS8700_REG_OFF_X (0x2F)
74 #define FXOS8700_REG_OFF_Y (0x30)
75 #define FXOS8700_REG_OFF_Z (0x31)
76 #define FXOS8700_REG_M_DR_STATUS (0x32)
77 #define FXOS8700_REG_M_OUT_X_MSB (0x33)
78 #define FXOS8700_REG_M_OUT_X_LSB (0x34)
79 #define FXOS8700_REG_M_OUT_Y_MSB (0x35)
80 #define FXOS8700_REG_M_OUT_Y_LSB (0x36)
81 #define FXOS8700_REG_M_OUT_Z_MSB (0x37)
82 #define FXOS8700_REG_M_OUT_Z_LSB (0x38)
83 #define FXOS8700_REG_CMP_X_MSB (0x39)
84 #define FXOS8700_REG_CMP_X_LSB (0x3A)
85 #define FXOS8700_REG_CMP_Y_MSB (0x3B)
86 #define FXOS8700_REG_CMP_Y_LSB (0x3C)
87 #define FXOS8700_REG_CMP_Z_MSB (0x3D)
88 #define FXOS8700_REG_CMP_Z_LSB (0x3E)
89 #define FXOS8700_REG_M_OFF_X_MSB (0x3F)
90 #define FXOS8700_REG_M_OFF_X_LSB (0x40)
91 #define FXOS8700_REG_M_OFF_Y_MSB (0x41)
92 #define FXOS8700_REG_M_OFF_Y_LSB (0x42)
93 #define FXOS8700_REG_M_OFF_Z_MSB (0x43)
94 #define FXOS8700_REG_M_OFF_Z_LSB (0x44)
95 #define FXOS8700_REG_MAX_X_MSB (0x45)
96 #define FXOS8700_REG_MAX_X_LSB (0x46)
97 #define FXOS8700_REG_MAX_Y_MSB (0x47)
98 #define FXOS8700_REG_MAX_Y_LSB (0x48)
99 #define FXOS8700_REG_MAX_Z_MSB (0x49)
100 #define FXOS8700_REG_MAX_Z_LSB (0x4A)
101 #define FXOS8700_REG_MIN_X_MSB (0x4B)
102 #define FXOS8700_REG_MIN_X_LSB (0x4C)
103 #define FXOS8700_REG_MIN_Y_MSB (0x4D)
104 #define FXOS8700_REG_MIN_Y_LSB (0x4E)
105 #define FXOS8700_REG_MIN_Z_MSB (0x4F)
106 #define FXOS8700_REG_MIN_Z_LSB (0x50)
107 #define FXOS8700_REG_TEMP (0x51)
108 #define FXOS8700_REG_M_THS_CFG (0x52)
109 #define FXOS8700_REG_M_THS_SRC (0x53)
110 #define FXOS8700_REG_M_THS_X_MSB (0x54)
111 #define FXOS8700_REG_M_THS_X_LSB (0x55)
112 #define FXOS8700_REG_M_THS_Y_MSB (0x56)
113 #define FXOS8700_REG_M_THS_Y_LSB (0x57)
114 #define FXOS8700_REG_M_THS_Z_MSB (0x58)
115 #define FXOS8700_REG_M_THS_Z_LSB (0x59)
116 #define FXOS8700_REG_M_THS_COUNT (0x5A)
117 #define FXOS8700_REG_M_CTRL_REG1 (0x5B)
118 #define FXOS8700_REG_M_CTRL_REG2 (0x5C)
119 #define FXOS8700_REG_M_CTRL_REG3 (0x5D)
120 #define FXOS8700_REG_M_INT_SRC (0x5E)
121 #define FXOS8700_REG_A_VECM_CFG (0x5F)
122 #define FXOS8700_REG_A_VECM_THS_MSB (0x60)
123 #define FXOS8700_REG_A_VECM_THS_LSB (0x61)
124 #define FXOS8700_REG_A_VECM_CNT (0x62)
125 #define FXOS8700_REG_A_VECM_INITX_MSB (0x63)
126 #define FXOS8700_REG_A_VECM_INITX_LSB (0x64)
127 #define FXOS8700_REG_A_VECM_INITY_MSB (0x65)
128 #define FXOS8700_REG_A_VECM_INITY_LSB (0x66)
129 #define FXOS8700_REG_A_VECM_INITZ_MSB (0x67)
130 #define FXOS8700_REG_A_VECM_INITZ_LSB (0x68)
131 #define FXOS8700_REG_M_VECM_CFG (0x69)
132 #define FXOS8700_REG_M_VECM_THS_MSB (0x6A)
133 #define FXOS8700_REG_M_VECM_THS_LSB (0x6B)
134 #define FXOS8700_REG_M_VECM_CNT (0x6C)
135 #define FXOS8700_REG_M_VECM_INITX_MSB (0x6D)
136 #define FXOS8700_REG_M_VECM_INITX_LSB (0x6E)
137 #define FXOS8700_REG_M_VECM_INITY_MSB (0x6F)
138 #define FXOS8700_REG_M_VECM_INITY_LSB (0x70)
139 #define FXOS8700_REG_M_VECM_INITZ_MSB (0x71)
140 #define FXOS8700_REG_M_VECM_INITZ_LSB (0x72)
141 #define FXOS8700_REG_A_FFMT_THS_X_MSB (0x73)
142 #define FXOS8700_REG_A_FFMT_THS_X_LSB (0x74)
143 #define FXOS8700_REG_A_FFMT_THS_Y_MSB (0x75)
144 #define FXOS8700_REG_A_FFMT_THS_Y_LSB (0x76)
145 #define FXOS8700_REG_A_FFMT_THS_Z_MSB (0x77)
146 #define FXOS8700_REG_A_FFMT_THS_Z_LSB (0x78)
147 
153 #define FXOS8700_WHO_AM_I_VAL (0xC7)
154 
160 #define FXOS8700_REG_STATUS_MASK__XYZ_READY (0x08)
161 #define FXOS8700_REG_M_DR_STATUS_MASK__XYZ_READY (0x08)
162 
168 #define FXOS8700_REG_CTRL_REG1_MASK__ODR (0x38)
169 #define FXOS8700_REG_CTRL_REG1_ODR__400HZ (0x00)
170 #define FXOS8700_REG_CTRL_REG1_ODR__200HZ (0x08)
171 #define FXOS8700_REG_CTRL_REG1_ODR__100HZ (0x10)
172 #define FXOS8700_REG_CTRL_REG1_ODR__50HZ (0x18)
173 #define FXOS8700_REG_CTRL_REG1_ODR__25HZ (0x20)
174 
175 #define FXOS8700_REG_CTRL_REG1_MASK__ACTIVE (0x01)
176 
182 #define FXOS8700_REG_M_CTRL_REG1_MASK__HMS (0x03)
183 #define FXOS8700_REG_M_CTRL_REG1_HMS__ACC_ONLY (0x00)
184 #define FXOS8700_REG_M_CTRL_REG1_HMS__MAG_ONLY (0x01)
185 #define FXOS8700_REG_M_CTRL_REG1_HMS__HYBRID (0x03)
186 
192 #define FXOS8700_REG_M_CTRL_REG2_MASK__HYB_AUTOINC_MODE (0x20)
193 
199 #define FXOS8700_REG_XYZ_DATA_CFG_MASK__FS (0x03)
200 #define FXOS8700_REG_XYZ_DATA_CFG_FS__2G (0x00)
201 #define FXOS8700_REG_XYZ_DATA_CFG_FS__4G (0x01)
202 #define FXOS8700_REG_XYZ_DATA_CFG_FS__8G (0x02)
203 
205 #ifdef __cplusplus
206 }
207 #endif
208 
209 #endif /* FXOS8700_REGS_H */
210