MAX32672 Peripheral Driver API
Peripheral Driver API for the MAX32672
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Modules Pages
mcr_regs.h
Go to the documentation of this file.
1
8/******************************************************************************
9 *
10 * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by
11 * Analog Devices, Inc.),
12 * Copyright (C) 2023-2024 Analog Devices, Inc.
13 *
14 * Licensed under the Apache License, Version 2.0 (the "License");
15 * you may not use this file except in compliance with the License.
16 * You may obtain a copy of the License at
17 *
18 * http://www.apache.org/licenses/LICENSE-2.0
19 *
20 * Unless required by applicable law or agreed to in writing, software
21 * distributed under the License is distributed on an "AS IS" BASIS,
22 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23 * See the License for the specific language governing permissions and
24 * limitations under the License.
25 *
26 ******************************************************************************/
27
28#ifndef LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32672_INCLUDE_MCR_REGS_H_
29#define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32672_INCLUDE_MCR_REGS_H_
30
31/* **** Includes **** */
32#include <stdint.h>
33
34#ifdef __cplusplus
35extern "C" {
36#endif
37
38#if defined (__ICCARM__)
39 #pragma system_include
40#endif
41
42#if defined (__CC_ARM)
43 #pragma anon_unions
44#endif
46/*
47 If types are not defined elsewhere (CMSIS) define them here
48*/
49#ifndef __IO
50#define __IO volatile
51#endif
52#ifndef __I
53#define __I volatile const
54#endif
55#ifndef __O
56#define __O volatile
57#endif
58#ifndef __R
59#define __R volatile const
60#endif
62
63/* **** Definitions **** */
64
76typedef struct {
77 __R uint32_t rsv_0x0;
78 __IO uint32_t rst;
79 __IO uint32_t clkctrl;
80 __IO uint32_t aincomp;
81 __IO uint32_t lppioctrl;
82 __R uint32_t rsv_0x14_0x23[4];
83 __IO uint32_t pclkdis;
84 __R uint32_t rsv_0x28_0x33[3];
85 __IO uint32_t aeskey;
86 __IO uint32_t adc_cfg0;
87 __IO uint32_t adc_cfg1;
88 __IO uint32_t adc_cfg2;
89 __IO uint32_t adc_cfg3;
91
92/* Register offsets for module MCR */
99#define MXC_R_MCR_RST ((uint32_t)0x00000004UL)
100#define MXC_R_MCR_CLKCTRL ((uint32_t)0x00000008UL)
101#define MXC_R_MCR_AINCOMP ((uint32_t)0x0000000CUL)
102#define MXC_R_MCR_LPPIOCTRL ((uint32_t)0x00000010UL)
103#define MXC_R_MCR_PCLKDIS ((uint32_t)0x00000024UL)
104#define MXC_R_MCR_AESKEY ((uint32_t)0x00000034UL)
105#define MXC_R_MCR_ADC_CFG0 ((uint32_t)0x00000038UL)
106#define MXC_R_MCR_ADC_CFG1 ((uint32_t)0x0000003CUL)
107#define MXC_R_MCR_ADC_CFG2 ((uint32_t)0x00000040UL)
108#define MXC_R_MCR_ADC_CFG3 ((uint32_t)0x00000044UL)
117#define MXC_F_MCR_RST_LPTMR0_POS 0
118#define MXC_F_MCR_RST_LPTMR0 ((uint32_t)(0x1UL << MXC_F_MCR_RST_LPTMR0_POS))
120#define MXC_F_MCR_RST_LPTMR1_POS 1
121#define MXC_F_MCR_RST_LPTMR1 ((uint32_t)(0x1UL << MXC_F_MCR_RST_LPTMR1_POS))
123#define MXC_F_MCR_RST_LPUART0_POS 2
124#define MXC_F_MCR_RST_LPUART0 ((uint32_t)(0x1UL << MXC_F_MCR_RST_LPUART0_POS))
126#define MXC_F_MCR_RST_RTC_POS 3
127#define MXC_F_MCR_RST_RTC ((uint32_t)(0x1UL << MXC_F_MCR_RST_RTC_POS))
137#define MXC_F_MCR_CLKCTRL_ERTCO_PD_POS 16
138#define MXC_F_MCR_CLKCTRL_ERTCO_PD ((uint32_t)(0x1UL << MXC_F_MCR_CLKCTRL_ERTCO_PD_POS))
140#define MXC_F_MCR_CLKCTRL_ERTCO_EN_POS 17
141#define MXC_F_MCR_CLKCTRL_ERTCO_EN ((uint32_t)(0x1UL << MXC_F_MCR_CLKCTRL_ERTCO_EN_POS))
151#define MXC_F_MCR_AINCOMP_PD_POS 0
152#define MXC_F_MCR_AINCOMP_PD ((uint32_t)(0x3UL << MXC_F_MCR_AINCOMP_PD_POS))
154#define MXC_F_MCR_AINCOMP_HYST_POS 2
155#define MXC_F_MCR_AINCOMP_HYST ((uint32_t)(0x3UL << MXC_F_MCR_AINCOMP_HYST_POS))
157#define MXC_F_MCR_AINCOMP_NSEL_COMP0_POS 16
158#define MXC_F_MCR_AINCOMP_NSEL_COMP0 ((uint32_t)(0xFUL << MXC_F_MCR_AINCOMP_NSEL_COMP0_POS))
160#define MXC_F_MCR_AINCOMP_PSEL_COMP0_POS 20
161#define MXC_F_MCR_AINCOMP_PSEL_COMP0 ((uint32_t)(0xFUL << MXC_F_MCR_AINCOMP_PSEL_COMP0_POS))
163#define MXC_F_MCR_AINCOMP_NSEL_COMP1_POS 24
164#define MXC_F_MCR_AINCOMP_NSEL_COMP1 ((uint32_t)(0xFUL << MXC_F_MCR_AINCOMP_NSEL_COMP1_POS))
166#define MXC_F_MCR_AINCOMP_PSEL_COMP1_POS 28
167#define MXC_F_MCR_AINCOMP_PSEL_COMP1 ((uint32_t)(0xFUL << MXC_F_MCR_AINCOMP_PSEL_COMP1_POS))
177#define MXC_F_MCR_LPPIOCTRL_LPTMR0_I_POS 0
178#define MXC_F_MCR_LPPIOCTRL_LPTMR0_I ((uint32_t)(0x1UL << MXC_F_MCR_LPPIOCTRL_LPTMR0_I_POS))
180#define MXC_F_MCR_LPPIOCTRL_LPTMR0_O_POS 1
181#define MXC_F_MCR_LPPIOCTRL_LPTMR0_O ((uint32_t)(0x1UL << MXC_F_MCR_LPPIOCTRL_LPTMR0_O_POS))
183#define MXC_F_MCR_LPPIOCTRL_LPTMR1_I_POS 2
184#define MXC_F_MCR_LPPIOCTRL_LPTMR1_I ((uint32_t)(0x1UL << MXC_F_MCR_LPPIOCTRL_LPTMR1_I_POS))
186#define MXC_F_MCR_LPPIOCTRL_LPTMR1_O_POS 3
187#define MXC_F_MCR_LPPIOCTRL_LPTMR1_O ((uint32_t)(0x1UL << MXC_F_MCR_LPPIOCTRL_LPTMR1_O_POS))
189#define MXC_F_MCR_LPPIOCTRL_LPUART0_RX_POS 4
190#define MXC_F_MCR_LPPIOCTRL_LPUART0_RX ((uint32_t)(0x1UL << MXC_F_MCR_LPPIOCTRL_LPUART0_RX_POS))
192#define MXC_F_MCR_LPPIOCTRL_LPUART0_TX_POS 5
193#define MXC_F_MCR_LPPIOCTRL_LPUART0_TX ((uint32_t)(0x1UL << MXC_F_MCR_LPPIOCTRL_LPUART0_TX_POS))
195#define MXC_F_MCR_LPPIOCTRL_LPUART0_CTS_POS 6
196#define MXC_F_MCR_LPPIOCTRL_LPUART0_CTS ((uint32_t)(0x1UL << MXC_F_MCR_LPPIOCTRL_LPUART0_CTS_POS))
198#define MXC_F_MCR_LPPIOCTRL_LPUART0_RTS_POS 7
199#define MXC_F_MCR_LPPIOCTRL_LPUART0_RTS ((uint32_t)(0x1UL << MXC_F_MCR_LPPIOCTRL_LPUART0_RTS_POS))
209#define MXC_F_MCR_PCLKDIS_LPTMR0_POS 0
210#define MXC_F_MCR_PCLKDIS_LPTMR0 ((uint32_t)(0x1UL << MXC_F_MCR_PCLKDIS_LPTMR0_POS))
212#define MXC_F_MCR_PCLKDIS_LPTMR1_POS 1
213#define MXC_F_MCR_PCLKDIS_LPTMR1 ((uint32_t)(0x1UL << MXC_F_MCR_PCLKDIS_LPTMR1_POS))
215#define MXC_F_MCR_PCLKDIS_LPUART0_POS 2
216#define MXC_F_MCR_PCLKDIS_LPUART0 ((uint32_t)(0x1UL << MXC_F_MCR_PCLKDIS_LPUART0_POS))
226#define MXC_F_MCR_AESKEY_PTR_POS 0
227#define MXC_F_MCR_AESKEY_PTR ((uint32_t)(0xFFFFUL << MXC_F_MCR_AESKEY_PTR_POS))
237#define MXC_F_MCR_ADC_CFG0_LP_5K_DIS_POS 0
238#define MXC_F_MCR_ADC_CFG0_LP_5K_DIS ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG0_LP_5K_DIS_POS))
240#define MXC_F_MCR_ADC_CFG0_LP_50K_DIS_POS 1
241#define MXC_F_MCR_ADC_CFG0_LP_50K_DIS ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG0_LP_50K_DIS_POS))
243#define MXC_F_MCR_ADC_CFG0_EXT_REF_POS 2
244#define MXC_F_MCR_ADC_CFG0_EXT_REF ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG0_EXT_REF_POS))
246#define MXC_F_MCR_ADC_CFG0_REF_SEL_POS 3
247#define MXC_F_MCR_ADC_CFG0_REF_SEL ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG0_REF_SEL_POS))
257#define MXC_F_MCR_ADC_CFG1_CH0_PU_DYN_POS 0
258#define MXC_F_MCR_ADC_CFG1_CH0_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH0_PU_DYN_POS))
260#define MXC_F_MCR_ADC_CFG1_CH1_PU_DYN_POS 1
261#define MXC_F_MCR_ADC_CFG1_CH1_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH1_PU_DYN_POS))
263#define MXC_F_MCR_ADC_CFG1_CH2_PU_DYN_POS 2
264#define MXC_F_MCR_ADC_CFG1_CH2_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH2_PU_DYN_POS))
266#define MXC_F_MCR_ADC_CFG1_CH3_PU_DYN_POS 3
267#define MXC_F_MCR_ADC_CFG1_CH3_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH3_PU_DYN_POS))
269#define MXC_F_MCR_ADC_CFG1_CH4_PU_DYN_POS 4
270#define MXC_F_MCR_ADC_CFG1_CH4_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH4_PU_DYN_POS))
272#define MXC_F_MCR_ADC_CFG1_CH5_PU_DYN_POS 5
273#define MXC_F_MCR_ADC_CFG1_CH5_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH5_PU_DYN_POS))
275#define MXC_F_MCR_ADC_CFG1_CH6_PU_DYN_POS 6
276#define MXC_F_MCR_ADC_CFG1_CH6_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH6_PU_DYN_POS))
278#define MXC_F_MCR_ADC_CFG1_CH7_PU_DYN_POS 7
279#define MXC_F_MCR_ADC_CFG1_CH7_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH7_PU_DYN_POS))
281#define MXC_F_MCR_ADC_CFG1_CH8_PU_DYN_POS 8
282#define MXC_F_MCR_ADC_CFG1_CH8_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH8_PU_DYN_POS))
284#define MXC_F_MCR_ADC_CFG1_CH9_PU_DYN_POS 9
285#define MXC_F_MCR_ADC_CFG1_CH9_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH9_PU_DYN_POS))
287#define MXC_F_MCR_ADC_CFG1_CH10_PU_DYN_POS 10
288#define MXC_F_MCR_ADC_CFG1_CH10_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH10_PU_DYN_POS))
290#define MXC_F_MCR_ADC_CFG1_CH11_PU_DYN_POS 11
291#define MXC_F_MCR_ADC_CFG1_CH11_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH11_PU_DYN_POS))
293#define MXC_F_MCR_ADC_CFG1_CH12_PU_DYN_POS 12
294#define MXC_F_MCR_ADC_CFG1_CH12_PU_DYN ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG1_CH12_PU_DYN_POS))
304#define MXC_F_MCR_ADC_CFG2_CH0_POS 0
305#define MXC_F_MCR_ADC_CFG2_CH0 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH0_POS))
306#define MXC_V_MCR_ADC_CFG2_CH0_DIV1 ((uint32_t)0x0UL)
307#define MXC_S_MCR_ADC_CFG2_CH0_DIV1 (MXC_V_MCR_ADC_CFG2_CH0_DIV1 << MXC_F_MCR_ADC_CFG2_CH0_POS)
308#define MXC_V_MCR_ADC_CFG2_CH0_DIV2_5K ((uint32_t)0x1UL)
309#define MXC_S_MCR_ADC_CFG2_CH0_DIV2_5K (MXC_V_MCR_ADC_CFG2_CH0_DIV2_5K << MXC_F_MCR_ADC_CFG2_CH0_POS)
310#define MXC_V_MCR_ADC_CFG2_CH0_DIV2_50K ((uint32_t)0x2UL)
311#define MXC_S_MCR_ADC_CFG2_CH0_DIV2_50K (MXC_V_MCR_ADC_CFG2_CH0_DIV2_50K << MXC_F_MCR_ADC_CFG2_CH0_POS)
313#define MXC_F_MCR_ADC_CFG2_CH1_POS 2
314#define MXC_F_MCR_ADC_CFG2_CH1 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH1_POS))
316#define MXC_F_MCR_ADC_CFG2_CH2_POS 4
317#define MXC_F_MCR_ADC_CFG2_CH2 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH2_POS))
319#define MXC_F_MCR_ADC_CFG2_CH3_POS 6
320#define MXC_F_MCR_ADC_CFG2_CH3 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH3_POS))
322#define MXC_F_MCR_ADC_CFG2_CH4_POS 8
323#define MXC_F_MCR_ADC_CFG2_CH4 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH4_POS))
325#define MXC_F_MCR_ADC_CFG2_CH5_POS 10
326#define MXC_F_MCR_ADC_CFG2_CH5 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH5_POS))
328#define MXC_F_MCR_ADC_CFG2_CH6_POS 12
329#define MXC_F_MCR_ADC_CFG2_CH6 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH6_POS))
331#define MXC_F_MCR_ADC_CFG2_CH7_POS 14
332#define MXC_F_MCR_ADC_CFG2_CH7 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH7_POS))
334#define MXC_F_MCR_ADC_CFG2_CH8_POS 16
335#define MXC_F_MCR_ADC_CFG2_CH8 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH8_POS))
337#define MXC_F_MCR_ADC_CFG2_CH9_POS 18
338#define MXC_F_MCR_ADC_CFG2_CH9 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH9_POS))
340#define MXC_F_MCR_ADC_CFG2_CH10_POS 20
341#define MXC_F_MCR_ADC_CFG2_CH10 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH10_POS))
343#define MXC_F_MCR_ADC_CFG2_CH11_POS 22
344#define MXC_F_MCR_ADC_CFG2_CH11 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH11_POS))
346#define MXC_F_MCR_ADC_CFG2_CH12_POS 24
347#define MXC_F_MCR_ADC_CFG2_CH12 ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG2_CH12_POS))
357#define MXC_F_MCR_ADC_CFG3_VREFM_POS 0
358#define MXC_F_MCR_ADC_CFG3_VREFM ((uint32_t)(0x7FUL << MXC_F_MCR_ADC_CFG3_VREFM_POS))
360#define MXC_F_MCR_ADC_CFG3_VREFP_POS 8
361#define MXC_F_MCR_ADC_CFG3_VREFP ((uint32_t)(0x7FUL << MXC_F_MCR_ADC_CFG3_VREFP_POS))
363#define MXC_F_MCR_ADC_CFG3_IDRV_POS 16
364#define MXC_F_MCR_ADC_CFG3_IDRV ((uint32_t)(0xFUL << MXC_F_MCR_ADC_CFG3_IDRV_POS))
366#define MXC_F_MCR_ADC_CFG3_VCM_POS 20
367#define MXC_F_MCR_ADC_CFG3_VCM ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG3_VCM_POS))
369#define MXC_F_MCR_ADC_CFG3_ATB_POS 22
370#define MXC_F_MCR_ADC_CFG3_ATB ((uint32_t)(0x3UL << MXC_F_MCR_ADC_CFG3_ATB_POS))
372#define MXC_F_MCR_ADC_CFG3_D_IBOOST_POS 24
373#define MXC_F_MCR_ADC_CFG3_D_IBOOST ((uint32_t)(0x1UL << MXC_F_MCR_ADC_CFG3_D_IBOOST_POS))
377#ifdef __cplusplus
378}
379#endif
380
381#endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32672_INCLUDE_MCR_REGS_H_
__IO uint32_t aincomp
Definition: mcr_regs.h:80
__IO uint32_t pclkdis
Definition: mcr_regs.h:83
__IO uint32_t lppioctrl
Definition: mcr_regs.h:81
__IO uint32_t adc_cfg3
Definition: mcr_regs.h:89
__IO uint32_t adc_cfg0
Definition: mcr_regs.h:86
__IO uint32_t clkctrl
Definition: mcr_regs.h:79
__IO uint32_t rst
Definition: mcr_regs.h:78
__IO uint32_t aeskey
Definition: mcr_regs.h:85
__IO uint32_t adc_cfg2
Definition: mcr_regs.h:88
__IO uint32_t adc_cfg1
Definition: mcr_regs.h:87
Definition: mcr_regs.h:76