MAX32675 Peripheral Driver API
Peripheral Driver API for the MAX32675
afe_dac_regs.h
1 
6 /*******************************************************************************
7 * Copyright (C) Maxim Integrated Products, Inc., All rights Reserved.
8 *
9 * This software is protected by copyright laws of the United States and
10 * of foreign countries. This material may also be protected by patent laws
11 * and technology transfer regulations of the United States and of foreign
12 * countries. This software is furnished under a license agreement and/or a
13 * nondisclosure agreement and may only be used or reproduced in accordance
14 * with the terms of those agreements. Dissemination of this information to
15 * any party or parties not specified in the license agreement and/or
16 * nondisclosure agreement is expressly prohibited.
17 *
18 * The above copyright notice and this permission notice shall be included
19 * in all copies or substantial portions of the Software.
20 *
21 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
22 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
24 * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES
25 * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
26 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
27 * OTHER DEALINGS IN THE SOFTWARE.
28 *
29 * Except as contained in this notice, the name of Maxim Integrated
30 * Products, Inc. shall not be used except as stated in the Maxim Integrated
31 * Products, Inc. Branding Policy.
32 *
33 * The mere transfer of this software does not imply any licenses
34 * of trade secrets, proprietary technology, copyrights, patents,
35 * trademarks, maskwork rights, or any other form of intellectual
36 * property whatsoever. Maxim Integrated Products, Inc. retains all
37 * ownership rights.
38 *******************************************************************************
39 */
40 
41 #ifndef _AFE_DAC_REGS_H_
42 #define _AFE_DAC_REGS_H_
43 
44 /* **** Includes **** */
45 #include <stdint.h>
46 
47 #ifdef __cplusplus
48 extern "C" {
49 #endif
50 
51 #if defined (__ICCARM__)
52  #pragma system_include
53 #endif
54 
55 #if defined (__CC_ARM)
56  #pragma anon_unions
57 #endif
58 /*
60  If types are not defined elsewhere (CMSIS) define them here
61 */
62 #ifndef __IO
63 #define __IO volatile
64 #endif
65 #ifndef __I
66 #define __I volatile const
67 #endif
68 #ifndef __O
69 #define __O volatile
70 #endif
71 #ifndef __R
72 #define __R volatile const
73 #endif
74 
76 /* **** Definitions **** */
77 
86 /* Register offsets for module AFE_DAC */
93  #define MXC_R_AFE_DAC_CTRL ((uint32_t)0x01000004UL)
94  #define MXC_R_AFE_DAC_RATE ((uint32_t)0x01010004UL)
95  #define MXC_R_AFE_DAC_INT ((uint32_t)0x01020004UL)
96  #define MXC_R_AFE_DAC_REG ((uint32_t)0x01030004UL)
97  #define MXC_R_AFE_DAC_TRIM ((uint32_t)0x01040004UL)
98  #define MXC_R_AFE_DAC_VREF_CTRL ((uint32_t)0x01050002UL)
99  #define MXC_R_AFE_DAC_FIFO ((uint32_t)0x01060002UL)
100  #define MXC_R_AFE_DAC_VREF_TRIM ((uint32_t)0x01070002UL)
109  #define MXC_F_AFE_DAC_CTRL_FIFO_AE_CNT_POS 0
110  #define MXC_F_AFE_DAC_CTRL_FIFO_AE_CNT ((uint32_t)(0xFUL << MXC_F_AFE_DAC_CTRL_FIFO_AE_CNT_POS))
112  #define MXC_F_AFE_DAC_CTRL_FIFO_ALMOST_FULL_POS 5
113  #define MXC_F_AFE_DAC_CTRL_FIFO_ALMOST_FULL ((uint32_t)(0x1UL << MXC_F_AFE_DAC_CTRL_FIFO_ALMOST_FULL_POS))
115  #define MXC_F_AFE_DAC_CTRL_FIFO_EMPTY_POS 6
116  #define MXC_F_AFE_DAC_CTRL_FIFO_EMPTY ((uint32_t)(0x1UL << MXC_F_AFE_DAC_CTRL_FIFO_EMPTY_POS))
118  #define MXC_F_AFE_DAC_CTRL_FIFO_ALMOST_EMPTY_POS 7
119  #define MXC_F_AFE_DAC_CTRL_FIFO_ALMOST_EMPTY ((uint32_t)(0x1UL << MXC_F_AFE_DAC_CTRL_FIFO_ALMOST_EMPTY_POS))
121  #define MXC_F_AFE_DAC_CTRL_INTERP_MODE_POS 8
122  #define MXC_F_AFE_DAC_CTRL_INTERP_MODE ((uint32_t)(0x7UL << MXC_F_AFE_DAC_CTRL_INTERP_MODE_POS))
123  #define MXC_V_AFE_DAC_CTRL_INTERP_MODE_DISABLED ((uint32_t)0x0UL)
124  #define MXC_S_AFE_DAC_CTRL_INTERP_MODE_DISABLED (MXC_V_AFE_DAC_CTRL_INTERP_MODE_DISABLED << MXC_F_AFE_DAC_CTRL_INTERP_MODE_POS)
125  #define MXC_V_AFE_DAC_CTRL_INTERP_MODE_2_TO_1_INTERPOLATION ((uint32_t)0x1UL)
126  #define MXC_S_AFE_DAC_CTRL_INTERP_MODE_2_TO_1_INTERPOLATION (MXC_V_AFE_DAC_CTRL_INTERP_MODE_2_TO_1_INTERPOLATION << MXC_F_AFE_DAC_CTRL_INTERP_MODE_POS)
127  #define MXC_V_AFE_DAC_CTRL_INTERP_MODE_4_TO_1_INTERPOLATION ((uint32_t)0x2UL)
128  #define MXC_S_AFE_DAC_CTRL_INTERP_MODE_4_TO_1_INTERPOLATION (MXC_V_AFE_DAC_CTRL_INTERP_MODE_4_TO_1_INTERPOLATION << MXC_F_AFE_DAC_CTRL_INTERP_MODE_POS)
129  #define MXC_V_AFE_DAC_CTRL_INTERP_MODE_8_TO_1_INTERPOLATION ((uint32_t)0x3UL)
130  #define MXC_S_AFE_DAC_CTRL_INTERP_MODE_8_TO_1_INTERPOLATION (MXC_V_AFE_DAC_CTRL_INTERP_MODE_8_TO_1_INTERPOLATION << MXC_F_AFE_DAC_CTRL_INTERP_MODE_POS)
132  #define MXC_F_AFE_DAC_CTRL_FIFO_AF_CNT_POS 12
133  #define MXC_F_AFE_DAC_CTRL_FIFO_AF_CNT ((uint32_t)(0xFUL << MXC_F_AFE_DAC_CTRL_FIFO_AF_CNT_POS))
135  #define MXC_F_AFE_DAC_CTRL_START_MODE_POS 16
136  #define MXC_F_AFE_DAC_CTRL_START_MODE ((uint32_t)(0x3UL << MXC_F_AFE_DAC_CTRL_START_MODE_POS))
137  #define MXC_V_AFE_DAC_CTRL_START_MODE_START_WHEN_FIFO_NOT_EMPTY ((uint32_t)0x0UL)
138  #define MXC_S_AFE_DAC_CTRL_START_MODE_START_WHEN_FIFO_NOT_EMPTY (MXC_V_AFE_DAC_CTRL_START_MODE_START_WHEN_FIFO_NOT_EMPTY << MXC_F_AFE_DAC_CTRL_START_MODE_POS)
139  #define MXC_V_AFE_DAC_CTRL_START_MODE_START_ON_ADC_START_STROBE ((uint32_t)0x1UL)
140  #define MXC_S_AFE_DAC_CTRL_START_MODE_START_ON_ADC_START_STROBE (MXC_V_AFE_DAC_CTRL_START_MODE_START_ON_ADC_START_STROBE << MXC_F_AFE_DAC_CTRL_START_MODE_POS)
141  #define MXC_V_AFE_DAC_CTRL_START_MODE_START_WHEN_CPU_START_WRITTEN ((uint32_t)0x2UL)
142  #define MXC_S_AFE_DAC_CTRL_START_MODE_START_WHEN_CPU_START_WRITTEN (MXC_V_AFE_DAC_CTRL_START_MODE_START_WHEN_CPU_START_WRITTEN << MXC_F_AFE_DAC_CTRL_START_MODE_POS)
143  #define MXC_V_AFE_DAC_CTRL_START_MODE_RESERVED ((uint32_t)0x3UL)
144  #define MXC_S_AFE_DAC_CTRL_START_MODE_RESERVED (MXC_V_AFE_DAC_CTRL_START_MODE_RESERVED << MXC_F_AFE_DAC_CTRL_START_MODE_POS)
146  #define MXC_F_AFE_DAC_CTRL_CPU_START_POS 20
147  #define MXC_F_AFE_DAC_CTRL_CPU_START ((uint32_t)(0x1UL << MXC_F_AFE_DAC_CTRL_CPU_START_POS))
149  #define MXC_F_AFE_DAC_CTRL_OP_MODE_POS 24
150  #define MXC_F_AFE_DAC_CTRL_OP_MODE ((uint32_t)(0x3UL << MXC_F_AFE_DAC_CTRL_OP_MODE_POS))
151  #define MXC_V_AFE_DAC_CTRL_OP_MODE_OUTPUT_WHEN_FIFO_AVAIL ((uint32_t)0x0UL)
152  #define MXC_S_AFE_DAC_CTRL_OP_MODE_OUTPUT_WHEN_FIFO_AVAIL (MXC_V_AFE_DAC_CTRL_OP_MODE_OUTPUT_WHEN_FIFO_AVAIL << MXC_F_AFE_DAC_CTRL_OP_MODE_POS)
153  #define MXC_V_AFE_DAC_CTRL_OP_MODE_OUTPUT_ONCE_AT_RATE_CNT ((uint32_t)0x1UL)
154  #define MXC_S_AFE_DAC_CTRL_OP_MODE_OUTPUT_ONCE_AT_RATE_CNT (MXC_V_AFE_DAC_CTRL_OP_MODE_OUTPUT_ONCE_AT_RATE_CNT << MXC_F_AFE_DAC_CTRL_OP_MODE_POS)
155  #define MXC_V_AFE_DAC_CTRL_OP_MODE_RESERVED ((uint32_t)0x2UL)
156  #define MXC_S_AFE_DAC_CTRL_OP_MODE_RESERVED (MXC_V_AFE_DAC_CTRL_OP_MODE_RESERVED << MXC_F_AFE_DAC_CTRL_OP_MODE_POS)
157  #define MXC_V_AFE_DAC_CTRL_OP_MODE_OUTPUT_SAMPLE_CNT_AT_RATE_CNT ((uint32_t)0x3UL)
158  #define MXC_S_AFE_DAC_CTRL_OP_MODE_OUTPUT_SAMPLE_CNT_AT_RATE_CNT (MXC_V_AFE_DAC_CTRL_OP_MODE_OUTPUT_SAMPLE_CNT_AT_RATE_CNT << MXC_F_AFE_DAC_CTRL_OP_MODE_POS)
160  #define MXC_F_AFE_DAC_CTRL_POWER_MODE_1_0_POS 26
161  #define MXC_F_AFE_DAC_CTRL_POWER_MODE_1_0 ((uint32_t)(0x3UL << MXC_F_AFE_DAC_CTRL_POWER_MODE_1_0_POS))
162  #define MXC_V_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL0 ((uint32_t)0x1UL)
163  #define MXC_S_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL0 (MXC_V_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL0 << MXC_F_AFE_DAC_CTRL_POWER_MODE_1_0_POS)
164  #define MXC_V_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL1 ((uint32_t)0x3UL)
165  #define MXC_S_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL1 (MXC_V_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL1 << MXC_F_AFE_DAC_CTRL_POWER_MODE_1_0_POS)
166  #define MXC_V_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL2 ((uint32_t)0x1UL)
167  #define MXC_S_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL2 (MXC_V_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL2 << MXC_F_AFE_DAC_CTRL_POWER_MODE_1_0_POS)
168  #define MXC_V_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL3 ((uint32_t)0x3UL)
169  #define MXC_S_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL3 (MXC_V_AFE_DAC_CTRL_POWER_MODE_1_0_POWLVL3 << MXC_F_AFE_DAC_CTRL_POWER_MODE_1_0_POS)
171  #define MXC_F_AFE_DAC_CTRL_POWER_ON_POS 28
172  #define MXC_F_AFE_DAC_CTRL_POWER_ON ((uint32_t)(0x1UL << MXC_F_AFE_DAC_CTRL_POWER_ON_POS))
174  #define MXC_F_AFE_DAC_CTRL_CLOCK_GATE_EN_POS 29
175  #define MXC_F_AFE_DAC_CTRL_CLOCK_GATE_EN ((uint32_t)(0x1UL << MXC_F_AFE_DAC_CTRL_CLOCK_GATE_EN_POS))
177  #define MXC_F_AFE_DAC_CTRL_POWER_MODE_2_POS 30
178  #define MXC_F_AFE_DAC_CTRL_POWER_MODE_2 ((uint32_t)(0x1UL << MXC_F_AFE_DAC_CTRL_POWER_MODE_2_POS))
179  #define MXC_V_AFE_DAC_CTRL_POWER_MODE_2_POWLVL0_1 ((uint32_t)0x0UL)
180  #define MXC_S_AFE_DAC_CTRL_POWER_MODE_2_POWLVL0_1 (MXC_V_AFE_DAC_CTRL_POWER_MODE_2_POWLVL0_1 << MXC_F_AFE_DAC_CTRL_POWER_MODE_2_POS)
181  #define MXC_V_AFE_DAC_CTRL_POWER_MODE_2_POWLVL2_3 ((uint32_t)0x1UL)
182  #define MXC_S_AFE_DAC_CTRL_POWER_MODE_2_POWLVL2_3 (MXC_V_AFE_DAC_CTRL_POWER_MODE_2_POWLVL2_3 << MXC_F_AFE_DAC_CTRL_POWER_MODE_2_POS)
184  #define MXC_F_AFE_DAC_CTRL_RESET_POS 31
185  #define MXC_F_AFE_DAC_CTRL_RESET ((uint32_t)(0x1UL << MXC_F_AFE_DAC_CTRL_RESET_POS))
195  #define MXC_F_AFE_DAC_RATE_RATE_CNT_POS 0
196  #define MXC_F_AFE_DAC_RATE_RATE_CNT ((uint32_t)(0xFFFFUL << MXC_F_AFE_DAC_RATE_RATE_CNT_POS))
198  #define MXC_F_AFE_DAC_RATE_SAMPLE_CNT_POS 16
199  #define MXC_F_AFE_DAC_RATE_SAMPLE_CNT ((uint32_t)(0xFFFFUL << MXC_F_AFE_DAC_RATE_SAMPLE_CNT_POS))
209  #define MXC_F_AFE_DAC_INT_OUT_DONE_IF_POS 0
210  #define MXC_F_AFE_DAC_INT_OUT_DONE_IF ((uint32_t)(0x1UL << MXC_F_AFE_DAC_INT_OUT_DONE_IF_POS))
212  #define MXC_F_AFE_DAC_INT_UNDERFLOW_IF_POS 1
213  #define MXC_F_AFE_DAC_INT_UNDERFLOW_IF ((uint32_t)(0x1UL << MXC_F_AFE_DAC_INT_UNDERFLOW_IF_POS))
215  #define MXC_F_AFE_DAC_INT_ALMOST_EMPTY_IF_POS 2
216  #define MXC_F_AFE_DAC_INT_ALMOST_EMPTY_IF ((uint32_t)(0x1UL << MXC_F_AFE_DAC_INT_ALMOST_EMPTY_IF_POS))
218  #define MXC_F_AFE_DAC_INT_UNDERLFOW_POS 3
219  #define MXC_F_AFE_DAC_INT_UNDERLFOW ((uint32_t)(0x1UL << MXC_F_AFE_DAC_INT_UNDERLFOW_POS))
221  #define MXC_F_AFE_DAC_INT_OUT_DONE_IE_POS 16
222  #define MXC_F_AFE_DAC_INT_OUT_DONE_IE ((uint32_t)(0x1UL << MXC_F_AFE_DAC_INT_OUT_DONE_IE_POS))
224  #define MXC_F_AFE_DAC_INT_UNDERFLOW_IE_POS 17
225  #define MXC_F_AFE_DAC_INT_UNDERFLOW_IE ((uint32_t)(0x1UL << MXC_F_AFE_DAC_INT_UNDERFLOW_IE_POS))
227  #define MXC_F_AFE_DAC_INT_AHB_CG_DISABLE_POS 28
228  #define MXC_F_AFE_DAC_INT_AHB_CG_DISABLE ((uint32_t)(0x1UL << MXC_F_AFE_DAC_INT_AHB_CG_DISABLE_POS))
230  #define MXC_F_AFE_DAC_INT_APB_CG_DISABLE_POS 29
231  #define MXC_F_AFE_DAC_INT_APB_CG_DISABLE ((uint32_t)(0x1UL << MXC_F_AFE_DAC_INT_APB_CG_DISABLE_POS))
241  #define MXC_F_AFE_DAC_VREF_CTRL_REF_DAC_FAST_PD_POS 0
242  #define MXC_F_AFE_DAC_VREF_CTRL_REF_DAC_FAST_PD ((uint16_t)(0x1UL << MXC_F_AFE_DAC_VREF_CTRL_REF_DAC_FAST_PD_POS))
244  #define MXC_F_AFE_DAC_VREF_CTRL_DACREFSEL_POS 1
245  #define MXC_F_AFE_DAC_VREF_CTRL_DACREFSEL ((uint16_t)(0x3UL << MXC_F_AFE_DAC_VREF_CTRL_DACREFSEL_POS))
246  #define MXC_V_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_1_024 ((uint16_t)0x0UL)
247  #define MXC_S_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_1_024 (MXC_V_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_1_024 << MXC_F_AFE_DAC_VREF_CTRL_DACREFSEL_POS)
248  #define MXC_V_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_1_500 ((uint16_t)0x1UL)
249  #define MXC_S_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_1_500 (MXC_V_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_1_500 << MXC_F_AFE_DAC_VREF_CTRL_DACREFSEL_POS)
250  #define MXC_V_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_2_048 ((uint16_t)0x2UL)
251  #define MXC_S_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_2_048 (MXC_V_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_2_048 << MXC_F_AFE_DAC_VREF_CTRL_DACREFSEL_POS)
252  #define MXC_V_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_2_500 ((uint16_t)0x3UL)
253  #define MXC_S_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_2_500 (MXC_V_AFE_DAC_VREF_CTRL_DACREFSEL_VOLTS_2_500 << MXC_F_AFE_DAC_VREF_CTRL_DACREFSEL_POS)
255  #define MXC_F_AFE_DAC_VREF_CTRL_REFDAC_OUTEN_POS 3
256  #define MXC_F_AFE_DAC_VREF_CTRL_REFDAC_OUTEN ((uint16_t)(0x1UL << MXC_F_AFE_DAC_VREF_CTRL_REFDAC_OUTEN_POS))
258  #define MXC_F_AFE_DAC_VREF_CTRL_REF_PU_POS 4
259  #define MXC_F_AFE_DAC_VREF_CTRL_REF_PU ((uint16_t)(0x1UL << MXC_F_AFE_DAC_VREF_CTRL_REF_PU_POS))
261  #define MXC_F_AFE_DAC_VREF_CTRL_REFDAC_CP_POS 5
262  #define MXC_F_AFE_DAC_VREF_CTRL_REFDAC_CP ((uint16_t)(0x1UL << MXC_F_AFE_DAC_VREF_CTRL_REFDAC_CP_POS))
264  #define MXC_F_AFE_DAC_VREF_CTRL_REFDAC_GAIN_POS 6
265  #define MXC_F_AFE_DAC_VREF_CTRL_REFDAC_GAIN ((uint16_t)(0x3UL << MXC_F_AFE_DAC_VREF_CTRL_REFDAC_GAIN_POS))
266  #define MXC_V_AFE_DAC_VREF_CTRL_REFDAC_GAIN_DEFAULT_GAIN ((uint16_t)0x0UL)
267  #define MXC_S_AFE_DAC_VREF_CTRL_REFDAC_GAIN_DEFAULT_GAIN (MXC_V_AFE_DAC_VREF_CTRL_REFDAC_GAIN_DEFAULT_GAIN << MXC_F_AFE_DAC_VREF_CTRL_REFDAC_GAIN_POS)
268  #define MXC_V_AFE_DAC_VREF_CTRL_REFDAC_GAIN_HIGHEST_GAIN ((uint16_t)0x1UL)
269  #define MXC_S_AFE_DAC_VREF_CTRL_REFDAC_GAIN_HIGHEST_GAIN (MXC_V_AFE_DAC_VREF_CTRL_REFDAC_GAIN_HIGHEST_GAIN << MXC_F_AFE_DAC_VREF_CTRL_REFDAC_GAIN_POS)
271  #define MXC_F_AFE_DAC_VREF_CTRL_REF_ABUS_POS 8
272  #define MXC_F_AFE_DAC_VREF_CTRL_REF_ABUS ((uint16_t)(0xFUL << MXC_F_AFE_DAC_VREF_CTRL_REF_ABUS_POS))
282  #define MXC_F_AFE_DAC_FIFO_FIFO_DATA_POS 0
283  #define MXC_F_AFE_DAC_FIFO_FIFO_DATA ((uint16_t)(0xFFFFUL << MXC_F_AFE_DAC_FIFO_FIFO_DATA_POS))
293  #define MXC_F_AFE_DAC_VREF_TRIM_V1_TRIM_POS 0
294  #define MXC_F_AFE_DAC_VREF_TRIM_V1_TRIM ((uint16_t)(0x1FUL << MXC_F_AFE_DAC_VREF_TRIM_V1_TRIM_POS))
296  #define MXC_F_AFE_DAC_VREF_TRIM_REF_BG_TRIM_POS 5
297  #define MXC_F_AFE_DAC_VREF_TRIM_REF_BG_TRIM ((uint16_t)(0x3FUL << MXC_F_AFE_DAC_VREF_TRIM_REF_BG_TRIM_POS))
301 #ifdef __cplusplus
302 }
303 #endif
304 
305 #endif /* _AFE_DAC_REGS_H_ */