J'ai vu des questions comme celle-ci qui parlent de la sélection d'un cristal pour UART et j'ai vu des questions comme celle-ci qui mentionnent 32,768 kHz pour RTC. Mais comment choisir le bon cristal pour mon application.
À ce stade, je ne sais pas quel baud UART j'utiliserai, mais ce sera l'un des bauds standard. Ce serait bien de pouvoir obtenir un temps semi-précis en millisecondes, mais pas une exigence. Intuitivement, je pense que l'utilisation du cristal le plus rapide que mon micro puisse utiliser me donnera le plus de flexibilité, mais y a-t-il quelque chose qui me manque? Y a-t-il une fréquence «à usage général» que les gens utilisent?
Réponses:
Honnêtement, je pourrais passer des heures à décrire les différentes fréquences et pourquoi les utiliser, mais quelqu'un l'a déjà!
http://en.wikipedia.org/wiki/Crystal_oscillator_frequencies
Ce tableau a une colonne UART pour vous dire quelles fréquences UART il divise bien.
Il vous indique également quand une fréquence est un cristal standard pour un système de communication spécifique.
la source
Intuitivement, je voudrais utiliser le cristal LENT qui fonctionne pour mon application. Vous obtiendrez moins de dérive d'horloge et les traces de circuit se comporteront généralement mieux aux basses fréquences.
Soit dit en passant, si vous voulez faire des choses toutes les quelques millisecondes, vous pouvez faire quelque chose comme suit:
Vous ne savez pas quel micro vous utilisez, mais MPLAB dispose d'utilitaires pour chronométrer la durée des événements, vous pouvez donc l'utiliser pour ajuster la valeur de réinitialisation de TMR1 pour faire face à toute surcharge et / ou à une horloge inexacte. Les cristaux peuvent varier suffisamment pour que cela soit impossible dans un environnement de production ... pas sûr.
la source