V.Tourtchine. Microcontrôleur de la famille PIC. Support de cours & Prise en ma
V.Tourtchine. Microcontrôleur de la famille PIC. Support de cours & Prise en main du logiciel MPLAB -------------------------------------------------------------------------------------------------------------------------------------- - 0 - MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE Spécialité : InfoTronique V.TOURTCHINE MICROCONTROLEUR DE LA FAMILLE PIC Manuscrit élaboré selon le programme officiellement agrée et confirmé par le Conseil Scientifique de la Faculté des Sciences BOUMERDES - 2009 Support de cours & Prise en main du logiciel MPLAB UNIVERSITE M’HAMED BOUGARA DE BOUMERDES FACULTE DES SCIENCES Département de Physique V.Tourtchine. Microcontrôleur de la famille PIC. Support de cours & Prise en main du logiciel MPLAB -------------------------------------------------------------------------------------------------------------------------------------- - 1 - I. LES MICROCONTROLEURS 1.1 Qu’est ce qu’un microcontrôleur (μC): C’est un ordinateur monté dans un circuit intégré. Les avancées technologiques en matière d’intégration, ont permis d’implanter sur une puce de silicium de quelques millimètres carrés la totalité des composants qui forment la structure de base d’un ordinateur. Comme tout ordinateur, on peut décomposer la structure interne d’un microprocesseur en trois parties : -Les mémoires -Le processeur -Les périphériques Les mémoires sont chargées de stocker le programme qui sera exécuté ainsi que les données nécessaires et les résultats obtenus. Le processeur est le cœur du système puisqu’il est chargé d’interpréter les instructions du programme en cours d’exécution et de réaliser les opérations qu’elles contiennent .Au sein du processeur, l’unité arithmétique et logique ALU interprète, traduit et exécute les instructions de calcul. Les périphériques ont pour tâche de connecter le processeur avec le monde extérieur dans les deux sens. Soit le processeur fournit des informations vers l’extérieur (périphérique de sortie), soit il en reçoit (périphérique d’entrée). Les PICs sont des composants RISC (Reduce Instructions Construction Set), ou encore composant à jeu d’instructions réduit. L'avantage est que plus on réduit le nombre d’instructions, plus facile et plus rapide en est le décodage, et plus vite le composant fonctionne. La famille des PICs est subdivisée en 3 grandes familles : La famille Base- Line, qui utilise des mots d’instructions de 12 bits, la famille Mid-Range, qui utilise des mots de 14 bits (et dont font partie la 16F84 et 16F876), et la famille High-End, qui utilise des mots de 16 bits (18FXXX). Pour identifier un PIC, on utilise simplement son numéro : Les 2 premiers chiffres indiquent la catégorie du PIC, 16 indique un PIC Mid- Range. Vient ensuite parfois une lettre L, celle-ci indique que le PIC peut fonctionner avec une plage de tension beaucoup plus tolérante. Vient en suite une ou deux lettres pour indiquer le type de mémoire programme : - C indique que la mémoire programme est une EPROM ou plus rarement une EEPROM - CR pour indiquer une mémoire de type ROM - F pour indiquer une mémoire de type FLASH. On trouve ensuite un nombre qui constitue la référence du PIC. V.Tourtchine. Microcontrôleur de la famille PIC. Support de cours & Prise en main du logiciel MPLAB -------------------------------------------------------------------------------------------------------------------------------------- - 2 - On trouve ensuite un tiret suivi de deux chiffres indiquant la fréquence d’horloge maximale que le PIC peut recevoir. 1.2 Intérêt des microcontrôleurs : Les microcontrôleurs sont de taille tellement réduite qu’ils peuvent être sans difficulté implantés sur l’application même qu’ils sont censés piloter. Leur prix et leurs performances simplifient énormément la conception de système électronique et informatique. On peut encore préciser : Les performances sont identiques voir supérieurs à ses concurrents. Très utilisé donc très disponible. Les outils de développement sont gratuits et téléchargeables sur le WEB. Le jeu d'instruction réduit est souple, puissant et facile à maîtriser. Les versions avec mémoire flash présentent une souplesse d'utilisation et des avantages pratiques indéniables. La communauté des utilisateurs des PICs est très présente sur le WEB. On trouve sur le Internet quasiment tout ce dont on a besoin, tutoriaux pour démarrer, documents plus approfondis, schémas de programmeurs avec les logiciels qui vont avec, librairies de routines, forums de discussion . . . L’utilisation des microcontrôleurs ne connaît de limite que l’ingéniosité des concepteurs, on les trouve dans nos cafetières, les magnétoscopes, les radios II. PRESENTATION GENERALE DU PIC 16F84 Nous nous limiterons dans ce support de cours à la famille Mid-Range et particulièrement au PIC 16F84, sachant que si on a tout assimilé, on pourra facilement passer à une autre famille, et même à un autre microcontrôleur. Donc, un 16F84-04 est un PIC Mid-Range dont la mémoire programme est de type FLASH de référence 84 et capable d’accepter une fréquence d’horloge de 4MHz. Notez que les PICs sont des composants STATIQUES, c’est à dire que la fréquence d’horloge peut être abaissée jusque l’arrêt complet sans perte de données et sans dysfonctionnement. Une version –10 peut donc toujours être employée sans problème en lieu et place d’une – 04. Pas l’inverse, naturellement. Le PIC 16F84 est un microcontrôleur 8 bits. Il dispose donc d'un bus de données de huit bits. Puisqu’il traite des données de huit bits, il dispose d’une mémoire de donnée dans laquelle chaque emplacement (défini par une adresse) possède huit cases pouvant contenir chacune un bit. L’organisation générale du PIC 16F84 est composée par 4 blocs principaux comme le montre la figure 1 : -Mémoire de programme -Mémoire de données -Processeur -Ressources auxiliaires (périphériques) La mémoire de programme contient les instructions pilotant l’application à laquelle le microcontrôleur est dédié. Il s’agit d’une mémoire non volatile ( elle garde son contenu, même en l’absence de tension ), elle est de type FLASH c’est à dire V.Tourtchine. Microcontrôleur de la famille PIC. Support de cours & Prise en main du logiciel MPLAB -------------------------------------------------------------------------------------------------------------------------------------- - 3 - qu’elle peut être programmée et effacée par l’utilisateur via un programmateur et un PC. La technologie utilisée permet plus de 1000 cycles d’effacement et de programmation. Pour le PIC 16F84 cette mémoire est d’une taille de 1024*14 bits, c’est à dire qu’elle dispose de 1024 emplacements (de 000h à 3FFh) contenant chacun 14 cases car dans le cas du PIC, les instructions sont codées sur 14 bits. On peut donc stocker 1024 instructions. Fig.1 La mémoire de donnée est séparée en deux parties : -une mémoire RAM de 68 octets puisque le bus de donnée est de huit bits. Cette RAM est volatile (les données sont perdues à chaque coupure de courant). On peut y lire et écrire des données. -une mémoire EEPROM de 64 octets dans laquelle on peut lire et écrire des données (de huit bits soit un octet) et qui possède l’avantage d’être non volatile (les données sont conservées même en l’absence de tension). La lecture et l’écriture dans cette mémoire de données sont beaucoup plus lentes que dans la mémoire de données RAM. Le processeur est formé de deux parties : -une unité arithmétique et logique (ALU) chargée de faire des calculs. -un registre de travail noté W sur lequel travail l’ALU. Les ressources auxiliaires qui sont dans le cas du PIC16F84 - ports d’entrées et de sorties. - temporisateur. - interruptions - chien de garde - mode sommeil Ces ressources seront analysées dans la suite du cours. V.Tourtchine. Microcontrôleur de la famille PIC. Support de cours & Prise en main du logiciel MPLAB -------------------------------------------------------------------------------------------------------------------------------------- - 4 - III. ARCHITECTURE DU PIC 16F84 3.1 Brochage et caractéristiques principales Le PIC16F84 est un circuit intégré de 18 broches (Fig. 2) : Fig.2 L’alimentation du circuit est assurée par les pattes VDD et VSS. Elles permettent à l’ensemble des composants électroniques du PIC de fonctionner. Pour cela on relie VSS (patte 5) à la masse (0 Volt ) et VDD (patte 14) à la borne positive de l’alimentation qui doit délivrer une tension continue comprise entre 3 et 6 Volts. Le microcontrôleur est un système qui exécute des instructions les unes après les autres à une vitesse (fréquence) qui est fixée par une horloge interne au circuit. Cette horloge doit être stabilisée de manière externe au moyen d’un cristal de quartz connecté aux pattes OSC1/CLKIN (patte 16) et OSC2/CLKOUT (patte 15). La patte 4 est appelée MCLR. Elle permet lorsque la tension appliquée est égale à 0V de réinitialiser le microcontrôleur. C’est à dire que si un niveau bas (0 Volt) est appliqué sur MCLR le microcontrôleur s’arrête, place tout ses registres dans un état connu et se redirige vers le début de la mémoire de programme pour recommencer le programme au début (adresse dans la mémoire de programme : 0000). A la mise sous tension, la patte MCLR étant à zéro, le programme démarre donc à l’adresse 0000,( MCLR=Master CLear Reset ). V.Tourtchine. Microcontrôleur de la famille PIC. Support de cours & Prise en main du logiciel MPLAB Les broches RB0 à RB7 et RA0 à RA4 sont les lignes d’entrées/sorties numériques. Elles sont au nombre de 13 et peuvent être V.Tourtchine. Microcontrôleur de la famille PIC. Support de cours & Prise en main du logiciel MPLAB -------------------------------------------------------------------------------------------------------------------------------------- - 5 - configurées en entrée ou en sortie. Ce sont elles qui permettent au microcontrôleur de dialoguer avec le monde extérieur (périphériques). L’ensemble des lignes RB0 à RB7 forme uploads/Management/ 02-microcontroleur-de-la-famille-pic.pdf
Documents similaires
-
21
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mar 29, 2021
- Catégorie Management
- Langue French
- Taille du fichier 1.6869MB