ATmega8515 power consumption

Feb 15, 2006 16 Replies

I am struggling to get the power consumption of sensor device down. According to the datasheet (page 208, top graph), the ATmega8515 I use, uses slightly less than 1mA @ 3.3V and 1MHz internal clock while active. But I measure around 2.3mA. Even when I stop all I/O and go into an endless loop, it still uses 2.1mA. Is Atmel showing off here or am I missing something?



Meindert


Did you hi-z all the GPIOs? Did you measure current into Vcc pin _and_ current out of Vss pin?

uses

I

loop,

Yes, in fact, I disconnected ALL I/O's and enabled ALL pull-ups. So the only active circuits where the VCC and GND connected to the power supply and one pull-up resistor to the RST input. I'd call this a completely isolated AVR.

No but the Vss and Vss (GND) where the only connected pins, together with the 10k pull up in RST.

Meindert

Any timers running? Worthwhile going down the peripherals list and making sure everything is switched off.

Brownout detection enabled? Try turning it off.

only

one

AVR.

No timers, just one external interrupt, but I tested with interrupts disabled.

Makes no difference.

Meindert

[snip]
[snip]

If you "enabled ALL pull-ups" then it's not isolated. Each input pin held at

0V will source nearly 0.1mA at vcc=3.3.

Peter

at

I wrote "Yes, in fact, I disconnected ALL I/O's and enabled ALL pull-ups". Take that literally. I cut away all components on the board, leaving just the power supply and the processor. So there is nothing left to pull a pin down.

Meindert

Starting to scrape the bottom of the barrel for answers here... but did you program $FF into all the output latches (even for pins config'd as input)?

pull-ups".

just

pin

Yes, that is what I meant with "enabled ALL pull-ups" ;-)

Meindert

My bet would be on a peripheral that isn't disabled.

For the 8515 (pre-mega), Dave vanHorn has some resources here as a starting point to initialize all the peripherals:

formatting link

Or perhaps running the code in AVR Studio to see if the peripheral registers are all getting disabled. (The emulator's not foolproof, of course, but it creates its share of "aha!" moments.)

Richard

Yes, you should disable pull-ups.

But it's the internal pull-ups that count.

held

pull-ups".

just

pin

Yes, but with floating pins, you have to enable the internal pull-ups, which will not contribute to the current consumption then.

Meindert

Try an external SqWave Clock of 1Mhz, and see if that matches the External Clock curves. That will tell you if the core is higher, if the RC osc is higher. Try more than one device. These curves are 'typical' , not maximums :)

-jg

"Meindert Sprang" schreef in bericht news: snipped-for-privacy@corp.supernews.com...

Silly question perhaps, did you check the meter ?

Thanks, Frank. (remove 'q' and '.invalid' when replying by email)

"Frank Bemelman" schreef in bericht news:43f44074$0$8268$ snipped-for-privacy@dreader30.news.xs4all.nl...

Another silly idea... feed the chip through a 100 ohm resistor, and put a nice cap between VCC and GND. Measure the voltage over the resistor. Perhaps your meter gets upset by noise or something other strange phenomena.

Thanks, Frank. (remove 'q' and '.invalid' when replying by email)

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required