The friendly Operating System for the Internet of Things
lis3mdl-internal.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015 HAW Hamburg
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 LIS3MDL_INTERNAL_H
21 #define LIS3MDL_INTERNAL_H
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
31 #define LIS3MDL_CHIP_ID (0x3D)
32 #define LIS3MDL_CHIP_ADDR (0x1C)
33 
39 #define LIS3DML_WHO_AM_I_REG (0x0F)
40 
46 #define LIS3MDL_CTRL_REG1 (0x20)
47 #define LIS3MDL_CTRL_REG2 (0x21)
48 #define LIS3MDL_CTRL_REG3 (0x22)
49 #define LIS3MDL_CTRL_REG4 (0x23)
50 #define LIS3MDL_CTRL_REG5 (0x24)
51 
57 #define LIS3MDL_MASK_REG1_TEMP_EN (0x80)
58 
64 #define LIS3MDL_MASK_REG2_REBOOT (0x06)
65 #define LIS3MDL_MASK_REG2_SOFT_RST (0x04)
66 
72 #define LIS3MDL_MASK_REG3_LOW_POWER_EN (0x02)
73 #define LIS3MDL_MASK_REG3_CONT_CONV_MODE (0x00)
74 #define LIS3MDL_MASK_REG3_Z_LOW_POWER (0x00)
75 #define LIS3MDL_MASK_REG3_Z_MEDIUM_POWER (0x04)
76 
82 #define LIS3MDL_MASK_REG5_BDU (0x40)
83 #define LIS3MDL_MASK_REG5_BDU_OFF (0x00)
84 
90 #define LIS3MDL_STATUS_REG (0x27)
91 
97 #define LIS3MDL_OUT_X_L_REG (0x28)
98 #define LIS3MDL_OUT_X_H_REG (0x29)
99 #define LIS3MDL_OUT_Y_L_REG (0x2A)
100 #define LIS3MDL_OUT_Y_H_REG (0x2B)
101 #define LIS3MDL_OUT_Z_L_REG (0x2C)
102 #define LIS3MDL_OUT_Z_H_REG (0x2D)
103 
109 #define LIS3MDL_TEMP_OUT_L_REG (0x2E)
110 #define LIS3MDL_TEMP_OUT_H_REG (0x2F)
111 
117 #define LIS3MDL_INT_CFG_REG (0x30)
118 #define LIS3MDL_INT_SRC_REG (0x31)
119 #define LIS3MDL_INT_THS_L_REG (0x32)
120 #define LIS3MDL_INT_THS_H_REG (0x33)
121 
127 #define LIS3MDL_MASK_INT_CFG_XIEN (0x80)
128 #define LIS3MDL_MASK_INT_CFG_YIEN (0x40)
129 #define LIS3MDL_MASK_INT_CFG_ZIEN (0x20)
130 #define LIS3MDL_MASK_INT_CFG_IEA (0x04)
131 #define LIS3MDL_MASK_INT_CFG_LIR (0x02)
132 #define LIS3MDL_MASK_INT_CFG_IEN (0x01)
133 
139 #define LIS3MDL_MASK_INT_SRC_PTH_X (0x80)
140 #define LIS3MDL_MASK_INT_SRC_PTH_Y (0x40)
141 #define LIS3MDL_MASK_INT_SRC_PTH_Z (0x20)
142 #define LIS3MDL_MASK_INT_SRC_NTH_X (0x10)
143 #define LIS3MDL_MASK_INT_SRC_NTH_Y (0x08)
144 #define LIS3MDL_MASK_INT_SRC_NTH_Z (0x04)
145 #define LIS3MDL_MASK_INT_SRC_MROI (0x02)
146 #define LIS3MDL_MASK_INT_SRC_INT (0x01)
147 
148 #ifdef __cplusplus
149 }
150 #endif
151 
152 #endif /* LIS3MDL_INTERNAL_H */
153