Master Sciences de l'information et des Systèmes Université Paul Cézanne Travau
Master Sciences de l'information et des Systèmes Université Paul Cézanne Travaux Pratiques de Microcontrôleur Julien Marot julien.marot@fresnel.fr Marc Allain marc.allain@fresnel.fr Formation au développement d'applications en Assembleur et C sur un microcontrôleur Mircrohip PIC 18F4520 en utlisant l'environnement MPLAB IDE et le compilateur C18. Table des matières 1. Avant de commencer.....................................................................................................................1 2. Le Matériel.....................................................................................................................................1 2.1. Le Kit PICDEM 2 Plus et PIC 18F4520..................................................................................1 2.2. MPLAB Integrated Development Environment......................................................................1 2.3. Le programmateur PICSTART Plus........................................................................................2 3. Gestion de vos fichiers...................................................................................................................2 4. TP n°1 : Initiation à MPLAB IDE............................................................................................... 3 4.1. Programme « Interrupteur ».....................................................................................................3 4.2. Édition et Compilation du programme.................................................................................... 4 4.3. Simulation................................................................................................................................5 4.4. Programmation du microcontrôleur.........................................................................................7 4.5. Programme « Clignotant ».......................................................................................................8 5. TP n°2 : Ecriture d'un driver pour LCD.................................................................................. 11 5.1. Les afficheurs LCD................................................................................................................11 5.2. Fonctions de gestion.............................................................................................................. 12 5.3. Écrire une chaine de caractères..............................................................................................16 6. TP n°3 : Interruptions et Périphériques....................................................................................17 6.1. Programme « Clignotant » avec interruption.........................................................................17 6.2. Chronomètre.......................................................................................................................... 18 6.3. Générer un signal rectangulaire avec un module PWM........................................................ 19 6.4. Utilisation du module de conversion A/D............................................................................. 20 6.5. Gestion d'interruptions multiples...........................................................................................20 7. TP n°4 : Initiation à la programmation en langage C..............................................................22 7.1. Introduction : assembleur et compilateur C...........................................................................22 7.2. Génération d'un signal carré.................................................................................................. 23 7.3. Édition et Compilation du programme.................................................................................. 24 7.4. Simulation et programmation du micro-contrôleur............................................................... 25 7.5. Applications...........................................................................................................................25 8. TP n°5 : Gestion de Périphériques et Interruptions.................................................................27 8.1. Communication série : RS232...............................................................................................27 8.2. Applications...........................................................................................................................29 9. TP n°6 : Panneau d'affichage lumineux....................................................................................31 9.1. Gestion de l'afficheur LCD....................................................................................................31 9.2. Gestion de l'EEPROM........................................................................................................... 33 9.3. Panneau d'affichage............................................................................................................... 34 10. TP n°7 : Station Service............................................................................................................ 36 10.1. Automate de Pompe.............................................................................................................36 10.2. Communication avec l'automate de caisse...........................................................................37 Travaux Pratiques de Microcontrôleur – PIC 18F4520 1. Avant de commencer Ces séances de travaux pratiques (TP) sont destinées à illustrer les notions qui vous ont été présentées en cours. Pour cela, vous aurez à concevoir et à tester un certain nombre de programmes soit en langage assembleur soit en langage C. Pour chaque tâche que vous aurez à réaliser, nous vous invitons à enregistrer votre programme sous un nom particulier pour garder une sauvegarde de travail. Pour faciliter le débogage et assurer la maintenance et la portabilité de vos codes, il est primordial que vous commenciez par rédiger un algorigramme, que vous commentiez clairement votre programme et que vous pensiez à le rendre le plus clair possible (ex : en choisissant des noms appropriés pour les labels). Concernant l'évaluation de votre travail, nous vous demanderons de nous présenter le programme correspondant à chaque tâche que vous aurez à programmer sur le simulateur ou sur le kit de démonstration (cf. plus bas). Nous corrigerons également vos codes en portant une attention particulière à la lisibilité (pensez donc aux commentaires !). Enfin, vous devrez également nous rendre les algorigrammes qui correspondent aux codes. 2. Le Matériel 2.1. Le Kit PICDEM 2 Plus et PIC 18F4520 Le kit PICDEM 2 Plus est un kit simple qui permet de mettre en évidence les capacités de différents micro- contrôleurs du fabricant Microchip à travers divers périphériques et accessoires reproduits sur le schéma de la figure 1. Le micro-contrôleur utilisé est le PIC18F4520 de Microchip. C'est un micro-contrôleur 8 bits disposant d'une mémoire de programme de 32 Ko, de 1536 octets de RAM (Random Access Memory), d'une EEPROM (Electrically Erasable Programmable Read Only Memory) de 256 octets et de 36 entrées/sorties. Une part importante de la difficulté pour programmer un micro-contrôleur réside dans l'acquisition d'informations. Pour acquérir cette compétence, nous vous invitons à vous référer fréquemment à la documentation technique du micro-contrôleur, ainsi qu'à la documentation technique de la carte d'évaluation, cf. les documentations électroniques. M1 SIS 1 2011/2012 Figure 1: Le kit PICDEM 2 Plus, Périphériques et Accessoires Microcontrôleur LCD Contrôles RA1...RA3 Données RD0...RD3 LEDs RB0...RB3 Buzzer RC2 RS232 RC6, RC7 Poussoirs RA4, RB0 Entrée Analogique RA0 Reset MCLR ICD RB6, RB7 Bus I2C RC4, RC5 (In Circuit Debugger) (Liquid Crystal Display ) Capteur de Température RC3 Travaux Pratiques de Microcontrôleur – PIC 18F4520 2.2. MPLAB Integrated Development Environment MPLAB IDE est un environnement gratuit de programmation pour les micro-contrôleurs de la famille Microchip. L’environnement intègre un éditeur d’assembleur, un débogueur complet ainsi que tous les outils permettant de gérer les programmateurs de composants. La possibilité d’intégrer un compilateur C dans l’environnement de développement MPLAB s’inscrit directement dans la politique du service qui est d’utiliser des langages de programmation évolués dans les développements en électronique. 2.3. Le programmateur PICSTART Plus Il permet de transférer le programme directement de MPLAB dans le micro-contrôleur via le port série (RS232) d'un PC. 3. Gestion de vos fichiers Pour chacun des binômes, un compte utilisateur a éré créé. Pour ne pas oublier votre nom d'utilisateur et votre mot de passe. vous pouvez le noter ci-dessous. Attention windows faire la déifférence entre les majuscules et les minuscules. Nom d'utilisateur : Mot de passe : Avec votre compte vous avez droit à un espace de stockage sur le serveur. Cette espace de sotckage apparait dans « Poste de Travail » sous le nom de « voir le nom ». C'est ici que vous devez stocker tous vos documents afin qu'ils vous soient disponibles sur toutes les machines de TP. Il vous est fortement conseillé de bien ranger vos documents tout au long des séances. pour chacun des TP, faîtes un répertoire associé ex: tp3 pour le tp n°3. Puis pour chaque question si c'est nécessaire faîtes des sous réperoires question5 par exemple. Les documentations techniques nécessaires au TP sont disponibles à l'adresse:e:http://www.lsis.org/master/index.php?espace_etudiant=1&doc=103 M1 SIS 2 2011/2012 Travaux Pratiques de Microcontrôleur – PIC 18F4520 4. TP n°1 : Initiation à MPLAB IDE Le but de ce TP est de se familiariser avec la suite logicielle « MPLAB Integrated Development Environment » (v7.6) de Microchip afin de pouvoir utiliser les fonctions de bases de cet outil développement à savoir : créer un projet, éditer et compiler un programme en assembleur, simuler son fonctionnement et enfin programmer le microcontrôleur (µC). Les différentes fonctions sont expliquées à travers deux programmes qui vous sont donnés. 4.1. Programme « Interrupteur » Le programme « Interrupteur » boucle à l’infini sur les tâches ci-dessous afin de reproduire le fonctionnement d’un interrupteur. – Tâche 1 : lire l’état du bouton poussoir S2, broche RA4 – Tâche 2 : si le bouton est appuyé, on allume la diode électro-luminescente (LED) L1, broche RB0, sinon on l’éteint. On notera que les boutons poussoirs sont branchés au microcontrôleur en logique négative. L'état « bouton appuyé » correspond donc à un 0 logique. Les LED sont câblées en logique positive, elles s'allument pour un 1 logique. Le fonctionnement demandé peut être reproduit par l'algorigramme ci-dessous. L'algorigramme peut se traduire en assembleur de la manière suivante : LIST P=18F4520 #include <P18F4520.inc> #include <CONFIG.inc> Définition du µC utilisé, des constantes spécifiques au µC et des paramètres de configuration encodés lors de la programmation. org h'0000' Adresse de départ après un reset du µC. init clrf PORTB movlw b'00000000' movwf TRISB clrf PORTA movlw b'00010000' movwf TRISA Initialisation : Remise à zéro des bascules D des différents ports utilisés et configuration des entrées/sorties. boucle btfsc PORTA,4 goto eteindre bsf PORTB,0 goto boucle eteindre bcf PORTB,0 goto boucle END Boucle infini : Allume ou éteint la LED en fonction de l’état du bouton poussoir. Tout au long des travaux pratiques, nous vous demandons d'établir un glossaire des différentes instructions rencontrées avec leur explication en français. Ce glossaire vous sera très utile pour les différents programmes que vous serez amener à réaliser. M1 SIS 3 2011/2012 Figure 2: Algorigramme du programme « Interrupteur » RA4 = 0 S2 appuyé RB0 = 1 Allumer L1 RB0 = 0 Eteindre L1 oui non Initialisation du µC ASM Travaux Pratiques de Microcontrôleur – PIC 18F4520 4.2. Édition et Compilation du programme Cette partie permet d'apprendre à créer un projet MPLAB, saisir un programme en assembleur et le compiler. 4.2.1. Démarrage – Avant de commencer, créer le répertoire tp1 puis dans ce répertoire créer à nouveau un répertoire interrupteur. – Copier dans ce dernier répertoire les fichiers P18F4520.inc et CONFIG.inc – Lancer la suite logicielle MPLAB IDE à partir de l’icône qui se trouve sur votre bureau. 4.2.2. Création d’un nouveau projet avec « Project Wizard » – Cliquer sur Project >> Project Wizard … – Cliquer sur Suivant > puis sélectionner PIC18F4520 dans le menu déroulant Device. – Cliquer sur Suivant > puis sélectionner « Microchip MPASM Toolsuite » et « MPASM Assembler » afin de pouvoir programmer en Assembleur. – Cliquer sur Suivant > puis dans le champ « Project Name » saisir le nom du projet (ex : interrupteur) et dans le champ « Project Directory » aller chercher à l’aide du bouton « Browse », le dossier créé au début : tp1/interrupteur. – Cliquer sur Suivant > et ajouter les fichiers P18F4520.inc et CONFIG.inc au projet à l’aide du bouton « Add » >> – Cliquer sur Suivant > puis sur Terminer. 4.2.3. Édition du programme Créer un nouveau fichier dans le projet, File >> Add New Files to Project… uploads/Management/ enonce-msis-pdf.pdf
Documents similaires










-
29
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Sep 21, 2022
- Catégorie Management
- Langue French
- Taille du fichier 1.0705MB