More about microcontroller oscillators

Choice of the microcontroller oscillator depends on many factors. Before choosing one you should consider: Cost, accuracy and environmental parameters. Clock sources can be grouped in two major groups: based on mechanical resonance(crystals and ceramic resonators) and RC (resistor, capacitor) oscillators.

Most popular form of mechanical resonant generators in microcontrollers are Pierce oscillators:

Pierce.PNG

Ceramic and crystal based generators provide very high accuracy and low temperature coefficient. But they have slower startup comparing to RC generators. But RC generator’s accuracy suffer from temperature variations and supply voltage. Nominal frequency can variate from 5% to 50%:

RC.PNG

Oscillator stability can be expressed in figures as ‘±20ppm’ what means 20 parts per million. How to understand this? Imagine that there are 32 million seconds per year. Then in every million seconds generator may miss 20 seconds. SO over a year generator will miss 32×20 seconds, what is around 10 minutes. Standard crystals are rated from ±10ppm to ±100ppm what means from 5 to 50 minutes a year.

What to do is you want more stability. One issue would be to calibrate oscillator and keep it all time in constant temperature like in fridge. But it is not practical. There is another option – Temperature Compensated Crystal Oscillators (TCXO). These oscillators in their package include circuitry that is responsible for temperature compensation. Such devices can provide stability to up to ±0.1ppm, what means around 1 minute every 20 years. But…these crystals are expensive (can be about 100$ cost).

You don’t always have to buy TCXO - sometimes you may add temperature sensor and adjust timing according to temperature.

Other disadvantages of crystals are that they are susceptible to vibrations and they loose stability with the age.

To reduce vibration affect you may chose to use ceramic resonators. They may not be damaged by vibrations as crystals can, but they have much lower stability- typically ±5000ppm what means about 50 minutes/week.

Blogsphere: TechnoratiFeedsterBloglines
Bookmark: Del.icio.usSpurlFurlSimpyBlinkDigg
RSS feed for comments on this post
 |  TrackBack URI for this post

New on WinAVR Tutorial
Running TX433 and RX433 RF modules with AVR microcontrollers,
Sometimes in embedded design you may want to go wireless. Might be you will want to log various readi …
Programming AVR ADC module with WinAVR,
Most of AVR microcontrollers have Analog to Digital Converter (ADC) integrated in to chip. Such solut …
New on WinARM Tutorial
What are differences between WinARM and WinAVR,
Everyone who is working with AVR microcontrollers knows this powerful tool – WinAVR (http://win …
LPC2000 watchdog timer,
As in all microcontrollers watchdog timers purpose isto reset microcontroller after reasonable amount …

Leave a Reply