@@ -26,165 +26,135 @@ extern "C" {
26
26
* @name ADS101x/111x register addresses
27
27
* @{
28
28
*/
29
- #define ADS1X1X_CONV_RES_ADDR (0) /**< Conversion register */
30
- #define ADS1X1X_CONF_ADDR (1) /**< Configuration register */
31
- #define ADS1X1X_LOW_LIMIT_ADDR (2) /**< Low limit register */
32
- #define ADS1X1X_HIGH_LIMIT_ADDR (3) /**< High limit register */
29
+ #define ADS1X1X_CONV_RES_ADDR (0) /**< Conversion register */
30
+ #define ADS1X1X_CONF_ADDR (1) /**< Configuration register */
31
+ #define ADS1X1X_LOW_LIMIT_ADDR (2) /**< Low limit register */
32
+ #define ADS1X1X_HIGH_LIMIT_ADDR (3) /**< High limit register */
33
33
/** @} */
34
34
35
35
/**
36
- * @name ADS101x/111x Operational Status
37
- *
38
- * This bit indicates the status of the conversion.
39
- *
40
- * @{
36
+ * @brief ADS101x/111x Operational Status
41
37
*/
42
- #define ADS1X1X_CONF_OS_CONV_MASK (1 << 7)
43
-
44
- /** @} */
38
+ #define ADS1X1X_CONF_OS_CONV_MASK (1 << 7) /**< Operational status bit */
45
39
46
40
/**
47
41
* @name ADS101x/111x mux settings
48
- *
49
42
* Supports both single mode and differential.
50
43
* This has no effect on ADS1013-4 and ADS1113-4.
51
- *
52
44
* @{
53
45
*/
54
- #define ADS1X1X_MUX_MASK ((1 << 6) | (1 << 5) | (1 << 4))
55
- #define ADS1X1X_AIN0_DIFFM_AIN1 ((0 << 6) | (0 << 5) | (0 << 4))
56
- #define ADS1X1X_AIN0_DIFFM_AIN3 ((0 << 6) | (0 << 5) | (1 << 4))
57
- #define ADS1X1X_AIN1_DIFFM_AIN3 ((0 << 6) | (1 << 5) | (0 << 4))
58
- #define ADS1X1X_AIN2_DIFFM_AIN3 ((0 << 6) | (1 << 5) | (1 << 4))
59
- #define ADS1X1X_AIN0_SINGM ((1 << 6) | (0 << 5) | (0 << 4))
60
- #define ADS1X1X_AIN1_SINGM ((1 << 6) | (0 << 5) | (1 << 4))
61
- #define ADS1X1X_AIN2_SINGM ((1 << 6) | (1 << 5) | (0 << 4))
62
- #define ADS1X1X_AIN3_SINGM ((1 << 6) | (1 << 5) | (1 << 4))
46
+ #define ADS1X1X_MUX_MASK ((1 << 6) | (1 << 5) | (1 << 4)) /**< Mask for MUX bits */
47
+ #define ADS1X1X_AIN0_DIFFM_AIN1 ((0 << 6) | (0 << 5) | (0 << 4)) /**< Differential AIN0 - AIN1
48
+ (default) */
49
+ #define ADS1X1X_AIN0_DIFFM_AIN3 ((0 << 6) | (0 << 5) | (1 << 4)) /**< Differential AIN0 - AIN3 */
50
+ #define ADS1X1X_AIN1_DIFFM_AIN3 ((0 << 6) | (1 << 5) | (0 << 4)) /**< Differential AIN1 - AIN3 */
51
+ #define ADS1X1X_AIN2_DIFFM_AIN3 ((0 << 6) | (1 << 5) | (1 << 4)) /**< Differential AIN2 - AIN3 */
52
+ #define ADS1X1X_AIN0_SINGM ((1 << 6) | (0 << 5) | (0 << 4)) /**< Single-ended AIN0 */
53
+ #define ADS1X1X_AIN1_SINGM ((1 << 6) | (0 << 5) | (1 << 4)) /**< Single-ended AIN1 */
54
+ #define ADS1X1X_AIN2_SINGM ((1 << 6) | (1 << 5) | (0 << 4)) /**< Single-ended AIN2 */
55
+ #define ADS1X1X_AIN3_SINGM ((1 << 6) | (1 << 5) | (1 << 4)) /**< Single-ended AIN3 */
63
56
/** @} */
64
57
65
58
/**
66
59
* @name ADS101x/111x programmable gain
67
- *
68
60
* Sets the full-scale range (max voltage value).
69
61
* This has no effect on ADS1013 and ADS1113 (both use 2.048V FSR).
70
- *
71
62
* @{
72
63
*/
73
- #define ADS1X1X_PGA_MASK ((1 << 3) | (1 << 2) | (1 << 1))
74
- #define ADS1X1X_PGA_FSR_6V144 ((0 << 3) | (0 << 2) | (0 << 1))
75
- #define ADS1X1X_PGA_FSR_4V096 ((0 << 3) | (0 << 2) | (1 << 1))
76
- #define ADS1X1X_PGA_FSR_2V048 ((0 << 3) | (1 << 2) | (0 << 1))
77
- #define ADS1X1X_PGA_FSR_1V024 ((0 << 3) | (1 << 2) | (1 << 1))
78
- #define ADS1X1X_PGA_FSR_0V512 ((1 << 3) | (0 << 2) | (0 << 1))
79
- #define ADS1X1X_PGA_FSR_0V256 ((1 << 3) | (0 << 2) | (1 << 1))
64
+ #define ADS1X1X_PGA_MASK ((1 << 3) | (1 << 2) | (1 << 1)) /**< Mask for PGA bits */
65
+ #define ADS1X1X_PGA_FSR_6V144 ((0 << 3) | (0 << 2) | (0 << 1)) /**< +/-6.144V */
66
+ #define ADS1X1X_PGA_FSR_4V096 ((0 << 3) | (0 << 2) | (1 << 1)) /**< +/-4.096V */
67
+ #define ADS1X1X_PGA_FSR_2V048 ((0 << 3) | (1 << 2) | (0 << 1)) /**< +/-2.048V (default) */
68
+ #define ADS1X1X_PGA_FSR_1V024 ((0 << 3) | (1 << 2) | (1 << 1)) /**< +/-1.024V */
69
+ #define ADS1X1X_PGA_FSR_0V512 ((1 << 3) | (0 << 2) | (0 << 1)) /**< +/-0.512V */
70
+ #define ADS1X1X_PGA_FSR_0V256 ((1 << 3) | (0 << 2) | (1 << 1)) /**< +/-0.256V */
80
71
/** @} */
81
72
82
73
/**
83
74
* @name ADS101x/111x operating modes
84
- *
85
- * MODE bit in the config register:
86
- * - @ref ADS1X1X_MODE_SINGLE : Single-shot (default), powers down after each conversion.
87
- * - @ref ADS1X1X_MODE_CONTINUOUS : Continuous conversions.
88
- *
89
- * @{9
75
+ * MODE bit in the config register
76
+ * @{
90
77
*/
91
- #define ADS1X1X_MODE_MASK (1 << 0)
78
+ #define ADS1X1X_MODE_MASK (1 << 0) /**< Mask for MODE bit */
92
79
#define ADS1X1X_MODE_SINGLE (1 << 0) /**< Single-shot / power-down */
93
80
#define ADS1X1X_MODE_CONTINUOUS (0 << 0) /**< Continuous conversion */
94
81
/** @} */
95
82
96
83
/**
97
84
* @name ADS101x/111x data rate settings
98
- *
99
85
* Configures the data rate (samples per second).
100
86
* Values differ between ADS101x and ADS111x families.
101
- *
102
87
* @{
103
88
*/
104
- #define ADS1X1X_DATAR_MASK ((1 << 7) | (1 << 6) | (1 << 5))
89
+ #define ADS1X1X_DATAR_MASK ((1 << 7) | (1 << 6) | (1 << 5)) /**< Mask for data rate bits */
105
90
#ifdef MODULE_ADS101X
106
- # define ADS1X1X_DATAR_128 ((0 << 7) | (0 << 6) | (0 << 5)) /**< 128 SPS */
107
- # define ADS1X1X_DATAR_250 ((0 << 7) | (0 << 6) | (1 << 5)) /**< 250 SPS */
108
- # define ADS1X1X_DATAR_490 ((0 << 7) | (1 << 6) | (0 << 5)) /**< 490 SPS */
109
- # define ADS1X1X_DATAR_920 ((0 << 7) | (1 << 6) | (1 << 5)) /**< 920 SPS */
110
- # define ADS1X1X_DATAR_1600 ((1 << 7) | (0 << 6) | (0 << 5)) /**< 1600 SPS (default) */
111
- # define ADS1X1X_DATAR_2400 ((1 << 7) | (0 << 6) | (1 << 5)) /**< 2400 SPS */
112
- # define ADS1X1X_DATAR_3300 ((1 << 7) | (1 << 6) | (0 << 5)) /**< 3300 SPS */
91
+ # define ADS1X1X_DATAR_128 ((0 << 7) | (0 << 6) | (0 << 5)) /**< 128 SPS */
92
+ # define ADS1X1X_DATAR_250 ((0 << 7) | (0 << 6) | (1 << 5)) /**< 250 SPS */
93
+ # define ADS1X1X_DATAR_490 ((0 << 7) | (1 << 6) | (0 << 5)) /**< 490 SPS */
94
+ # define ADS1X1X_DATAR_920 ((0 << 7) | (1 << 6) | (1 << 5)) /**< 920 SPS */
95
+ # define ADS1X1X_DATAR_1600 ((1 << 7) | (0 << 6) | (0 << 5)) /**< 1600 SPS (default) */
96
+ # define ADS1X1X_DATAR_2400 ((1 << 7) | (0 << 6) | (1 << 5)) /**< 2400 SPS */
97
+ # define ADS1X1X_DATAR_3300 ((1 << 7) | (1 << 6) | (0 << 5)) /**< 3300 SPS */
113
98
#elif defined(MODULE_ADS111X )
114
- # define ADS1X1X_DATAR_MASK ((1 << 7) | (1 << 6) | (1 << 5))
115
- # define ADS1X1X_DATAR_8 ((0 << 7) | (0 << 6) | (0 << 5)) /**< 8 SPS */
116
- # define ADS1X1X_DATAR_16 ((0 << 7) | (0 << 6) | (1 << 5)) /**< 16 SPS */
117
- # define ADS1X1X_DATAR_32 ((0 << 7) | (1 << 6) | (0 << 5)) /**< 32 SPS */
118
- # define ADS1X1X_DATAR_64 ((0 << 7) | (1 << 6) | (1 << 5)) /**< 64 SPS */
119
- # define ADS1X1X_DATAR_128 ((1 << 7) | (0 << 6) | (0 << 5)) /**< 128 SPS (default) */
120
- # define ADS1X1X_DATAR_250 ((1 << 7) | (0 << 6) | (1 << 5)) /**< 250 SPS */
121
- # define ADS1X1X_DATAR_475 ((1 << 7) | (1 << 6) | (0 << 5)) /**< 475 SPS */
122
- # define ADS1X1X_DATAR_860 ((1 << 7) | (1 << 6) | (1 << 5)) /**< 860 SPS */
99
+ # define ADS1X1X_DATAR_8 ((0 << 7) | (0 << 6) | (0 << 5)) /**< 8 SPS */
100
+ # define ADS1X1X_DATAR_16 ((0 << 7) | (0 << 6) | (1 << 5)) /**< 16 SPS */
101
+ # define ADS1X1X_DATAR_32 ((0 << 7) | (1 << 6) | (0 << 5)) /**< 32 SPS */
102
+ # define ADS1X1X_DATAR_64 ((0 << 7) | (1 << 6) | (1 << 5)) /**< 64 SPS */
103
+ # define ADS1X1X_DATAR_128 ((1 << 7) | (0 << 6) | (0 << 5)) /**< 128 SPS (default) */
104
+ # define ADS1X1X_DATAR_250 ((1 << 7) | (0 << 6) | (1 << 5)) /**< 250 SPS */
105
+ # define ADS1X1X_DATAR_475 ((1 << 7) | (1 << 6) | (0 << 5)) /**< 475 SPS */
106
+ # define ADS1X1X_DATAR_860 ((1 << 7) | (1 << 6) | (1 << 5)) /**< 860 SPS */
123
107
#endif
124
108
/** @} */
125
109
126
110
/**
127
111
* @name Comparator mode
128
- *
129
112
* Selects comparator operation
130
- *
131
113
* @{
132
114
*/
133
- #define ADS1X1X_COMP_MODE_MASK (1 << 4)
134
- #define ADS1X1X_COMP_MODE_TRADITIONAL (0 << 4) /**< Traditional comparator */
135
- #define ADS1X1X_COMP_MODE_WINDOW (1 << 4) /**< Window comparator */
115
+ #define ADS1X1X_COMP_MODE_MASK (1 << 4) /**< Mask for COMP_MODE bit */
116
+ #define ADS1X1X_COMP_MODE_TRADITIONAL (0 << 4) /**< Traditional comparator (default) */
117
+ #define ADS1X1X_COMP_MODE_WINDOW (1 << 4) /**< Window comparator */
136
118
/** @} */
137
119
138
120
/**
139
121
* @name Comparator polarity
140
- *
141
122
* Controls ALERT/RDY pin polarity
142
- *
143
123
* @{
144
124
*/
145
- #define ADS1X1X_COMP_POLARITY_MASK (1 << 3)
125
+ #define ADS1X1X_COMP_POLARITY_MASK (1 << 3) /**< Mask for COMP_POLARITY bit */
146
126
#define ADS1X1X_COMP_POLARITY_LOW (0 << 3) /**< Active low (default) */
147
127
#define ADS1X1X_COMP_POLARITY_HIGH (1 << 3) /**< Active high */
148
128
/** @} */
149
129
150
130
/**
151
131
* @name Comparator latch
152
- *
153
132
* Latching comparator output
154
- *
155
133
* @{
156
134
*/
157
- #define ADS1X1X_COMP_LATCH_MASK (1 << 2)
135
+ #define ADS1X1X_COMP_LATCH_MASK (1 << 2) /**< Mask for COMP_LATCH bit */
158
136
#define ADS1X1X_COMP_LATCH_DISABLE (0 << 2) /**< Non-latching (default) */
159
137
#define ADS1X1X_COMP_LATCH_ENABLE (1 << 2) /**< Latching until read */
160
138
/** @} */
161
139
162
140
/**
163
141
* @name Comparator queue
164
- *
165
142
* Configures comparator trigger queue
166
- *
167
143
* @{
168
144
*/
169
- #define ADS1X1X_COMP_QUEUE_MASK ((1 << 1) | (1 << 0))
170
- #define ADS1X1X_COMP_QUEUE_1 ((0 << 1) | (0 << 0)) /**< Assert after 1 conversion */
171
- #define ADS1X1X_COMP_QUEUE_2 ((0 << 1) | (1 << 0)) /**< Assert after 2 conversions */
172
- #define ADS1X1X_COMP_QUEUE_4 ((1 << 1) | (0 << 0)) /**< Assert after 4 conversions */
173
- #define ADS1X1X_COMP_QUEUE_DISABLE ((1 << 1) | (1 << 0)) /**< Disable comparator */
145
+ #define ADS1X1X_COMP_QUEUE_MASK ((1 << 1) | (1 << 0)) /**< Mask for COMP_QUEUE bits */
146
+ #define ADS1X1X_COMP_QUEUE_1 ((0 << 1) | (0 << 0)) /**< Assert after 1 conversion */
147
+ #define ADS1X1X_COMP_QUEUE_2 ((0 << 1) | (1 << 0)) /**< Assert after 2 conversions */
148
+ #define ADS1X1X_COMP_QUEUE_4 ((1 << 1) | (0 << 0)) /**< Assert after 4 conversions */
149
+ #define ADS1X1X_COMP_QUEUE_DISABLE ((1 << 1) | (1 << 0)) /**< Disable comparator (default) */
174
150
/** @} */
175
151
176
152
/**
177
- * @name ADS101x/111x alert configuration mask
178
- *
179
- * Mask for all alert-related configuration bits in the config register
153
+ * @brief Mask for all alert-related configuration bits
180
154
* (comparator mode, polarity, latch, queue).
181
- * This has no effect on ADS1113/1013.
182
- *
183
- * @{
184
155
*/
185
156
#define ADS1X1X_ALERT_MASK (ADS1X1X_COMP_QUEUE_MASK | ADS1X1X_COMP_LATCH_MASK | \
186
157
ADS1X1X_COMP_POLARITY_MASK | ADS1X1X_COMP_MODE_MASK)
187
- /** @} */
188
158
189
159
/**
190
160
* @brief Get the voltage reference for a given PGA setting
@@ -211,5 +181,3 @@ static inline int _ads1x1x_get_pga_voltage(uint8_t pga)
211
181
#endif
212
182
213
183
/** @} */
214
-
215
-
0 commit comments