MAX32675 Peripheral Driver API
Peripheral Driver API for the MAX32675
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Modules
lp.h
1
6/******************************************************************************
7 *
8 * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by
9 * Analog Devices, Inc.),
10 * Copyright (C) 2023-2024 Analog Devices, Inc.
11 *
12 * Licensed under the Apache License, Version 2.0 (the "License");
13 * you may not use this file except in compliance with the License.
14 * You may obtain a copy of the License at
15 *
16 * http://www.apache.org/licenses/LICENSE-2.0
17 *
18 * Unless required by applicable law or agreed to in writing, software
19 * distributed under the License is distributed on an "AS IS" BASIS,
20 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 * See the License for the specific language governing permissions and
22 * limitations under the License.
23 *
24 ******************************************************************************/
25
26/* Define to prevent redundant inclusion */
27#ifndef LIBRARIES_PERIPHDRIVERS_INCLUDE_MAX32675_LP_H_
28#define LIBRARIES_PERIPHDRIVERS_INCLUDE_MAX32675_LP_H_
29
30/* **** Includes **** */
31#include <stdint.h>
32#include "pwrseq_regs.h"
33#include "mcr_regs.h"
34#include "gcr_regs.h"
35#include "gpio.h"
36#include "tmr.h"
37
38#ifdef __cplusplus
39extern "C" {
40#endif
41
51typedef enum {
56
61typedef enum {
62 MXC_LP_IPO = MXC_F_GCR_PM_IPO_PD,
63 MXC_LP_IBRO = MXC_F_GCR_PM_IBRO_PD,
64 MXC_LP_XRFO = MXC_F_GCR_PM_ERFO_PD
66
71
76
82
88
94
104
109
114
121
126
131
138
143
148
155
160
165
172
177
182
189
194
203
211
216
221
228
235
240
245
250
259
264
276
281
286
293
298
303
308
313
318
323
328
333
338
343
348
353
358
363
368
373
378
383
388
393
396#ifdef __cplusplus
397}
398#endif
399
400#endif // LIBRARIES_PERIPHDRIVERS_INCLUDE_MAX32675_LP_H_
Registers, Bit Masks and Bit Positions for the GCR Peripheral Module.
#define MXC_F_GCR_PM_IPO_PD
Definition: gcr_regs.h:352
#define MXC_F_GCR_PM_ERFO_PD
Definition: gcr_regs.h:349
#define MXC_F_GCR_PM_IBRO_PD
Definition: gcr_regs.h:355
#define MXC_S_PWRSEQ_LPCN_OVR_1_0V
Definition: pwrseq_regs.h:134
#define MXC_S_PWRSEQ_LPCN_OVR_1_1V
Definition: pwrseq_regs.h:136
#define MXC_S_PWRSEQ_LPCN_OVR_0_9V
Definition: pwrseq_regs.h:132
Structure type for configuring a GPIO port.
Definition: gpio.h:165
void MXC_LP_PORVCOREoreMonitorDisable(void)
Disable Power on Reset VDD Core Monitor.
void MXC_LP_SysRam3LightSleepEnable(void)
Enable System Ram 3 in light sleep.
void MXC_LP_SysRam3LightSleepDisable(void)
Disable System Ram 3 in light sleep.
void MXC_LP_FastWakeupDisable(void)
Disable Fast wakeup.
void MXC_LP_RetentionRegDisable(void)
Disable retention regulator.
void MXC_LP_BandgapOn(void)
Turn bandgap on.
void MXC_LP_EnableHA0Wakeup(void)
Enables the HA0 to wake up the device from any low power mode.
void MXC_LP_SysRam1Shutdown(void)
Shutdown System Ram 1.
int MXC_LP_LDOIsEnabled(void)
Is LDO enabled.
void MXC_LP_SysRam1PowerUp(void)
PowerUp System Ram 1.
int MXC_LP_FastWakeupIsEnabled(void)
Is Fast wake up is Enabled.
void MXC_LP_LDODisable(void)
Disable LDO.
void MXC_LP_EnableGPIOWakeup(mxc_gpio_cfg_t *wu_pins)
Enables the selected GPIO port and its selected pins to wake up the device from any low power mode....
void MXC_LP_EnableRTCAlarmWakeup(void)
Enables the RTC alarm to wake up the device from any low power mode.
mxc_lp_ovr_t
Enumeration type for voltage selection.
Definition: lp.h:51
void MXC_LP_FastWakeupEnable(void)
Enable Fast wakeup.
void MXC_LP_ICache0LightSleepEnable(void)
Enable Icache 0 in light sleep.
int MXC_LP_SetOVR(mxc_lp_ovr_t ovr)
Sets the operating voltage for the device. The caller must perform the peripheral reset after calling...
void MXC_LP_SysRam1LightSleepEnable(void)
Enable System Ram 1 in light sleep.
void MXC_LP_PORVCOREoreMonitorEnable(void)
Enable Power on Reset VDD Core Monitor.
void MXC_LP_SysRam3PowerUp(void)
PowerUp System Ram 3.
void MXC_LP_SysRam3Shutdown(void)
Shutdown System Ram 3.
void MXC_LP_SysRam2PowerUp(void)
PowerUp System Ram 2.
void MXC_LP_EnterBackupMode(void)
Places the device into BACKUP mode. CPU state is not maintained in this mode, so this function never ...
int MXC_LP_PORVCOREoreMonitorIsEnabled(void)
Is Power on Reset VDD Core Monitor enabled.
void MXC_LP_ClearWakeStatus(void)
clear all wake up status
void MXC_LP_DisableHA0Wakeup(void)
Disables the HA)0 from waking up the device.
void MXC_LP_RetentionRegEnable(void)
Enable retention regulator.
void MXC_LP_DisableTimerWakeup(mxc_tmr_regs_t *tmr)
Disables Timer from waking up device.
void MXC_LP_SysRam2LightSleepDisable(void)
Disable System Ram 2 in light sleep.
void MXC_LP_EnterDeepSleepMode(void)
Places the device into DEEPSLEEP mode. This function returns once an RTC or external interrupt occur.
void MXC_LP_BandgapOff(void)
Turn bandgap off.
void MXC_LP_SysRam0LightSleepDisable(void)
Disable System Ram 0 in light sleep.
void MXC_LP_DisableUSBWakeup(void)
Disables the USB from waking up the device.
void MXC_LP_DisableRTCAlarmWakeup(void)
Disables the RTC alarm from waking up the device.
void MXC_LP_EnterShutDownMode(void)
Places the device into Shutdown mode. CPU state is not maintained in this mode, so this function neve...
void MXC_LP_ROMLightSleepDisable(void)
Disable ROM 0 in light sleep.
void MXC_LP_NFCOscBypassDisable(void)
Disable NFC Oscilator Bypass.
int MXC_LP_NFCOscBypassIsEnabled(void)
Is NFC Oscilator Bypass Enabled.
void MXC_LP_EnableTimerWakeup(mxc_tmr_regs_t *tmr)
Enables Timer to wakeup from any low power mode.
void MXC_LP_DisableHA1Wakeup(void)
Disables the HA1 from waking up the device.
void MXC_LP_DisableGPIOWakeup(mxc_gpio_cfg_t *wu_pins)
Disables the selected GPIO port and its selected pins as a wake up source. Call this function multipl...
void MXC_LP_SysRam2LightSleepEnable(void)
Enable System Ram 2 in light sleep.
void MXC_LP_SysRam0LightSleepEnable(void)
Enable System Ram 0 in light sleep.
void MXC_LP_ROMLightSleepEnable(void)
Enable ROM 0 in light sleep.
int MXC_LP_RetentionRegIsEnabled(void)
Is the retention regulator enabled.
void MXC_LP_EnableHA1Wakeup(void)
Enables the HA1 to wake up the device from any low power mode.
void MXC_LP_LDOEnable(void)
Enable LDO.
mxc_lp_cfg_ds_pd_t
Enumeration type for PM Mode.
Definition: lp.h:61
void MXC_LP_NFCOscBypassEnable(void)
Enable NFC Oscilator Bypass.
int MXC_LP_ConfigDeepSleepClocks(uint32_t mask)
Configure which clocks are powered down at deep sleep and which are not affected.
void MXC_LP_EnterSleepMode(void)
Places the device into SLEEP mode. This function returns once an RTC or external interrupt occur.
void MXC_LP_SysRam1LightSleepDisable(void)
Disable System Ram 1 in light sleep.
void MXC_LP_ICache0LightSleepDisable(void)
Disable Icache 0 in light sleep.
void MXC_LP_SysRam0PowerUp(void)
Wakeup System Ram 0.
void MXC_LP_EnterStorageMode(void)
Places the device into Storage mode. CPU state is not maintained in this mode, so this function never...
void MXC_LP_EnableUSBWakeup(void)
Enables the USB to wake up the device from any low power mode.
void MXC_LP_SysRam0Shutdown(void)
Shutdown System Ram 0.
int MXC_LP_BandgapIsOn(void)
Is the bandgap on or off.
void MXC_LP_SysRam2Shutdown(void)
Shutdown System Ram 2.
@ MXC_LP_OVR_1_1
Definition: lp.h:54
@ MXC_LP_OVR_1_0
Definition: lp.h:53
@ MXC_LP_OVR_0_9
Definition: lp.h:52
Definition: tmr_regs.h:76
Registers, Bit Masks and Bit Positions for the MCR Peripheral Module.
Registers, Bit Masks and Bit Positions for the PWRSEQ Peripheral Module.