Comment tester un résonateur à cristal en carte?

12

J'ai 2 résonateurs à quartz dans ma carte PCB: 32,768 kHz et 20 MHz. Ils sont connectés à un CI émetteur-récepteur Freescale MC12311, qui a un microcontrôleur HCS08 intégré. Je veux tester si ces cristaux fonctionnent correctement ou non.

Outils disponibles : oscilloscope, fréquencemètre (compteur numérique), multimètre numérique.

Comment dois-je utiliser ces outils pour tester les cristaux à bord ?

  • Remarque : L' effet de charge capacitif des sondes doit probablement être pris en compte. Sinon, la mesure ne serait pas précise, ou pire encore, les cristaux ne fonctionneraient pas du tout.

Edit1 : J'ai utilisé à la fois l'oscilloscope et le fréquencemètre (avec des sondes x10), mais malheureusement il n'y avait rien du tout surveillé.

Omid1989
la source
1
Quel type de sondes utilisez-vous? Une bande passante de sondes et d'instruments est nécessaire. Vous pouvez consulter la note d'application Atmel AVR4100 pour obtenir des conseils sur le cristal 32 kHz.
Dejvid_no1
1
Vous ne casserez probablement rien si vous placez la sonde de l'oscilloscope sur la sortie du résonateur. Quelle est la marque et le modèle de la lunette?
Dejvid_no1
1
C'est un oscilloscope analogique de Tektronix . Soit dit en passant, la charge capacitive de la sonde de l'oscilloscope affecterait la mesure. Quoi qu'il en soit, le fréquencemètre n'est-il pas un meilleur choix?
Omid1989
1
Je suis presque sûr que vous devriez pouvoir programmer le MCU sans horloge externe, c'est donc un problème distinct de savoir si les cristaux sont OK ou non. Après la réinitialisation matérielle, le MCU démarre sur son oscillateur interne.
Dave Tweed
1
J'utiliserais juste l'oscope. S'il y avait un certain effet des sondes, cela entraînerait simplement une légère différence de fréquence. Mais vous verriez toujours un signal d'horloge. Assurez-vous de faire référence à la masse de votre PCB, pas seulement de l'autre côté du cristal!
bitsmack

Réponses:

9

Comme je le vois, aucune réponse n'a été acceptée. Permettez-moi de vous proposer une autre réponse.

La plupart des circuits intégrés modernes utilisent ce qu'on appelle l' oscillateur Pierce pour générer des horloges stables à l'aide de cristaux. Voici la configuration principale du circuit:

entrez la description de l'image ici

Comme on peut le voir, le circuit n'est pas symétrique: le côté droit est la sortie d'un pilote (généralement désigné comme XO), et le côté gauche est entré dans un amplificateur inverseur (généralement désigné comme XI). Par conséquent, il est relativement sûr de sonder l'extrémité XO (sortie), à ​​condition que la sonde ait une impédance relativement élevée. Une sonde passive habituelle 1:10 avec une impédance d'entrée de 1 M devrait faire l'affaire. Dans la pratique, le pilote de sortie de l'amplificateur de circuit est rendu intentionnellement faible, généralement pas plus de 1 mA de capacité de charge, pour éviter que Xtal ne soit saturé, mais 1 mA devrait être suffisant pour piloter une sonde de portée 1M.

La capacité de la pointe de la sonde peut déplacer la fréquence d'oscillation de 20 à 50 ppm, car elle modifiera la mise au point du circuit (charge Xtal, C1 en série avec C2). Cependant, la charge de la sonde sur XO ne doit pas casser les oscillations, sauf si le circuit entier est trop marginal et ne répond pas aux critères de stabilité (l'impédance négative de l'amplificateur doit être 3 à 5 fois supérieure à Xtal ESR). Si la sonde fait cela, considérez le test Xtal comme un échec.

Il ne faut jamais essayer de sonder l'entrée XI, peut-être seulement avec une sonde de 100 MOhm, et uniquement pour la curiosité. La raison n'est pas dans la capacité de la pointe (2-8-12pF ou wahtever), mais en infligeant un décalage CC sur la broche XI en raison de l'impédance de sonde finie. L'oscillateur Pierce est un circuit non linéaire très délicat, et il possède un composant de rétroaction CC R1 très important, qui ajuste efficacement le niveau CC d'entrée au point d'amplification maximale, généralement à mi-chemin entre la terre et Vcc. Le composant R1 est généralement de 1MOhm et plus, et les oscillations deviennent centrées au point DC auto-sélectionné. Le fait d'attacher même une sonde de 10MOhm déplace ce point vers le bas, les baisses d'amplification et les oscillations meurent.

Et, bien sûr, la meilleure façon de tester les oscillations n'est pas de le toucher avec des sondes, mais d'avoir un tampon interne avec sortie vers une autre broche de test GPIO.

Ale..chenski
la source
7

