windmill
windmill

Reputation: 11

stm32 stop mode power consumption

I'm trying to program the STM32L051 MCU to enter stop mode and measure it's current consumption. As far as I can understand I see from it's data sheet that it should theoretically consume 0.4uA in that state.

My aim is to wake it up from external EXTI interrupt, to achieve this I configured from CubeMX pins as GPIO_EXTI. In main I added HAL_GPIO_EXTI_Callback(uint16 GPIO_Pin):

In my main function I added the code to enter stop mode.

What I get is a current consumption of 90uA, that is quite far from the 0.4uA written in the data sheet.

It would be awesome if someone kindly can give me some advice about this problem. Thank you

code as below

void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin){
  SystemClock_Config();
  HAL_ResumeTick();
}

in the main function I added:

 HAL_SuspendTick();
 HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);

Upvotes: 1

Views: 830

Answers (1)

0___________
0___________

Reputation: 67546

What I get is a current consumption of 90uA, that is quite far from the 0.4uA written in the data sheet.

It is only uC. 90uA is not bad as your board is consuming the power too. To minimize the consumption your board has to be designed specifically having it in mind - and it is not an easy task.

Also the uC has to be prepared to enter the mode - ie pins set to the minimum consumption, peripherals and clocks disabled/suspended etc. You will not archive it by calling one HAL function.

Upvotes: 1

Related Questions