Crystal load capacitor value for SAMD20

Discussions around product based on ARM Cortex M0+ core.
This forum will be discontinued soon.

Moderator: nferre

garypty
Posts: 9
Joined: Thu Sep 18, 2014 6:01 pm

Crystal load capacitor value for SAMD20

Wed Mar 30, 2016 12:48 pm

I am using the SAMD20J18. Recently I found some of my boards have problem regarding the external 32.768kHz crystal. To investigate I generate a 8Hz PWM signal by the TC module. Its clock source is the external 32.768kHz crystal. I found that the signal will pause for a while after reset. By further investigation I found that it may be the problem of the load capacitor of the crystal.
The load capacitors are connected in parellel with the crystal (I attached a picture of the connection here).

The MCU datasheet page 596 given a formula to calculate the load capacitor value for the external 32.768KHz crystal:
CLEXT = 2(CL – CSTRAY–CSHUNT)
where CSTRAY is the capacitance of the pins and PCB, CSHUNT is the shunt capacitance of the crystal. CLEXT is the external load capacitor value.

I selected a crystal which stated that the load capacitance is 12.5pF. The MCU datasheet state the pin capacitance is 3.15pF. Assume the PCB stray capacitance is 0.5pF.
By calculation with the above formula , the capacitor value is:
CLEXT = 2(12.5pF - 3.65pF) = 18pF

However, the datasheet page 624-625 also stated that if a 12.5pF crystal is used, it does not need connect external load capacitor. :shock:

In testing, I found that I have problem (10% of my board) when using 18pF load capacitor. If I remove the load capacitor, it still have problem. By trial and error I found it is okay when I use a 8pF capacitor (on one of my board only, so I do not know whether it is good for all of my board).

So what should be the correct value of the load capacitor? :?:

Thank you.
Attachments
config.jpg
Crystal Config
config.jpg (5.9 KiB) Viewed 4926 times
sarlacii
Posts: 68
Joined: Mon Jan 26, 2015 2:33 pm

Re: Crystal load capacitor value for SAMD20

Mon Apr 04, 2016 9:21 am

Greetings garypty

Bizarrely enough, I wish I had seen this post a week ago!! ha ha ha Instead the clue to my current issue came to me only on Friday, while travelling back from the UK - but it is related exactly!

In my case I have a few SAMD20 units that lock up on boot, at the point where the first USART (that I use for debug) is enabled, and waits for sync. It just sits in the sync loop forever. I stuffed around for days trying to figure out why - it's low-level CMIS code and a register that I have no control over... before I took a break for Easter. Then it came to me. The only thing that I have changed is to now use a 110591 external Xtal to get exact Baud rates.

So I probed my failing PCB this morning... guess what? No clock! The Xtal is biased but dead. On the working PCB it runs perfectly. Tada!

So... as to the "correct" load capacitor to use. Well, that depends on the the Xtal specs, as well as the formula for the uC device. I'm going to fix mine first, and then I'll post my findings for my case.

But at least you know it's not just you. :)

Go well!
sarlacii
Posts: 68
Joined: Mon Jan 26, 2015 2:33 pm

Re: Crystal load capacitor value for SAMD20

Mon May 23, 2016 8:07 am

sarlacii wrote:So... as to the "correct" load capacitor to use. Well, that depends on the the Xtal specs, as well as the formula for the uC device. I'm going to fix mine first, and then I'll post my findings for my case.
I changed load capacitances from 22pF down to 6p8 without any effect (recommended load was 18pF for our XTAL). In the end I swapped out the XTAL... and it worked just fine, using the recommended load.

Return to “SAM D20 Cortex-M0+ MCU”

Who is online

Users browsing this forum: No registered users and 1 guest