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.
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.