This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

High current during WFE with nRF52832

I measure 184 uA of current during WFE. I've read in other posts that the nRF52832 should draw about 1.2 uA during WFE.

I've looked over the project settings many times and everything looks correct. I created a very basic firmware to investigate

this issue, which is posted below. Any help is greatly appreciated.

Nordic SDK:  15.3.0

SES v4.22

Hardware is nRF52 DK

Preprocessor definitions:

NO_FPU_ENABLE

FLOAT_ABI_SOFT

INITIALIZE_USER_SECTIONS

NO_VTOR_CONFIG

NRF52

NRF52832_XXAA

NRF52_PAN_74

Code:

#include <stdbool.h>
#include <stdint.h>
#include <string.h>
#include "nrf.h"
#include "nrf_delay.h"
#include "nrf_gpio.h"

#define LED_1 17


void clocks_start( void )
{
// Start HFCLK and wait for it to start.
 NRF_CLOCK->EVENTS_HFCLKSTARTED = 0;
 NRF_CLOCK->TASKS_HFCLKSTART = 1;
 while (NRF_CLOCK->EVENTS_HFCLKSTARTED == 0);
 nrf_delay_ms(1);
}


void gpio_init( void )
{
 nrf_gpio_cfg_output(LED_1);

}


int main(void)
{
 clocks_start();
 gpio_init();


 while (true)
 {
  nrf_delay_ms(2000);
  __WFE();

 }
}

Parents Reply
  • I suggest you to read this chapter to better understand how clock controller works.

    You need to start external HFCLK only when high-precision clocking is necessary - mainly for radio. It has longer startup time compared with internal clock and high power consumption during startup, so starting and stopping it on WFE is not a good idea. Internal oscillator is started and stopped automatically, and is suitable for most tasks that do not require precise timings.

Children
No Data
Related