MAX32660 Peripheral Driver API
Peripheral Driver API for the MAX32660
rtc_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_MAX32660_INCLUDE_RTC_REGS_H_
29#define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32660_INCLUDE_RTC_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 __IO uint32_t sec;
78 __IO uint32_t ssec;
79 __IO uint32_t ras;
80 __IO uint32_t rssa;
81 __IO uint32_t ctrl;
82 __IO uint32_t trim;
83 __IO uint32_t oscctrl;
85
86/* Register offsets for module RTC */
93#define MXC_R_RTC_SEC ((uint32_t)0x00000000UL)
94#define MXC_R_RTC_SSEC ((uint32_t)0x00000004UL)
95#define MXC_R_RTC_RAS ((uint32_t)0x00000008UL)
96#define MXC_R_RTC_RSSA ((uint32_t)0x0000000CUL)
97#define MXC_R_RTC_CTRL ((uint32_t)0x00000010UL)
98#define MXC_R_RTC_TRIM ((uint32_t)0x00000014UL)
99#define MXC_R_RTC_OSCCTRL ((uint32_t)0x00000018UL)
108#define MXC_F_RTC_SEC_SEC_POS 0
109#define MXC_F_RTC_SEC_SEC ((uint32_t)(0xFFFFFFFFUL << MXC_F_RTC_SEC_SEC_POS))
120#define MXC_F_RTC_SSEC_RTSS_POS 0
121#define MXC_F_RTC_SSEC_RTSS ((uint32_t)(0xFFUL << MXC_F_RTC_SSEC_RTSS_POS))
131#define MXC_F_RTC_RAS_RAS_POS 0
132#define MXC_F_RTC_RAS_RAS ((uint32_t)(0xFFFFFUL << MXC_F_RTC_RAS_RAS_POS))
143#define MXC_F_RTC_RSSA_RSSA_POS 0
144#define MXC_F_RTC_RSSA_RSSA ((uint32_t)(0xFFFFFFFFUL << MXC_F_RTC_RSSA_RSSA_POS))
154#define MXC_F_RTC_CTRL_RTCE_POS 0
155#define MXC_F_RTC_CTRL_RTCE ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_RTCE_POS))
157#define MXC_F_RTC_CTRL_ADE_POS 1
158#define MXC_F_RTC_CTRL_ADE ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_ADE_POS))
160#define MXC_F_RTC_CTRL_ASE_POS 2
161#define MXC_F_RTC_CTRL_ASE ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_ASE_POS))
163#define MXC_F_RTC_CTRL_BUSY_POS 3
164#define MXC_F_RTC_CTRL_BUSY ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_BUSY_POS))
166#define MXC_F_RTC_CTRL_RDY_POS 4
167#define MXC_F_RTC_CTRL_RDY ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_RDY_POS))
169#define MXC_F_RTC_CTRL_RDYE_POS 5
170#define MXC_F_RTC_CTRL_RDYE ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_RDYE_POS))
172#define MXC_F_RTC_CTRL_ALDF_POS 6
173#define MXC_F_RTC_CTRL_ALDF ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_ALDF_POS))
175#define MXC_F_RTC_CTRL_ALSF_POS 7
176#define MXC_F_RTC_CTRL_ALSF ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_ALSF_POS))
178#define MXC_F_RTC_CTRL_SQE_POS 8
179#define MXC_F_RTC_CTRL_SQE ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_SQE_POS))
181#define MXC_F_RTC_CTRL_FT_POS 9
182#define MXC_F_RTC_CTRL_FT ((uint32_t)(0x3UL << MXC_F_RTC_CTRL_FT_POS))
183#define MXC_V_RTC_CTRL_FT_FREQ1HZ ((uint32_t)0x0UL)
184#define MXC_S_RTC_CTRL_FT_FREQ1HZ (MXC_V_RTC_CTRL_FT_FREQ1HZ << MXC_F_RTC_CTRL_FT_POS)
185#define MXC_V_RTC_CTRL_FT_FREQ512HZ ((uint32_t)0x1UL)
186#define MXC_S_RTC_CTRL_FT_FREQ512HZ (MXC_V_RTC_CTRL_FT_FREQ512HZ << MXC_F_RTC_CTRL_FT_POS)
187#define MXC_V_RTC_CTRL_FT_FREQ4KHZ ((uint32_t)0x2UL)
188#define MXC_S_RTC_CTRL_FT_FREQ4KHZ (MXC_V_RTC_CTRL_FT_FREQ4KHZ << MXC_F_RTC_CTRL_FT_POS)
189#define MXC_V_RTC_CTRL_FT_CLKDIV8 ((uint32_t)0x3UL)
190#define MXC_S_RTC_CTRL_FT_CLKDIV8 (MXC_V_RTC_CTRL_FT_CLKDIV8 << MXC_F_RTC_CTRL_FT_POS)
192#define MXC_F_RTC_CTRL_X32KMD_POS 11
193#define MXC_F_RTC_CTRL_X32KMD ((uint32_t)(0x3UL << MXC_F_RTC_CTRL_X32KMD_POS))
194#define MXC_V_RTC_CTRL_X32KMD_NOISEIMMUNEMODE ((uint32_t)0x0UL)
195#define MXC_S_RTC_CTRL_X32KMD_NOISEIMMUNEMODE (MXC_V_RTC_CTRL_X32KMD_NOISEIMMUNEMODE << MXC_F_RTC_CTRL_X32KMD_POS)
196#define MXC_V_RTC_CTRL_X32KMD_QUIETMODE ((uint32_t)0x1UL)
197#define MXC_S_RTC_CTRL_X32KMD_QUIETMODE (MXC_V_RTC_CTRL_X32KMD_QUIETMODE << MXC_F_RTC_CTRL_X32KMD_POS)
198#define MXC_V_RTC_CTRL_X32KMD_QUIETINSTOPWITHWARMUP ((uint32_t)0x2UL)
199#define MXC_S_RTC_CTRL_X32KMD_QUIETINSTOPWITHWARMUP (MXC_V_RTC_CTRL_X32KMD_QUIETINSTOPWITHWARMUP << MXC_F_RTC_CTRL_X32KMD_POS)
200#define MXC_V_RTC_CTRL_X32KMD_QUIETINSTOPNOWARMUP ((uint32_t)0x3UL)
201#define MXC_S_RTC_CTRL_X32KMD_QUIETINSTOPNOWARMUP (MXC_V_RTC_CTRL_X32KMD_QUIETINSTOPNOWARMUP << MXC_F_RTC_CTRL_X32KMD_POS)
203#define MXC_F_RTC_CTRL_WE_POS 15
204#define MXC_F_RTC_CTRL_WE ((uint32_t)(0x1UL << MXC_F_RTC_CTRL_WE_POS))
214#define MXC_F_RTC_TRIM_TRIM_POS 0
215#define MXC_F_RTC_TRIM_TRIM ((uint32_t)(0xFFUL << MXC_F_RTC_TRIM_TRIM_POS))
217#define MXC_F_RTC_TRIM_VBATTMR_POS 8
218#define MXC_F_RTC_TRIM_VBATTMR ((uint32_t)(0xFFFFFFUL << MXC_F_RTC_TRIM_VBATTMR_POS))
228#define MXC_F_RTC_OSCCTRL_FLITER_EN_POS 0
229#define MXC_F_RTC_OSCCTRL_FLITER_EN ((uint32_t)(0x1UL << MXC_F_RTC_OSCCTRL_FLITER_EN_POS))
231#define MXC_F_RTC_OSCCTRL_IBIAS_SEL_POS 1
232#define MXC_F_RTC_OSCCTRL_IBIAS_SEL ((uint32_t)(0x1UL << MXC_F_RTC_OSCCTRL_IBIAS_SEL_POS))
234#define MXC_F_RTC_OSCCTRL_HYST_EN_POS 2
235#define MXC_F_RTC_OSCCTRL_HYST_EN ((uint32_t)(0x1UL << MXC_F_RTC_OSCCTRL_HYST_EN_POS))
237#define MXC_F_RTC_OSCCTRL_IBIAS_EN_POS 3
238#define MXC_F_RTC_OSCCTRL_IBIAS_EN ((uint32_t)(0x1UL << MXC_F_RTC_OSCCTRL_IBIAS_EN_POS))
240#define MXC_F_RTC_OSCCTRL_BYPASS_POS 4
241#define MXC_F_RTC_OSCCTRL_BYPASS ((uint32_t)(0x1UL << MXC_F_RTC_OSCCTRL_BYPASS_POS))
243#define MXC_F_RTC_OSCCTRL_OUT32K_POS 5
244#define MXC_F_RTC_OSCCTRL_OUT32K ((uint32_t)(0x1UL << MXC_F_RTC_OSCCTRL_OUT32K_POS))
248#ifdef __cplusplus
249}
250#endif
251
252#endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32660_INCLUDE_RTC_REGS_H_
__IO uint32_t ras
Definition: rtc_regs.h:79
__IO uint32_t rssa
Definition: rtc_regs.h:80
__IO uint32_t sec
Definition: rtc_regs.h:77
__IO uint32_t ctrl
Definition: rtc_regs.h:81
__IO uint32_t oscctrl
Definition: rtc_regs.h:83
__IO uint32_t trim
Definition: rtc_regs.h:82
__IO uint32_t ssec
Definition: rtc_regs.h:78
Definition: rtc_regs.h:76