Étape 6: Configurez oscillateur
Détermination des paramètres
Avant que nous puissions programmer les réglages, il faut choisir quelle vitesse nous voudrions lancer à. Pour cet exemple je vais utiliser 16MHz comme la plupart PIC peut rouler à cette vitesse. Pour ma configuration, je vais utiliser le postscaller de 4MHz de la HF-INTOSC et les 4 x PLL donnant une fréquence de sortie de 4 MHz * 4 x = 16 MHz
- Dans la feuille de données, recherchez la section étiquetée oscillateur Configurations
- La première chose répertoriés dans cette section est oscillateur Types. Si vous utilisez l’oscillateur interne, puis utilisez les paramètres relatifs à INTIO1
- Sur la prochaine page ou deux, vous trouverez un schéma de l’oscillateur semblable à celle illustrée. Il est utile de retracer le signal sur ce dessin pour assurer la bonne vitesse est sélectionné.
- L’étape suivante consiste à programmer ces paramètres à la MCU. Cela se fait par les registres de réglage. Le premier registre de la valeur est OSCCON.
- IDLEN--utilisé pour contrôler l’action de la commande de sommeil. Vous pouvez laisser par défaut.
- IRCF--Sélection d’oscillateur. Depuis que je suis sur HF-INTOSC/4 (4MHz) j’aurai besoin de définir cette valeur binaire de 101
- OSTS--Lecture bit uniquement
- HFIOFS--Lecture bit uniquement
- SCS--horloge bits select. Depuis que je suis sur l’oscillateur interne, je vais mettre à 1 x où x peut être 0 ou 1
- Le Registre suivant est OSCCON2 ; Toutefois, ce registre est surtout lu seulement et pas important à ce stade
- Le dernier Registre de configuration oscillateur est OSCTUNE. Nous ne va pas syntoniser la fréquence pour ce projet, cependant, nous devons utiliser ce registre pour allumer le PLL avec foret de PLLEN.
Application des paramètres
- Retour à MPLAB
- Dans l’Explorateur de projets sous fichiers Source, ouvrez system.c
- Au bas de ce fichier est la fonction ConfigureOscillator. Supprimez les commentaires de cette fonction.
- Pour définir les bits d’un registre tapez en majuscules le nom de Registre, suivi par les bits du mot en minuscules, puis une période et le nom de bit.
- Pour définir les bits qui suivent par un signe égal. Pour utiliser 0bXXXX de type binaire, où XXXX correspond au nombre binaire. Enfin terminer la ligne par un point-virgule.
- Mettre tous les bits, tel que déterminé ci-dessus pour le registre OSCCON. Exemple : OSCCONbits.IRCF = 0b101 ;
- Faites de même pour tous les autres registres de l’oscillateur nécessaire. Voir ci-dessous pour un exemple d’une fonction ConfigureOscillator fini.
- Lorsque vous avez terminé construire et recherchez les avertissements/Erreurs