Prusa MINI Firmware overview
Collaboration diagram for LOW POWER MODE:

Functions

__STATIC_INLINE void LL_LPM_EnableSleep (void)
 Processor uses sleep as its low power mode @rmtoll SCB_SCR SLEEPDEEP LL_LPM_EnableSleep. More...
 
__STATIC_INLINE void LL_LPM_EnableDeepSleep (void)
 Processor uses deep sleep as its low power mode @rmtoll SCB_SCR SLEEPDEEP LL_LPM_EnableDeepSleep. More...
 
__STATIC_INLINE void LL_LPM_EnableSleepOnExit (void)
 Configures sleep-on-exit when returning from Handler mode to Thread mode. More...
 
__STATIC_INLINE void LL_LPM_DisableSleepOnExit (void)
 Do not sleep when returning to Thread mode. @rmtoll SCB_SCR SLEEPONEXIT LL_LPM_DisableSleepOnExit. More...
 
__STATIC_INLINE void LL_LPM_EnableEventOnPend (void)
 Enabled events and all interrupts, including disabled interrupts, can wakeup the processor. @rmtoll SCB_SCR SEVEONPEND LL_LPM_EnableEventOnPend. More...
 
__STATIC_INLINE void LL_LPM_DisableEventOnPend (void)
 Only enabled interrupts or events can wakeup the processor, disabled interrupts are excluded @rmtoll SCB_SCR SEVEONPEND LL_LPM_DisableEventOnPend. More...
 

Detailed Description

Function Documentation

◆ LL_LPM_EnableSleep()

__STATIC_INLINE void LL_LPM_EnableSleep ( void  )

Processor uses sleep as its low power mode @rmtoll SCB_SCR SLEEPDEEP LL_LPM_EnableSleep.

Return values
None
328 {
329  /* Clear SLEEPDEEP bit of Cortex System Control Register */
330  CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk));
331 }

◆ LL_LPM_EnableDeepSleep()

__STATIC_INLINE void LL_LPM_EnableDeepSleep ( void  )

Processor uses deep sleep as its low power mode @rmtoll SCB_SCR SLEEPDEEP LL_LPM_EnableDeepSleep.

Return values
None
339 {
340  /* Set SLEEPDEEP bit of Cortex System Control Register */
341  SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPDEEP_Msk));
342 }

◆ LL_LPM_EnableSleepOnExit()

__STATIC_INLINE void LL_LPM_EnableSleepOnExit ( void  )

Configures sleep-on-exit when returning from Handler mode to Thread mode.

Note
Setting this bit to 1 enables an interrupt-driven application to avoid returning to an empty main application. @rmtoll SCB_SCR SLEEPONEXIT LL_LPM_EnableSleepOnExit
Return values
None
352 {
353  /* Set SLEEPONEXIT bit of Cortex System Control Register */
354  SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPONEXIT_Msk));
355 }

◆ LL_LPM_DisableSleepOnExit()

__STATIC_INLINE void LL_LPM_DisableSleepOnExit ( void  )

Do not sleep when returning to Thread mode. @rmtoll SCB_SCR SLEEPONEXIT LL_LPM_DisableSleepOnExit.

Return values
None
363 {
364  /* Clear SLEEPONEXIT bit of Cortex System Control Register */
365  CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SLEEPONEXIT_Msk));
366 }

◆ LL_LPM_EnableEventOnPend()

__STATIC_INLINE void LL_LPM_EnableEventOnPend ( void  )

Enabled events and all interrupts, including disabled interrupts, can wakeup the processor. @rmtoll SCB_SCR SEVEONPEND LL_LPM_EnableEventOnPend.

Return values
None
375 {
376  /* Set SEVEONPEND bit of Cortex System Control Register */
377  SET_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SEVONPEND_Msk));
378 }

◆ LL_LPM_DisableEventOnPend()

__STATIC_INLINE void LL_LPM_DisableEventOnPend ( void  )

Only enabled interrupts or events can wakeup the processor, disabled interrupts are excluded @rmtoll SCB_SCR SEVEONPEND LL_LPM_DisableEventOnPend.

Return values
None
387 {
388  /* Clear SEVEONPEND bit of Cortex System Control Register */
389  CLEAR_BIT(SCB->SCR, ((uint32_t)SCB_SCR_SEVONPEND_Msk));
390 }