Toggle navigation
Documentation
The friendly Operating System for the Internet of Things
Loading...
Searching...
No Matches
mag3110_reg.h
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: 2014 PHYTEC Messtechnik GmbH
3
* SPDX-License-Identifier: LGPL-2.1-only
4
*/
5
6
#pragma once
7
18
19
#ifdef __cplusplus
20
extern
"C"
21
{
22
#endif
23
24
#define MAG3110_DR_STATUS 0x00
25
#define MAG3110_OUT_X_MSB 0x01
26
#define MAG3110_OUT_X_LSB 0x02
27
#define MAG3110_OUT_Y_MSB 0x03
28
#define MAG3110_OUT_Y_LSB 0x04
29
#define MAG3110_OUT_Z_MSB 0x05
30
#define MAG3110_OUT_Z_LSB 0x06
31
#define MAG3110_WHO_AM_I 0x07
32
#define MAG3110_SYSMOD 0x08
33
#define MAG3110_OFF_X_MSB 0x09
34
#define MAG3110_OFF_X_LSB 0x0A
35
#define MAG3110_OFF_Y_MSB 0x0B
36
#define MAG3110_OFF_Y_LSB 0x0C
37
#define MAG3110_OFF_Z_MSB 0x0D
38
#define MAG3110_OFF_Z_LSB 0x0E
39
#define MAG3110_DIE_TEMP 0x0F
40
#define MAG3110_CTRL_REG1 0x10
41
#define MAG3110_CTRL_REG2 0x11
42
43
#define MAG3110_DR_STATUS_ZYXOW (1 << 7)
44
#define MAG3110_DR_STATUS_ZOW (1 << 6)
45
#define MAG3110_DR_STATUS_YOW (1 << 5)
46
#define MAG3110_DR_STATUS_XOW (1 << 4)
47
#define MAG3110_DR_STATUS_ZYXDR (1 << 3)
48
#define MAG3110_DR_STATUS_ZDR (1 << 2)
49
#define MAG3110_DR_STATUS_YDR (1 << 1)
50
#define MAG3110_DR_STATUS_XDR (1 << 0)
51
52
#define MAG3110_ID 0xC4
53
54
#define MAG3110_SYSMOD_STANDBY 0
55
#define MAG3110_SYSMOD_ACTIVE_RAW 1
56
#define MAG3110_SYSMOD_ACTIVE 2
57
58
#define MAG3110_CTRL_REG1_DROS_SHIFT 3
59
#define MAG3110_CTRL_REG1_DROS_MASK 0xF8
60
#define MAG3110_CTRL_REG1_DROS(x) (((uint8_t)(((uint8_t)(x))<<MAG3110_CTRL_REG1_DROS_SHIFT))\
61
&MAG3110_CTRL_REG1_DROS_MASK)
62
#define MAG3110_CTRL_REG1_FR (1 << 2)
63
#define MAG3110_CTRL_REG1_TM (1 << 1)
64
#define MAG3110_CTRL_REG1_AC (1 << 0)
65
66
#define MAG3110_CTRL_REG2_AUTO_MRST_EN (1 << 7)
67
#define MAG3110_CTRL_REG2_RAW (1 << 5)
68
#define MAG3110_CTRL_REG2_MAG_RST (1 << 4)
69
70
#ifdef __cplusplus
71
}
72
#endif
73
Generated on Fri May 1 2026 15:22:59 by
1.13.2