1
\$\begingroup\$

I'm going to try to assemble an MCU-based circuit using an ATmega328P-PU (Arduino UNO stripped down to essential parts as in this tutorial).

I've skimmed over a lot of posts on EE.SE about load capacitors for clock generator XTALs and they seem mostly focused about understanding their function or selecting the right capacitance value, but little is said about tolerance or other capacitor parameters, besides this answer by Russel McMahon, which points out some caveats.

Given that for this application 18÷22 pF ceramic caps are advised (see link above), are those specs sufficient (besides of course working voltage – I suppose 50V caps are more than enough), i.e. can I choose any 22pF-50V cap and that's all? Is the choice critical with respect with other cap parameters (tolerance, leakage, etc.)? In particular are multilayer ceramic caps suitable (I've seen some online shops stress the difference between single-layer and multilayer, so I wonder if it is significant for this application)?

EDIT

By critical I mean that the clock generator may not oscillate or that it will have erratic behavior or that general operation of the circuit is impeded. I'm not interested in high frequency accuracy as far as the internal circuitry works reliably (for example, "critical" would be if the UART cannot communicate with an Arduino board because the clock frequency is too different). The purpose is to burn the firmware using the Arduino IDE and libraries as they are (using an Arduino board as in-circuit programmer), without customising them and coping with different clock frequency.

\$\endgroup\$
3
\$\begingroup\$

Your title asks about the value of the capacitors, and I think that has been adequately covered- you should match the nominal value to the specified load capacitance of the crystal (when in series with each other, and subtracting some allowance for input and stray capacitance).

The Q of a typical crystal resonator circuit is very high (maybe 100,000), and a small change in load capacitance won't affect the oscillation frequency by much. The equivalent "motional" capacitance of the resonator is quite high, so the pull effect of the load is small (typically measured in ppm/pF). If you are not using the crystal for a time keeping clock, it probably won't make much difference for you- it will vary with the crystal and load capacitance, but, say 5pF might make 30ppm or 100ppm difference in the oscillator frequency.

Since the capacitor might be 22pF, 5pF is a lot of change, so the tolerance and temperature coefficient is not very important. It's also cheap and easy to find almost perfect capacitors in the capacitance range used for load capacitors- ceramic NP0 types with tolerances of 5% are the cheapest and most available, and they're always rated for at least the voltage required (Vdd + 1.2V is certainly enough). Take the 27pF value- a Samsung CL10C270JB8NCNC is 5% tolerance, 50V, maximum drift of +/-30ppm/°C** and insulation resistance in the 10G range. All for $7.54 for a reel of 4,000 pieces, Digikey price. The difference between microwave and ordinary NP0 caps would not be noticed at 16MHz (except, of course, for the much higher price of the former). There are all kinds of complications (voltage coefficient, high temperature coefficient, microphonics, aging) associated with high value ceramic capacitors that don't apply much, if at all, to NP0 parts.

TL;DR Bottom line- if you use the most common NP0 ceramic capacitors in your favorite size, your circuit performance will not be limited by the capacitors in virtually all cases.

** Note that a 30ppm/K change of the load capacitor would likely contribute less than 0.1ppm/K change to the oscillation frequency (the temperature changes will be dominated by the crystal itself).

| improve this answer | |
\$\endgroup\$
1
\$\begingroup\$

It all depends on you application, if timing is critical for the application, then load capacitor values and types are critical - you have take into account parasytic capacitance of pcb tracks, capacitance drift with temperature and voltage, dialectric type, etc.

If you don't care much for clock accuracy, anything 18-22pF will work with almost any XTAL. I've tried values in the range of 15 to 33pF actually, but that was jsut pushing luck out of necessity. You should be in load capacitance range for your XTAL specifications.

| improve this answer | |
\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.