Electronic – Internal RC clock on Atmega329 accuracy

atmelmicrocontroller

I'm working on a project that uses a Atmega329 with a 2 digit lcd 7 segment display. It needs to keep track of days, using a small coin cell battery.

I originally planned on using the on board clock, as the accuracy doesn't have to be great, I'm fine with a couple hours each month off.

Doing some testing, I noticed that it is off by up to a few seconds every minute (this is used in varying temperatures). So I need an external clock source.

Should I use a higher frequency crystal and clock it down internally? Example: 16Mhz crystal, using a clock speed of 8 or 4 mhz to save battery life. Or should I use a 8Mhz crystal and keep it at that speed?

Would a ceramic oscillator have enough accuracy and temperature stability to use? I'll be going from 0c to 25c

Thanks

Best Answer

Use a 32.768kHz crystal or tuning fork. It can run asynchronously and you'll save as much power as you can while still having a clock. The system clock will still use the internal RC oscillator.