This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Power reduction in stellaris controller



hi,

         I have been using Stellaris LM4F112E5 micro controller. My code size is 46K Flash and 9K SRAM. In my code, I have put while(1) after SysCtlClockSet(), i.e. I am not using any code and not initialize any internal modules. I have kept system clock to 16MHz. I am doing this to check how much current; controller takes in minimum operating condition. At this condition it takes 21mA. There is no any other peripherals on the board which can consume current. My question is, why controller is taking this much current, as controller is not using any internal peripherals and not doing any operation?  Is there any relation of flash size and power consumption? Is there any ways to reduce power consumption, apart from sleep mode.?

  • Hey Vivek,

    That reading sounds about right for the LM4F112E5.  If you take a look at the datasheet for that controller, section 22.17 describes the typical current consumption for various circumstances.  The nominal consumption when running out of flash with no peripherals at 80 MHz is about 30 mA, so it sounds reasonable that you'd be seeing 21 mA if you're running at 16 MHz.

    As to your questions, the controller is still using a non-zero amount of current because it is still executing instructions.  Even if you don't have any peripherals powered on, sitting in a while(1); without sleep, deep sleep, or hibernate enabled still requires the processor to be running and executing instructions on each tick of the system clock.

    Really, the best way to reduce power consumption is to enable sleep, deep sleep, or hibernate when appropriate in software.  Aside from those options, it's not going to be possible to decrease your power consumption much below the figures listed in the power consumption section of the chip's datasheet.