J'ai eu un problème de débogage similaire une fois avec mes contrôleurs Atmel ATMEGA328P, les résonateurs en céramique 8Mhz ne fonctionnaient pas. J'avais un oscilloscope cheapo à deux canaux Rigol, et j'avais mesuré une carte de travail que j'avais faite précédemment et le joli signal de 8 MHz était facilement visible, sans problème en raison du chargement par les sondes. Vous ne devez pas vous inquiéter de l'effet de la sonde sur le cristal.

Le problème principal que j'ai trouvé était que mon contrôleur qui était censé piloter le cristal n'avait pas ses fusibles correctement réglés pour utiliser le cristal externe. Une fois que j'ai brûlé les fusibles pour sélectionner le cristal externe, les résonateurs ont montré des signes de vie!

Donc, c'est en fait un bon point pour vous assurer que votre microcontrôleur connecté au cristal a été configuré pour utiliser le cristal, sinon il n'y a rien pour alimenter ce dernier pour le faire osciller. Une fois que vous vous êtes assuré que c'est le cas, vous pouvez alors commencer à voir s'il s'agit de PCB ou d'autres problèmes de trace, des problèmes de mise à la terre, de mauvaises broches, etc.

KyranF
la source
Merci Kyran pour ta réponse. J'utilise Codewarrior 10.4 comme IDE. Savez-vous comment définir les bits de fusible dans cet IDE?
Omid1989
1
Désolé @ Omid1989, je ne connais pas cet IDE. Je n'ai vraiment utilisé que AVRdude et Arduino, et Atmel Studio pour les petits microcontrôleurs et Code Composer Studio pour un ARM A8. Il peut avoir un utilitaire séparé pour lire, puis écrire, les fusibles dans des onglets / zones similaires à la programmation / clignotant des puces cibles. Regardez autour de vous dans ces options pour les paramètres de fusible. Les fiches techniques peuvent également indiquer les options de fusible / registre pour sélectionner les entrées de cristal externes.
KyranF
J'appuie ceci. J'ai utilisé une sonde cheapo 10x, sur une sortie cristal cheapo 13.598mhz, avec un circuit de type oscillateur cheapo IC pierce et tout fonctionnait bien. Je viens de sonder le cristal et il oscillait à 13,5 MHz, ce qui est aussi rapide que mon oscilloscope calcule la fréquence.
Leroy105
7

Les composants externes donnent à l'oscillateur un aspect symétrique, mais il y a un amplificateur sur la puce qui est tout sauf. La broche de l'oscillateur qui se trouve du côté de la sortie aura une impédance inférieure et y placer la sonde de portée ne l'affectera pas autant que la sonde de la broche d'entrée.

S'il oscille, la sortie aura une amplitude plus grande que l'entrée; ce n'est peut-être pas non plus une très bonne onde sinusoïdale. Le côté d'entrée sera plus bas et devrait être une onde sinusoïdale (ayant été filtré par le cristal).

S'il ne oscille pas, l'entrée sera plus bruyante et devrait être quelque chose comme la moitié de la tension d'alimentation. La broche de sortie sera plus propre et peut être sur VDD ou à la masse. Certains de ces éléments varient en fonction de la conception de la puce (et de la configuration).

gbarry
la source
1
BTW, vous n'avez pas dit si vous vouliez mesurer la fréquence avec précision ou simplement voir si elle oscillait.
gbarry
Je veux juste voir ça oscille ou pas! BTW, qu'entendez-vous par entrée et sortie ici?
Omid1989
2
certains cristaux ont une broche Xin et Xout, avec chacun un condensateur de charge à la masse. Le signal sera légèrement différent mais à des fins pratiques pas vraiment. Le pilote à l'intérieur d'un microcontrôleur ou d'un autre appareil qui utilise un cristal ou un résonateur est essentiellement un circuit oscillateur (avec amplificateurs opérationnels, etc.). C'est pourquoi vous devez réellement activer l'entrée de cristal externe pour que le micro allume ces périphériques.
KyranF
2
Je crois que KyranF voulait dire "certains oscillateurs à cristal", car le cristal lui-même est symétrique. Ces broches se trouvent sur le microprocesseur. Même si les broches ne sont pas étiquetées Xin et Xout (ou OscIn et OscOut), elles sont toujours très susceptibles d'agir comme si elles l'étaient.
gbarry
Donc, si je mesure une fréquence légèrement plus élevée au terminal XO, dois-je faire confiance à cette mesure sur la fréquence plus «correcte» au terminal XI?
endolith
0

Si vous avez un récepteur de communication sensible, comme ceux utilisés dans la radio amateur, accrochant un fil entre l'entrée de l'antenne du récepteur et l'autre extrémité à un pouce du circuit de l'oscillateur, sans même toucher le circuit, accordant le récepteur autour de la fréquence du cristal, vous devriez entendre un battement. Et, repérez la fréquence exacte.

Paul
la source