Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

uC with FLASH memory (SPI) - High current consumption in SLEEP mode

Status
Not open for further replies.

nickagian

Member level 4
Joined
Mar 19, 2009
Messages
71
Helped
2
Reputation
4
Reaction score
2
Trophy points
1,288
Location
Zurich, Switzerland
Activity points
2,001
I am using the EM250 module from Ember and a SPI Flash memory from micron-numonyx (M25P128) connected to it. The memory is used to save data taken from several sensors. The system stays in sleep mode most of the time, except for the sampling periods. The power supply of the memory is controlled by the EM250 by using an external power switch (one of the two included in TPS2042B).

Originally, I planed to turn-off the power supply of the memory during sleep periods, to save energy. However, when I constructed the circuit I am facing some problems and the power consumption is higher than theoretically expected.

All relevant GPIOs of the processor are the following:
GPIO0-MOSI, GPIO1-MISO, GPIO2-SCLK, GPIO3-CS#, GPIO15-controls the power switch

The first three are controlled by the integrated SPI serial controller SC1 of the EM250, however during sleep mode these pins are automatically configured as GPIOs and released by the controller SC1.

TEST #1: I first tested the system as theoretically designed. During sleep GPIO15 is set HIGH, which turns the relevant power switch of TPS2042B off. However, the current consumption of the EM250 and the total consumption of the PCB was ~3.5mA!!!!!

TEST #2: I guessed that the SPI bus pins, when the memory is turned-off, draw or sink current and thus the consumption of EM250 also increases. So at next test, during SLEEP I leave the power supply of the memory on. The current consumption is around 700-800uA for the PCB and 600-700uA for the EM250 (the difference is obviously the memory's consumption).

TEST #3: I completely removed the memory from the PCB and this time the consumption is around 200uA and below.

For all tests, during sleep I do the following settings:
GPIO0, GPIO1 and GPIO3: INPUT direction with internal pull-up, GPIO2 : INPUT direction with internal pull-down

Can anyone help me with this problem? How can I even reduce the current consumption? I feel that I will not be able to even go close to the 4uA that the datasheet says the EM250 draws during SLEEP. Even in test #3, with the memory off (which is something that doesn't fit my needs) the consumption is very high. Of course, this may be caused by other peripherals connected to the processor.
 

To put it otherwise... in what state should I put the pins that connect the uC with the flash memory during sleep to achieve the lowest possible current consumption? I keep these pins to inputs with pull-ups at MISO/MOSI lines and pull-down at the SCLK and CS# line, but I cannot achieve the lowest possible current consumption of the uC. And the same problem is encountered for the pins that connect the uC with the FTDI FT232 chip.

Can anyone help me please with this?
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top