I am currently working on a PCB that involves an STM32F446RETx microcontroller. I've encountered some difficulties in selecting a suitable 16MHz HSE crystal oscillator.

Since my intention is to order the board from JLCPCB and avoid any manual soldering, I've opted for the Crystal X322516MLB4SI. To make this choice, I referred to the STMicroelectronics Datasheet, specifically "AN2586," which provides guidance on designing with an HSE crystal.

My design approach is as follows: Design Image

Following the recommendations in the "AN2867" HSE Design Guidelines, enter image description here I've selected C_L1 and C_L2 values of 20pF. Subsequently, I calculated an R_ext value of 497 Ohms. To match this value with a standard resistor from the E-Series, I've decided to use a 510 Ohms resistor.


Now, I have a couple of questions:

  1. Is the calculated R2 value accurate?
  2. Is this design suitable for the HSE Crystal Y1 (X322516MLB4SI)?

Not so important:

  1. In the pictures below they show that the R_ext Resistor Value is 0 (for the STM32F4) and 390 (for the STM32F103), does that mean, that between STM32s there are different values used? enter image description here

enter image description here Thank you for your insights and guidance.


1 Answer 1

  1. No, it is not accurate. Any value calculated with any suitable method will likely fall within a suitable range. If it does not work then just use 0 ohms.

  2. No, because you selected a crystal with 9pF load capacitance rating and you use 20pF caps which exceeds the 9pF and stray capacitance adds to that. Redo the cap calculation or change to another crystal.

  3. Yes it can be 0R or something else depending on crystal frequency and other parameters. As long

I might even ask, why do you even want to use a 16 MHz crystal, why not select something simpler and easier as there is no need for a 16 MHz crystal.

  • \$\begingroup\$ Where did you found thath the load capacitance rate is 9pF? In the Datasheet they only mention "10pf, 20pf or specifyed". \$\endgroup\$
    – Y-E-Quit
    Commented Aug 30, 2023 at 11:51
  • \$\begingroup\$ In the Datasheet I found the load Capacitance of 9pF. After Calculating using CL1 = 2*(CL - Cstray) = 2*(9pF - 5pF) = 8pf, I got a capacitance of 8pF. Then calculating these 8pF*2 I get 16pF. Hop it is to this point correct! When using my new Values to calc Rext I get the value Rext=1/(2*piFCL2) = 0.6217Ohms. Does that mean I don't need a Resistor for Rext? \$\endgroup\$
    – Y-E-Quit
    Commented Aug 30, 2023 at 15:15
  • \$\begingroup\$ I don't get it, the cap can't be 8pF and 16pF at the same time. But why do you need a 16 MHz crystal? \$\endgroup\$
    – Justme
    Commented Aug 30, 2023 at 18:56
  • \$\begingroup\$ Looking at my calculations. You can see I get 8pF for CL1 which is CL2. So I use an 8pF (CL1) for Pin 1 and one 8pF (CL2) for Pin 3 (seen in Post above, image 1). Is this right than? To your question: It is specific. \$\endgroup\$
    – Y-E-Quit
    Commented Aug 31, 2023 at 4:27
  • 1
    \$\begingroup\$ @Y-E-Quit Yes the 8pF value for both is calculated correctly, but then you said you get 16pF from 2*8pF which makes no sense in this context. The caps are not in parallel, and there is no 16 pF anywhere. I just find the selection of 16 MHz 9pF crystal for this purpose difficult. 16 MHz is quite high which reduces gain marging and 9pF is quite low, which does help compensating for the high freqency, but as you see, if the stray cap is assumed wrong, it has a large effect on capacitor value. I do not understand why the crystal must be 16 MHz, why can't you select another frequency? \$\endgroup\$
    – Justme
    Commented Aug 31, 2023 at 5:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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