hmc5883l_params.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2018 Gunar Schorcht
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 
9 #pragma once
10 
19 #include "board.h"
20 #include "hmc5883l.h"
21 #include "saul_reg.h"
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
31 #ifndef HMC5883L_PARAM_DEV
32 #define HMC5883L_PARAM_DEV I2C_DEV(0)
33 #endif
34 #ifndef HMC5883L_PARAM_DOR
35 #define HMC5883L_PARAM_DOR (HMC5883L_DOR_15)
36 #endif
37 #ifndef HMC5883L_PARAM_MEAS_MODE
38 #define HMC5883L_PARAM_MEAS_MODE (HMC5883L_MEAS_MODE_NORMAL)
39 #endif
40 #ifndef HMC5883L_PARAM_MEAS_AVG
41 #define HMC5883L_PARAM_MEAS_AVG (HMC5883L_MEAS_AVG_NONE)
42 #endif
43 #ifndef HMC5883L_PARAM_OP_MODE
44 #define HMC5883L_PARAM_OP_MODE (HMC5883L_OP_MODE_CONTINUOUS)
45 #endif
46 #ifndef HMC5883L_PARAM_GAIN
47 #define HMC5883L_PARAM_GAIN (HMC5883L_GAIN_1090)
48 #endif
49 #ifndef HMC5883L_PARAM_INT_PIN
50 #define HMC5883L_PARAM_INT_PIN (GPIO_UNDEF)
51 #endif
52 
53 #ifdef MODULE_HMC5883L_INT
54 #ifndef HMC5883L_PARAMS
55 #define HMC5883L_PARAMS { \
56  .dev = HMC5883L_PARAM_DEV, \
57  .dor = HMC5883L_PARAM_DOR, \
58  .gain = HMC5883L_PARAM_GAIN, \
59  .int_pin = HMC5883L_PARAM_INT_PIN, \
60  .meas_mode = HMC5883L_PARAM_MEAS_MODE, \
61  .meas_avg = HMC5883L_PARAM_MEAS_AVG, \
62  .op_mode = HMC5883L_PARAM_OP_MODE, \
63  }
64 #endif /* HMC5883L_PARAMS */
65 #else /* MODULE_HMC5883L_INT */
66 #define HMC5883L_PARAMS { \
67  .dev = HMC5883L_PARAM_DEV, \
68  .dor = HMC5883L_PARAM_DOR, \
69  .gain = HMC5883L_PARAM_GAIN, \
70  .meas_mode = HMC5883L_PARAM_MEAS_MODE, \
71  .meas_avg = HMC5883L_PARAM_MEAS_AVG, \
72  .op_mode = HMC5883L_PARAM_OP_MODE, \
73  }
74 #endif /* MODULE_HMC5883L_INT */
75 
76 #ifndef HMC5883L_SAUL_INFO
77 #define HMC5883L_SAUL_INFO { .name = "hmc5883l" }
78 #endif
85 {
86  HMC5883L_PARAMS
87 };
88 
93 {
94  HMC5883L_SAUL_INFO
95 };
96 
97 #ifdef __cplusplus
98 }
99 #endif
100 
static const hmc5883l_params_t hmc5883l_params[]
Allocate some memory to store the actual configuration.
static const saul_reg_info_t hmc5883l_saul_info[]
Additional meta information to keep in the SAUL registry.
SAUL registry interface definition.
HMC5883L device initialization parameters.
Definition: hmc5883l.h:157
Additional data to collect for each entry.
Definition: saul_reg.h:48