Page 1 of 1
Power saving mode
Posted: Sat Jan 10, 2026 9:57 pm
by TheShadowOfTriumph
Hi everyone.
I'm currently building a battery-powered device, so it's only natural that I started exploring STOP MODE. Due to issues with the buttons in the simulator (they don't trigger the EXTI interrupt), I wanted to create a component with multiple checkboxes to indicate which STM32 blocks can be turned off and which events trigger the wake-up.
I believe this feature will be important and useful for use with various battery-powered devices.
Re: Power saving mode
Posted: Tue Jan 13, 2026 4:40 am
by chipfryer27
Hi
Further to a previous reply I changed the target to a 32F030Nucleo64 and can simulate the interrupt. Which target are you using?
Regards
Re: Power saving mode
Posted: Fri Jan 16, 2026 1:32 am
by TheShadowOfTriumph
The update arrived now and the program works. I don't want to roll back.
The target is STM32F030F4P6.
Now, how about the STOP MODE?
Re: Power saving mode
Posted: Fri Jan 16, 2026 11:25 am
by BenR
Hello,
You could try calling these using a C icon.
Code: Select all
HAL_SuspendTick();
HAL_PWREx_EnterSTOP0Mode(PWR_SLEEPENTRY_WFI);
Some information on it here.
https://deepbluembedded.com/stm32-stop- ... op1-stop2/
Re: Power saving mode
Posted: Thu Feb 05, 2026 1:48 am
by TheShadowOfTriumph
After entering in STOP0, EXTI interrupt block is still working?
Re: Power saving mode
Posted: Thu Feb 05, 2026 4:32 pm
by LeighM
Here's a target demo ...
Note, this won't simulate
Re: Power saving mode
Posted: Sat Feb 07, 2026 4:04 pm
by LeighM
This is the C icon code from the demo, it also compiles OK on 32F030,
I don't have 030 hardware to test it, although it worked fine on 411 so should also work on 030
Hope it helps
Code: Select all
// Example to enter Stop Mode
HAL_SuspendTick(); // Stop SysTick to prevent immediate wakeup
HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
// NOW STOPPED
// WAKES HERE ON INTERRUPT (EXTI)
SystemClocksSetup(); // Resume high speed mode
HAL_ResumeTick(); // Resume SysTick