13
Institut Supérieur des Technologies Médicales de Tunis Département Génie électrique MICROPROCESSEUR -Microcontrôleur - TP Microcontrôleur Tutorial MPLAB V8.00 2 ème année Systèmes Electroniques Année universitaire 2009-2010

Tutorial MPLAB

Embed Size (px)

Citation preview

Page 1: Tutorial MPLAB

Institut Supérieur des Technologies Médicales de Tunis

Département Génie électrique

MICROPROCESSEUR -Microcontrôleur -

TP Microcontrôleur

Tutorial MPLAB V8.00

2ème année Systèmes Electroniques

Année universitaire 2009-2010

Page 2: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -2- A.U. 2009/2010

1. Présentation

Ce document décrit l’utilisation du logiciel MPLAB (dans sa version 8.00) en vue de développer un programme pour microcontrôleur Microchip PIC, en assembleur. Les différents points abordés sont : - la création d’un nouveau projet ; - l’ouverture d’un projet déjà existant ; - la mise en œuvre du logiciel MPLAB ; - description des différentes icônes et fenêtres du logiciel ; - les différentes étapes du développement avec MPLAB ; - l’utilisation des points d’arrêts et des variables.

2. Création d’un nouveau projet

Les différents fichiers nécessaires à MPLAB lors d’un développement pour microcontrôleur sont répertoriés dans un projet. La première action à effectuer est donc la création d’un nouveau projet :

• L’assistant de création de projet

s’affiche. • Cliquer sur «Suivant».

Après avoir lancé MPLAB, choisir dans le menu «Project» l’option «Project Wizard».

Page 3: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -3- A.U. 2009/2010

• Cliquer sur «Suivant». • La troisième étape consiste à

indiquer le nom du projet ainsi que son emplacement.

• La première étape consiste à indiquer la référence du microcontrôleur qui sera utilisé. • Cliquer ensuite sur «Suivant».

La seconde étape consiste à choisir pour la rubrique «Active Toolsuite» le langage «Microchip MPASM Toolsuite» pour une programmation en assembleur.

Vérifier bien que les chemins des différents outils sont corrects

Spécifier dans la case «Create New Project File» le chemin et le nom souhaité pour le projet. En utilisant le bouton «Browse…» pour parcourir l’arborescence des répertoires, et éventuellement créer un nouveau répertoire. Par défaut le fichier créé aura l’extension mcp.

Page 4: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -4- A.U. 2009/2010

• La dernière étape permet

éventuellement d’ajouter au projet un fichier source existant (en Assembleur – extension .asm). Dans le cas où aucun fichier source existant n’est à incorporer au projet, cliquer directement sur «Suivant».

• L’assistant de création de projet

affiche un résumé de celui-ci : - Référence du microcontrôleur, - Outil utilisé en fonction du

langage, - Répertoire du projet.

• Cliquer sur «Terminer» pour valider la création du projet.

• MPLAB affiche dans une fenêtre le nom du

projet (d’extension mcp : MicroChip Project) Celui-ci mentionne éventuellement le nom du fichier source spécifié à l’étape précédente.

• Un double clic sur celui-ci permet de l’ouvrir en vue de l’éditer.

Pour ajouter un fichier source existant, parcourir l’arborescence dans la fenêtre de gauche, sélectionner le fichier désiré puis cliquer sur le bouton «Add».

Vérifier que le symbole C est affiché à gauche du nom du fichier pour qu’il soit copié à partir de son emplacement d’origine dans le répertoire du projet.

Nom du projet

Nom de l’espace de travail

Cliquer ensuite sur «Suivant».

Page 5: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -5- A.U. 2009/2010

MPLAB affiche, en plus de la fenêtre du projet, une fenêtre d’édition dans laquelle on peut aisément modifier le programme source grâce à la coloration syntaxique :

- En violet les noms et étiquettes, - En bleu gras les mnémoniques des instructions, - En bleu fin le texte d’assemblage, - En rouge les nombres, - En vert les commentaires.

Si aucun fichier existant n’a été incorporé au projet, choisir dans le menu «File» l’option «New» ou cliquer sur l’icône correspondante. Une fenêtre d’édition apparaît. Taper le texte du programme source puis enregistrer le fichier dans le même répertoire que celui du projet avec l’extension asm.

Incorporer ce nouveau fichier source au projet en choisissant l’option «Add Files» dans le menu contextuel (obtenu par un clic du bouton droit de la souris) de la rubrique «Source Files». Rechercher puis sélectionner le fichier sauvegardé précédemment.

Page 6: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -6- A.U. 2009/2010

