LPC1857 Performance Power consumption

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LPC1857 Performance Power consumption

1,082 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by nesrine on Wed Feb 25 08:36:36 MST 2015
Hi,
i work with Keil MCB1857
in your datasheet you said that when running from SRAM, the LPC1857 consume 74mA on 180MHz, (all peripherals disabled) i try this and don't found 74mA but i found 92mA :exmark:  :exmark:
i use this function to optimise power
void Optimize_Power(void){

// Disable all peripheral clocks
LPC_CGU->BASE_SAFE_CLK |=(1<<0);
LPC_CGU->BASE_USB0_CLK |= (1<<0);
LPC_CGU->BASE_USB1_CLK |= (1<<0);
LPC_CGU->BASE_SPIFI_CLK |= (1<<0);
LPC_CGU->BASE_PHY_RX_CLK |= (1<<0);
LPC_CGU->BASE_PHY_TX_CLK |= (1<<0);
LPC_CGU->BASE_APB1_CLK|= (1<<0);
LPC_CGU->BASE_APB3_CLK|= (1<<0);
  LPC_CGU->BASE_LCD_CLK |= (1<<0);
LPC_CGU->BASE_SDIO_CLK|= (1<<0);
LPC_CGU->BASE_SSP0_CLK|= (1<<0);
LPC_CGU->BASE_SSP1_CLK|= (1<<0);
LPC_CGU->BASE_UART0_CLK|= (1<<0);
LPC_CGU->BASE_UART1_CLK|= (1<<0);
LPC_CGU->BASE_UART2_CLK|= (1<<0);
LPC_CGU->BASE_UART3_CLK|= (1<<0);// UART3 stays on for GUI
LPC_CGU->BASE_CGU_OUT0_CLK|= (1<<0);
LPC_CGU->BASE_CGU_OUT1_CLK|= (1<<0);
LPC_CGU->BASE_APLL_CLK|= (1<<0);

//// Power down M3 branches
////Chip_Clock_Disable(CLK_MX_FLASHA);// Keep flash on!
////Chip_Clock_Disable(CLK_MX_FLASHB);// Keep flash on!
/* Stop peripheral clock */
LPC_CCU1->CLK_M3_SPIFI_CFG &= ~1;
LPC_CCU1->CLK_M3_GPIO_CFG &= ~1;
    LPC_CCU1->CLK_M3_LCD_CFG &= ~1;
LPC_CCU1->CLK_M3_ETHERNET_CFG &= ~1;
    LPC_CCU1->CLK_M3_USB0_CFG &= ~1;
    LPC_CCU1->CLK_M3_EMC_CFG&= ~1;
    LPC_CCU1->CLK_M3_DMA_CFG &= ~1;
LPC_CCU1->CLK_M3_SCT_CFG &= ~1;
LPC_CCU1->CLK_M3_USB1_CFG &= ~1;
LPC_CCU1->CLK_M3_WWDT_CFG &= ~1;
LPC_CCU1->CLK_M3_USART0_CFG &= ~1;
LPC_CCU1->CLK_M3_UART1_CFG &= ~1;
LPC_CCU1->CLK_M3_SSP0_CFG &= ~1;
LPC_CCU1->CLK_M3_TIMER0_CFG &= ~1;
LPC_CCU1->CLK_M3_TIMER1_CFG &= ~1;
LPC_CCU1->CLK_M3_RITIMER_CFG &= ~1;
    LPC_CCU1->CLK_M3_USART2_CFG &= ~1;
LPC_CCU1->CLK_M3_TIMER2_CFG &= ~1;
LPC_CCU1->CLK_M3_TIMER3_CFG &= ~1;
LPC_CCU1->CLK_M3_SSP1_CFG &= ~1;
LPC_CCU1->CLK_M3_QEI_CFG &= ~1;
LPC_CCU1->CLK_M3_USART3_CFG&= ~1;
////Chip_Clock_Disable(CLK_MX_EMC_DIV);// Keep EMC on for pre-sleep/power down functions
//Chip_Clock_Disable(CLK_MX_EEPROM);
////Chip_Clock_Disable(CLK_MX_SCU);// Can't turn off SCU!

LPC_CREG->CREG0 |= ((3<<12)|(3<<6));
}


Labels (1)
0 Kudos
Reply
3 Replies

993 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by nerd herd on Wed Feb 25 10:36:00 MST 2015
Hi nesrine,

Did you try to make the edits I mentioned? I took the LPC1800 low power AN code for Keil, and turned off the things I mentioned in my previous post (leaving flash on) and I get 78.9 mA current consumption.
0 Kudos
Reply

993 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by nesrine on Wed Feb 25 09:10:11 MST 2015
Hi,
my code execute from flash so I can't turn off the flash!!
and i dont think that keeping the UART3 active weel consume 20mA
0 Kudos
Reply

993 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by nerd herd on Wed Feb 25 08:49:00 MST 2015
Hi nesrine,

I don't have a Keil MCB1800 board to test with at the moment, but I noticed you are using a function from the LPC1800 (with Flash) Low Power AN. To be clear, that function does not turn off everything as there were things needed to be on for the AN to work the way it did. In your case, you should try turning off UART3 (which it looks like you do), both flash banks, EMC, and EEPROM.

If this does not get your desired current, please reply with your exact hardware setup (how you are measuring current consumption), and what software example you are using.
0 Kudos
Reply