5

On ATmega328P there is a CKDIV8 fuse bit that when programmed divides clock by 8.

I'm wondering if the power consumption is equal on these two setups:

  • micro with 8MHz external crystal and CKDIV8 fuse bit programmed
  • micro with 1MHz external crystal and CKDIV8 fuse bit not programmed

In both cases I get 1MHz clock which is sufficient for my application. The reason is I can't find any cheap 1MHz crystals, for some reason they are incredibly expensive $15+ Digikey Store 1MHz crystals. Comparing to 8MHz crystals with better ppm (+/- 10ppm) for less than $0.50 Digikey Store 8MHz crystals

Darkhan
  • 293
  • 3
  • 9
  • "... CKDIV8 fuse bit that when programmed divides clock by 8." This is not quite true. It merely causes the prescaler to start at /8 on reset instead of /1. – Ignacio Vazquez-Abrams Aug 26 '14 at 19:42
  • @IgnacioVazquez-Abrams I guess you're right. What I meant is you get Fosc/8 clock frequency in the end to work with – Darkhan Aug 26 '14 at 19:45

3 Answers3

1

The datasheet has a graph that shows the standby current at different clock frequencies and supply voltages.

The difference is around 160uA. So yes, it consumes slightly more power, but the difference is much smaller than the difference of running the MCU at 1MHz or 8MHz.

jeroen74
  • 138
  • 4
  • The OP is not mentioning low power modes so the question seems to relate to the active supply current. Its not clear to me what you are comparing, where do the 160uA come from? "it consumes slightly more power" when exactly? (that internal clock frequency matters is obvious) – Rev Aug 27 '14 at 07:40
  • By looking at the standby power figures you can deduce more or less what the power consumption is of the circuit (crystal oscillator and prescaler) that feeds the prescaler at the different input frequencies. Running this circuit at a higher frequency increases total consumption, by ~160uA compared to feeding the MCU 1MHz with no prescaling. From a power consumption point of view, it's slightly more efficient to use no prescaling. – jeroen74 Aug 27 '14 at 07:51
  • OK, sou you point out that in stand-by (where only the Oscillator is kept running) the power consumption increases by about 160uA just because of the higher external frequency, while the system clock is halted. OP probably asks about active mode, but you have a point that it may translate to that (even if 160uA are more or less neglectable during active). – Rev Aug 27 '14 at 08:12
0

It's possible that lowering your clock wouldn't give you a lower consumption. It depends on how heavy your peripheral use is. If it were to be only the CPU, you would be doing the same work in less time, so perhaps the consumption is lower at 8 MHz, provided you use your power saving modes wisely. But if you're using peripherals that need to be constantly running (e.g. counters) or if you don't use sleeps modes at all (i.e. do idle loops instead) you'll probably benefit from a slower clock.

Guillermo Prandi
  • 897
  • 1
  • 10
  • 24
0

I'm wondering if the power consumption is equal on these two setups

The CKDIV8 Fuse determines the initial value of the CLKPS bits. These bits just define the division factor between the selected clock source and the internal system clock. The power consumption is (almost) proportional to the internal system clock, not the clock source frequency. So we can ignore this factor.

It seems to make a small difference if the clock source fuses are set to either "Full Swing Crystal Oscillator" or "Low Frequency Crystal Oscillator". However, the data sheet diagrams do not allow a good comparison.
Further (as jeroen74 pointed out), the oscillator circuit may require slightly more power with increasing frequency (about 150uA from 1MHz to 8MHz). But the data sheet values refer to the standby characteristics, so its not clear if that translates to the active mode. If that is the case, it is clearly relevant with respect to the 900uA active supply current (@5V).

Rev
  • 10,017
  • 7
  • 40
  • 77