3. Ouverture d’un projet existant

4. Utilisation de MPLAB

4.1. La barre d’outils de MPLAB

Les différentes icônes disponibles dans la barre d’outils de MPLAB sont définies ci-dessous. Remarque : en fonction du mode de fonctionnement choisi (mode simple, mode «Débogage», mode programmation), les icônes de la partie droite ne sont pas les mêmes. La barre d’outils représentée ici correspond au mode «Débogage»

L’ouverture d’un projet existant (d’extension mcp) peut se faire en choisissant dans le menu «Project» l’option «Open» ou en cliquant sur l’icône verte «Open Project».

Une deuxième solution consiste à ouvrir le «Workspace» (d’extension mcw : MicroChip Workspace) associé au projet en choisissant dans le menu «File» l’option «Open Workspace».

Page 7: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -7- A.U. 2009/2010

4.2. Les fenêtres de MPLAB

En plus de ces différentes icônes, plusieurs fenêtres peuvent être affichées : • Les fenêtres qu’il est indispensable d’avoir en permanence ouvertes :

- projet en cours (il est impossible de la fermer) ; - fichier(s) source(s) du projet : un double clic sur le nom du fichier source dans le

gestionnaire de projet permet de rouvrir celui-ci ; - Fenêtre de sortie («Output») : les différents onglets permettent d’afficher :

les résultats de la compilation (onglet «Build») ; le résultat de la recherche dans tous les fichiers source du projet (onglet «Find in files»). Dans le cas où cette fenêtre a été fermée, cocher dans le menu «View» l’option «Output».

Ouvrir un fichier

Enregistrer un fichier

Nouveau fichier

Coller

Copier

Couper

Aide

Chercher dans les fichiers

Chercher

Imprimer

Ouvrir un projet

Enregistrer un projet

Nouveau projet

Compiler le projet

Construire le projet

Exécuter le programme avec

animation

Arrêter le programme

Exécuter le programme

Initialisation du programme

Modes pas à pas

Options de compilation

Page 8: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -8- A.U. 2009/2010

• Certaines fenêtres qu’il est utile d’afficher dans certains cas : - «Watch» : permet d’afficher le contenu de registres du microcontrôleur ou de variables

(choisir dans le menu «View» l’option «Watch») ; - «Special Fonction Registers» : permet d’afficher le contenu des registres particuliers du

microcontrôleur (choisir dans le menu «View» l’option «Special Fonction Registers») - «File Registers» : permet d’afficher le contenu des registres particuliers du

microcontrôleur (choisir dans le menu «View» l’option «File Registers») ; - «Disassembly listing» : permet d’afficher le listing du programme en assembleur à la suite

de la compilation, associé au code objet généré (choisir dans le menu «View» l’option «Disassembly listing»).

4.3. Les différentes étapes du développement

Pour développer une application destinée à être exécutée par un microcontrôleur PIC, les différentes étapes sont les suivantes : • saisie du programme source grâce à l’éditeur de texte de MPLAB, • assemblage ou compilation du programme source, • débogage du programme, c’est-à-dire recherche et correction des erreurs de programmation.

4.3.1. Saisie du programme source – Assemblage / Compilation L’éditeur de texte de MPLAB permet, grâce à la coloration syntaxique, d’écrire le programme source en assembleur. La traduction du programme source en code objet s’effectue grâce à l’icône «Build All».

Il est possible de visualiser les registres et les variables en différentes bases. Pour ce faire, appuyer avec le bouton droit sur l’en-tête de colonne pour les visualiser et les sélectionner.

Page 9: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -9- A.U. 2009/2010

• Il est impératif d’observer le résultat de la compilation

dans l’onglet «Build» de la fenêtre «Output» : - Un message d’erreur («Error») nécessite

obligatoirement une modification du programme source, la compilation n’étant pas complète. Pour corriger l’erreur, un double clic sur le message d’erreur de la fenêtre «Ouput» permet d’arriver directement sur la ligne du programme source comportant l’erreur.

- Un message d’avertissement («Warning») doit être examiné avec soin : dans certains cas, il s’agit d’un oubli ou d’une erreur dans le programme source. Cependant, un programme destiné à être exécuté par un microcontrôleur comporte systématiquement une boucle infinie qui sera signalée par un message d’avertissement.

• Le message «BUILD SUCCEEDED» indique une compilation réussie (comportant éventuellement des avertissements).

4.3.2. Mode débogage Pour détecter d’éventuelles erreurs de programmation, il est nécessaire de faire exécuter le programme par le microcontrôleur en mode «débogage». Ce mode permet les différentes actions suivantes : • exécution en pas à pas ; • exécution fonction par fonction ; • exécution en continu ; • exécution continue jusqu’à une certaine ligne du programme source («point d’arrêt») ;

Page 10: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -10- A.U. 2009/2010

• affichage du contenu de registres du microcontrôleur et/ou variables (valeurs actualisées à chaque arrêt du programme).

Les principales icônes utilisées pour le débogage apparaissent :

4.3.2.1. Etapes du mode débogage La procédure habituelle est la suivante : • Compiler le programme (en cliquant sur l’icône «Build all») afin de s’assurer qu’il ne

comporte pas d’erreurs. • Activer l’outil de débogage «MPLAB SIM». • Lancer le débogage :

- soit en mode continu (icône «Run») ;

- soit en mode animation (icône « Animate »),

- soit en mode pas à pas (icônes « Step Into», « Step Over » ou « Step Out »).

• La réinitialisation du programme se fait en cliquant sur l’icône «Reset».

Remarque : A chaque modification du code source, il est impératif de recompiler le programme («Build All») avant de relancer le débogage.

Arrêter le programme

Exécuter le programme

Modes pas à pas

Exécuter le programme avec

animation

Initialisation du programme

Activer le simulateur de débogage en choisissant l’option «MPLAB SIM» à partir du menu «Bebugger» puis «Select Tool».

Page 11: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -11- A.U. 2009/2010

4.3.2.2. Affichage de Registres / Variables. L’observation du contenu de certains registres du microcontrôleur ainsi que des variables facilite la mise au point. L’affichage de la fenêtre s’effectue en choisissant dans le menu «View» l’option «Watch».

L’information «Running» apparaît à la gauche de la barre d’état.

Après un lancement en mode continu du programme, l’arrêt de celui-ci s’effectue grâce à l’icône «Halt».

En mode animation («Animate»), une flèche verte pointe l’instruction qui va être exécutée.

Page 12: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -12- A.U. 2009/2010

4.3.2.3. Utilisation de points d’arrêt L’exécution du programme en continu ne permet pas toujours de détecter l’origine d’un fonctionnement incorrect. Les modes pas à pas ou fonction par fonction sont parfois d’une mise en œuvre laborieuse. Il peut alors être judicieux d’utiliser les points d’arrêts : une ligne du programme source est affectée d’un marqueur qui déclenchera l’arrêt du programme lorsque le microcontrôleur exécutera l’instruction correspondante.

Choisir le nom d’un registre du microcontrôleur puis cliquer sur «Add SFR».

Il est possible de définir jusqu’à 4 ensembles de variables/registres pouvant être affichés dans l’un des 4 onglets de la fenêtre «Watch».

Choisir le nom d’une variable puis cliquer sur «Add Symbol»

Les valeurs des registres et/ou variables s’affichent en hexadécimal ainsi qu’en décimal à chaque arrêt du programme (arrêt manuel, pas à pas ou point d’arrêt). Un clic du bouton droit sur l’en-tête de colonne permet aussi de visualiser les valeurs en binaire ainsi que les caractères.

La définition et la suppression des points d’arrêts est réalisée par un double clic sur la ligne souhaitée, ou en choisissant lors d’un clic droit sur celle-ci l’option «Set Breakpoint» ou «Remove Breakpoint».

La suppression de tous les points d’arrêts s‘effectue en choisissant lors d’un clic droit dans la fenêtre d’édition l’option «Breakpoints» puis «Remove All Breakpoints».

Page 13: Tutorial MPLAB

ISTMT Tutorial MPLAB V8.00

SE2 -13- A.U. 2009/2010

5. Les fichiers indispensables

Lors d’une session de travail avec MPLAB, de nombreux fichiers sont générés. Seuls certains d’entre eux méritent d’être sauvegardés : • NomFichier.asm : fichiers source en assembleur : sauvegarde primordiale • NomProjet.mcp : définition du projet de MPLAB : sauvegarde souhaitable • NomProjet.mcw : définition de l’espace de travail de MPLAB : sauvegarde souhaitable • Les autres fichiers de nom générique identique au nom du projet et d’extension COD, err,

HEX, lst ne sont pas indispensables : ils seront recréés lors d’une nouvelle session de travail. - NomProjet.cod est un fichier non texte, non lisible ; - NomProjet.lst donne le détail des opérations d’assemblage, contient le texte de départ, les codes

machine et position mémoire et éventuellement les erreurs trouvées ; - NomProjet.hex donne la liste des mots de 14 bits constituant le programme suivant le format

Intel ; - NomProjet.err donne le détail des erreurs s’il y en a.