MPLAB 5.x DE MICROCHIP



Documents pareils
PIC EVAL Dev Board PIC18F97J60

Tutoriel code::blocks

1.1 L EXPLORATEUR WINDOWS

Déploiement de SAS Foundation

RACCOURCIS CLAVIERS. DEFINITION : Une «combinaison de touches» est un appui simultané sur plusieurs touches.

IP Remote Controller

Gestion des documents avec ALFRESCO

hager Logiciel PC pour configurateur Radio Tebis TX 100 Manuel d utilisation 6T7266

Importation de fichiers Eagle

Guide d installation des licences Solid Edge-NB RB

Guide de l utilisateur Mikogo Version Windows

Interface PC Vivago Ultra. Pro. Guide d'utilisation

Asset Management Software Client Module. Manuel d utilisation

Utiliser Dev-C++ .1Installation de Dev-C++ Table des matières

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Eclipse atelier Java

Correction des Travaux Pratiques Organiser son espace de travail

COMMENCER AVEC VUE. Chapitre 1

Guide d installation UNIVERSALIS 2014

GESTION DE L'ORDINATEUR

Installation et paramétrage. Accès aux modèles, autotextes et clip- art partagés

Mon aide mémoire traitement de texte (Microsoft Word)

Évaluation des compétences. Identification du contenu des évaluations. Septembre 2014

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

ÉCOLE POLYTECHNIQUE DE MONTRÉAL. Département de Génie Électrique. La technologie de TEXAS INSTRUMENTS DSP pour le cours Analyse des Signaux ELE2700

SYSTRAN 7 Guide de démarrage

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

sommaire Archives... Archiver votre messagerie... Les notes... Les règles de messagerie... Les calendriers partagés Les listes de diffusions...

Le logiciel de création de site internet IZISPOT est un outil très puissant et qui est assez simple après quelques temps d utilisation.

Démarrer et quitter... 13

Guide de démarrage Intellipool Network Monitor

Manuel utilisateur Netviewer one2one

MICROCONTROLEURS PIC PROGRAMMATION EN C. V. Chollet - cours-pic-13b - 09/12/2012 Page 1 sur 44

Ladibug TM 2.0 Logiciel de présentation visuel d'image Manuel de l utilisateur - Français

INITIATION A L INFORMATIQUE. MODULE : Initiation à l'environnement Windows XP. Table des matières :

RECOPLUS LOGICIEL DE GESTION DES RECOMMANDES NOTICE D UTILISATION DE RECOPLUS RESEAU. N de série

Manuel d utilisation NETexcom

Tutorial Terminal Server sous

Micro-ordinateurs, informations, idées, trucs et astuces utiliser le Bureau à distance

Tutoriel. Votre site web en 30 minutes

Universalis Guide d installation. Sommaire

Access 2007 FF Access FR FR Base

Retrouver un mot de passe perdu de Windows

GUIDE D INSTALLATION RAPIDE DEXH264

VAMT 2.0. Activation de Windows 7 en collège

Découvrez Windows NetMeeting

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture IBM BladeCenter

1 CRÉER UN TABLEAU. IADE Outils et Méthodes de gestion de l information

MANUEL DRIVELINK DRIVELINK

Manuel d utilisation de Wireless Mobile Adapter Utility. Fonctionnalités

Millenium3 Atelier de programmation

SQL Server Installation Center et SQL Server Management Studio

Atelier Le gestionnaire de fichier

POUR ALLER UN PEU PLUS LOIN SUR UN TABLEUR. Version EXCEL

Formation. Module WEB 4.1. Support de cours

iil est désormais courant de trouver sur Internet un document

CONFIGURATION DE L AUTOMATE SIEMENS

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

Numérisation. Copieur-imprimante WorkCentre C2424

Paramètres d accessibilité des systèmes d exploitation Windows et Mac

Manuel de l utilisateur

USB LANPORT 400. Manuel

Utilisation de l'outil «Open Office TEXTE»

Groupe Eyrolles, 2003, ISBN : X

HTTP Commander. Table des matières. 1-Présentation de HTTP Commander

Sélection du contrôleur

PACK ADSL WIFI. Configurer ma connexion ADSL avec Modem/Routeur Sagem 1400W

Tutoriel de formation SurveyMonkey

AVEC LIVE TRADER, VISEZ PLUS HAUT POUR VOS INVESTISSEMENTS

GUIDE D UTILISATION DU BROWSER DE BEYOND 20/20

l'ordinateur les bases

PRISE EN MAIN D UN TABLEUR. Version OPEN OFFICE

Guide de l administrateur DOC-OEMCS8-GA-FR-29/09/05

Publier dans la Base Documentaire

CAPTURE DES PROFESSIONNELS

Logiciel (Système d impression directe)

Securexam Consignes pour l EFU Les 2, 3 et 4 juin 2015

Europresse.com. Pour les bibliothèques publiques et de l enseignement. Votre meilleur outil de recherche en ligne. Guide version 1.

Guide d installation du logiciel Proteus V.8 Sous Windows Vista, 7, 8

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/ bits, Windows 2008 R2 et Windows bits

Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision

Les PowerToys pour Windows XP

Sous réserve de modifications techniques et des disponibilités, fabrication française.

Europresse.com. Pour bibliothèque d enseignement Pour bibliothèque publique. Consulter facilement la presse. Guide version 1.

Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt

GUIDE Excel (version débutante) Version 2013

Création d un formulaire de contact Procédure

GESTION DU LOGO. 1. Comment gérer votre logo? Format de l image Dimensions de l image Taille de l image 9

Once the installation is complete, you can delete the temporary Zip files..

Affectation standard Affectation modifiée (exemple)

Utilisez Toucan portable pour vos sauvegardes

PROCÉDURE D AIDE AU PARAMÉTRAGE

Installation et compilation de gnurbs sous Windows

Réalisez votre propre carte de vœux Éléctronique

MANUEL D INSTALLATION

Modes Opératoires WinTrans Mai 13 ~ 1 ~

BIRT (Business Intelligence and Reporting Tools)

Introduction à Windows Script Host DescoDev

Fiche Mémo : Options d accessibilité sous Windows et Internet Explorer 5

Transcription:

MPLAB 5.x DE MICROCHIP INTRODUCTION... 3 Les différentes versions... 3 Installation... 3 1) PRÉSENTATION GÉNÉRALE... 4 1.1) Généralités... 4 1.2) Les différents modes de développement... 5 1.3) Outils d assemblage / compilation... 5 2) MODE ÉDITION (CHAÎNE D ASSEMBLAGE / COMPILATION)... 6 2.1) Organisation du travail... 6 2.2) Terminologie MPLAB... 7 2.3) Constitution d un projet... 7 2.4) Les nœuds et leurs propriétés... 7 3) MODE DÉBOGAGE (SIMULATION, EMULATION, ICD)... 8 4) ENVIRONNEMENT DE DÉVELOPPEMENT INTÉGRÉ... 8 Barre d outils paramétrable... 8 Barre d état... 9 Options... 10 5) CONFIGURATION DE LA SUITE LOGICIELLE D ASSEMBLAGE / COMPILATION / EDITION DE LIENS AVANT UNE PREMIÈRE UTILISATION... 10 5.1) Suite Microchip... 11 5.2) Suite HiTech version 7 ou 8... 11 5.3) Compilateur CC5X... 11 6) LES DIFFÉRENTES ÉTAPES DE LA CRÉATION D UN FICHIER EXÉCUTABLE... 12 6.1) Mode de développement... 12 6.2) Création / ouverture / modification d un projet... 12 6.2.1) Création du projet / Définiition du fichier exécutable...13 6.2.2) Ajout de fichier source...14 6.2.3) Propriétés associées aux fichiers selon les suites logicielles...14 6.3) Edition du ou des fichiers du projet... 17 6.4) Assemblage / Compilation / Édition de liens... 18 Utilisation avec compilateur Hi-Tech...18 7) LES POSSIBILITÉS COMMUNES À TOUS LES MODES DE DÉBOGAGE : SIMULATION, ÉMULATION, ICD... 19 7.1) Fenêtres de débogage... 19 Fenêtre d observation de variables (watch)...20 7.2) Commandes de débogage... 22 MPLAB de Microchip / P. Morenton, LT PE Martin 1

7.3) Points d arrêt... 23 7.4) Modifications de registres ou variables... 24 7.5) interruptions... 24 8) SIMULATION... 24 8.1) Généralités... 24 8.2) Fenêtres et commande de débogage spécifiques... 25 8.3) Points d arrêt du simulateur... 25 Point d arrêt sur adresse...25 Autres Points d arrêt...26 Point d arrêt sur valeur d un registre...27 8.4) Mémoire de trace... 27 8.5) Execution d une instruction... 28 8.6) Application d un stimulus... 28 9) UTILISATION DU MODE ICD... 29 9.1) Configuation de la liaison PC / module ICD et programmation du µc... 29 9.2) Programmation et vérification du µc... 30 Options de programmation...30 9.3) Débogage... 32 Limitations et Problèmes en débogage ICD...32 10) UTILISATION D UN ÉMULATEUR ICE 2000... 33 10.1) Présentation... 33 10.2) Installation et configuration de l émulateur... 33 Description / Installation...33 Vérification du bon fonctionnement de l émulateur...34 Configuration...35 Points d arrêt... 35 11) DÉPLACEMENT D UN PROJET... 36 Fichiers du projet... 36 Fenêtres ouvertes... 37 MPLAB de Microchip / P. Morenton, LT PE Martin 2

MPLAB 5.x DE MICROCHIP INTRODUCTION LES DIFFÉRENTES VERSIONS MPLAB 5.x n est plus disponible sur le site Microchip (www.microchip.com). Ces versions sont les seules qui prennent en charge la programmation et le déboguage in situ (ou in circuit) pour les PIC 16F87x, avec l utilisation d un module d interfaçage ICD Microchip, entre le PC et la carte cible. Ce module est bon marché et il est possible de le fabriquer par ses propres moyens pour un coût très réduit. Les versions suivantes ne supportent que le module ICD2 d un coût plus élevé. Avec le module ICD2, un plus grand nombre de PIC est utilisable en mode de développement ICD (In Circuit Debugging). La dernière version de MPLAB 5.x est la version 5.7. La version qui fonctionne le mieux pour suivre une exécution de programme en pas-à-pas est la version 5.5. Voir l annexe. INSTALLATION L installation ne présente pas de difficultés particulières. Voici quelques recopies d écrans d installation de la version 5.5. Des cases supplémentaires sont à cocher si on dispose d un programmateur ou d un émulateur supplémentaire. PICSTART Plus est le programmateur Microchip qui se branche sur la liaison parallèle du PC. MPLAB de Microchip / P. Morenton, LT PE Martin 3

1) PRÉSENTATION GÉNÉRALE Ce document est une présentation simplifiée de MPLAB version 5.x. Pour plus de détail, voir les manuels Microchip «MPLAB : IDE, SIMULATOR, EDITOR USER S GUIDE» et «MPLAB-ICD USER S GUIDE». 1.1) GÉNÉRALITÉS L'Environnement de Développement Intégré (EDI) MPLAB regroupe toutes les fonctionnalités nécessaires à : une chaîne d assemblage / compilation et un débogueur Les logiciels de même type offrent souvent un EDI pour la compilation et un EDI pour le débogueur distincts. MPLAB permet de créer le fichier exécutable et de déboguer des applications pour tous les PICs de Microchip. Pour le débogage, MPLAB offre le choix entre : un simulateur un émulateur (ICE 1000, ICE 2000, PICMASTER) dialoguant avec le logiciel par la liaison parallèle l'utilisation des ressources intégrées dans certains PICs (In Circuit Debugger, ICD), via une liaison série et une petite carte d interfaçage entre le PC et le PIC cible. Le mode ICD est utilisable uniquement avec un PIC cible de la série PIC16F87x (à la date de rédaction de ce document, mars 2002) Ce document ne décrit les possibilités que du simulateur, de l émulateur ICE de Microchip et du débogage «in circuit» avec ICD. MPLAB de Microchip / P. Morenton, LT PE Martin 4

1.2) LES DIFFÉRENTS MODES DE DÉVELOPPEMENT Il est possible de choisir le mode de développement avec ou sans débogage suivant la construction du fichier exécutable final. Le mode édition seule permet de réaliser toutes les étapes jusqu à la construction du fichier exécutable : édition du ou des fichiers source, assemblage/compilation, édition de liens. Dans un mode de développement avec déboguage, après construction du fichier exécutable, ce dernier est automatiquement chargé dans la mémoire du simulateur ou de l émulateur ou dans la mémoire de l ordinateur pour recopie ou programmation selon le mode de développement (émulateur, ICD). (La commande File / Import / Download to Memory ou Download to Target Memory est automatiquement exécutée voir plus loin). Les commandes spécifiques liées au déboguage sont disponibles. Ce mode permet aussi une programmation simple avec un module ICD. Le mode édition seule est à utiliser lorsque l'utilisateur ne souhaite pas ou ne peut pas réaliser un déboguage (ex : émulateur non disponible momentanément). Le choix du mode «édition seule» ou «édition + déboguage» s'effectue avec la commande Options / Development Mode. (voir plus loin) Le mode actif est rappelé, avec de nombreuses autres informations, dans le bandeau d'état en bas de l'écran. En mode déboguage avec émulateur ou «ICD», MPLAB essaie d établir le contact avec l émulateur ou le PIC distant. En cas d impossibilité, une boîte de dialogue apparaît. 1.3) OUTILS D ASSEMBLAGE / COMPILATION Plusieurs compilateurs / assembleurs peuvent être utilisés. Un assembleur est livré avec MPLAB : MPASM. Les autres peuvent être achetés. (pour le choix du compilateur / assembleur, voir plus loin). Avant de pouvoir choisir une chaîne de compilation / assemblage (compilateur / assembleur / éditeur de liens) pour un projet, il faut spécifier les chemins d accès des fichiers exécutables avec la commande Project / Install Language Tools Microchip a prévu de pouvoir choisir un des compilateurs suivants : Byte Craft HiTech IAR CCS Microchip MPLAB de Microchip / P. Morenton, LT PE Martin 5

D autres compilateurs peuvent s interfacer avec MPLAB à condition qu ils fournissent les fichiers :.ini et.mtc pour que le nom du compilateur apparaisse dans la liste de choix et que les options de compilation apparaissent dans la boîte de dialogue de la configuration d un nœud du projet.cod après la compilation pour le déboguage MPLAB est prévu pour s interfacer directement avec le compilateur C HiTech. Attention : lorsque le compilateur HiTech est interfacé avec MPLAB, il n est pas possible d utiliser les données de type bit (extension du C ANSI) lors d un déboguage 2) MODE ÉDITION (CHAÎNE D ASSEMBLAGE / COMPILATION) En mode édition, MPLAB est un EDI de compilation / assemblage. L interface graphique permet de configurer et exploiter les différents outils suivants : un gestionnaire de projet un éditeur de texte un assembleur (Microchip MPASM ou autre) un compilateur C (Microchip ou autre) un éditeur de liens un visualisateur de messages Les fenêtres sont interactives dans certains cas. Un double clic sur la fenêtre des messages d'erreurs ouverte après un assemblage renvoie à la ligne concernée dans le programme source. 2.1) ORGANISATION DU TRAVAIL L EDI travaille avec des projets. Un projet correspond à : un ensemble de fichiers sources, fichiers objets, fichiers bibliothèques, fichiers de listage, des options pour les différents outils (assembleur, compilateur, éditeur de liens, etc) le mode de développement choisi A chaque projet est associé un fichier.pjt qui contient les références des différents fichiers source, les options définies à l aide de boîtes de dialogues, etc. La partie utile au programmeur de ce fichier est visible avec la commande Windows / Project. Ce fichier est un fichier texte qu il est possible d éditer avec n importe quel éditeur de texte. Voir l annexe. Dans le cas d une application avec un seul fichier source en langage d assemblage, il n est pas nécessaire de créer un projet pour obtenir un fichier exécutable. Il est cependant recommandé de le faire, car un fichier projet permet de mémoriser de nombreuses informations. Dans tous les autres cas, un projet doit nécessairement être créé pour l obtention d un fichier exécutable. Les informations mémorisées dans le fichier projet contiennent les fenêtres ouvertes, la configuration des points d arrêt pour le débogage (voir plus loin), les bits de configuration du µc. MPLAB de Microchip / P. Morenton, LT PE Martin 6

2.2) TERMINOLOGIE MPLAB Le fichier final exécutable (lors du débogage ou après programmation du composant) s appelle le fichier cible (Target File). C est aussi un nœud du projet (Project Node). Les nœuds source (Node Source) sont les fichiers utilisés pour la création du fichier final. Ce sont aussi des fichiers du projet (Project Files). Ils comprennent: les fichiers source en langage d assemblage les fichiers source en langage C les fichiers objets résultants d assemblages ou de compilations précédents les fichiers bibliothèques utilisateur le fichier de commande de l éditeur de liens (Linker Script) 2.3) CONSTITUTION D UN PROJET Un projet est constitué de : un fichier cible ou nœud du projet (extension par défaut.hex) un mode de développement (qu on peut changer au cours de l évolution du projet) d une suite logicielle pour l assemblage, la compilation et l édition de liens (qu on ne peut plus changer en cours de projet) de fichiers du projet ou nœuds (extension asm, c ou obj) auxquels sont associés des propriétés correspondant à des options pour les outils (assembleur, compilateur, éditeur de liens) utilisés avec ces nœuds 2.4) LES NŒUDS ET LEURS PROPRIÉTÉS Les propriétés sont des options des logiciels utilisés. Elles dépendent donc de ceux-ci. Pour fixer les options, il faut sélectionner un fichier (un nœud) et cliquer sur le bouton Node Properties de la boîte de dialogue Edit Project (voir plus loin) Type de projet Nœuds du projet Opérations à réaliser pour la construction du fichier cible Outil concerné par les propriétés du fichier cible (.hex) Outil concerné par les propriétés des fichiers source 1 seul fichier source en langage d assemblage 1 fichier cible.hex 1 fichier source.asm assemblage absolu du fichier source plusieurs fichiers source en langage d assemblage 1 fichier cible.hex plusieurs fichiers source.asm éventuellement fichier(s) objet.obj assemblages relogeables + édition de liens fichier(s) source en langage C 1 fichier source.hex fichiers source.c éventuellement fichier(s) source.asm éventuellement fichier(s) objet.obj compilation(s) + édition de liens assembleur éditeur de liens éditeur de liens aucun assembleur compilateur MPLAB de Microchip / P. Morenton, LT PE Martin 7

Les fichiers.obj résultent d assemblages ou de compilations précédentes. 3) MODE DÉBOGAGE (SIMULATION, EMULATION, ICD) Dans ce mode, toutes les fonctionnalités du mode éditeur sont disponibles. Les options du menu Debug sont disponibles en plus. Avant de pouvoir utiliser un émulateur ou la possibilité ICD, il faut configurer correctement la liaison avec l émulateur ou la carte d interfaçage ICD. Ceci s effectue avec une boîte de dialogue présentée plus loin. Les possibilités du débogage sont classiques : fonctionnement en pas à pas fonctionnement jusqu à un point d arrêt visualisation et modification de contenu de registres ou de zone mémoire etc C est la même fenêtre de l éditeur de texte qui est utilisée pour suivre le déroulement du programme que celle pour l édition du programme avant assemblage ou compilation. Certaines possibilités du débogage sont communes à tous les modes de développement (simulation, émulateur, mode ICD). D autres sont spécifiques à certains modes. Au 7, on commence par décrire les possibilités communes à tous les modes de débogage. Le 8 est un complément pour la simulation, le 9 est un complément pour le mode ICD et le paragraphe 10 est un complément pour l émulateur ICE 2000. 4) ENVIRONNEMENT DE DÉVELOPPEMENT INTÉGRÉ L environnement de développement intégré comporte les particularités suivantes : BARRE D OUTILS PARAMÉTRABLE La signification de chaque icône est brièvement décrite dans la barre d état en bas à gauche. L icône de gauche permet de changer de barre d outils. La barre d outils ci-dessus est la barre standard (utilisateur, avec les icônes par défaut). La barre choisie est rappelée dans la dernière case de la barre d état. MPLAB de Microchip / P. Morenton, LT PE Martin 8

L utilisateur a le choix entre 4 barres d outils : utilisateur (User) édition (Edit) débogage (Debug) projet (icônes vertes) (Proj) Les barres d outil peuvent être modifiées avec Options / Environment Setup / General / Toolbar Layout. BARRE D ÉTAT La barre d état contient de nombreuses informations. Celles-ci dépendent du contexte. Il est possible de double cliquer sur certaines cases de la barre d état pour ouvrir les boîtes de dialogue correspondantes. La barre d état est présentée ci-dessous avec une description des cases ainsi que l indication des cases modifiables par double clic. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 # Description action double clic 1 Version de MPLAB ou line / colonne de la fenêtre ouverture de la boîte de dialogue Goto active Line 2 Nombre de ligne du fichier ouvert dans la fenêtre - active 3 # indique un changement de la fenêtre active depuis - le dernier enregistrement 4 Type de fenêtre : basculement d un mode à l autre pour lecture seule (RO : Read Only) pour lecture / modification (WR : Writable) 5 Wrap / No Wrap basculement d un mode à l autre 6 Mode Insertion (INS) / Remplacement (OVR : basculement d un mode à l autre OveRwrite) 7 Ref du µc cible - 8 Valeur du compteur programme ouverture de la boîte de dialogue Change Program Counter 9 Valeur du registre W - 10 Valeurs des bits d états. Lettre en majuscule bit à - 1 ; lettre en minuscule bit à 0 11 Validation (Bk On) / Désactivation (Bk Off) des basculement d un mode à l autre points d arrêts 12 Mode de développement : Editeur seul (EO : Editor ouverture de la boîte de dialogue Development Only) / Simulation (Sim) / ICD / ICE Mode à l onglet Tools 13 Fréquence d horloge ouverture de la boîte de dialogue Development Mode à l onglet Clock 14 Nom de la barre d outil affichée MPLAB de Microchip / P. Morenton, LT PE Martin 9

OPTIONS Les options sont fixées avec Options / Environment Setup Onglet General La partie Screen Font concerne le codage et l aspect des caractères des fenêtres d édition des fichiers source. Les codes des caractères accentués et de certains caractères (codes supérieurs à 126) sont différents entre Windows (code ANSI) et DOS (code OEM). System a le même codage qu ANSI, seul l aspect visuel des caractères change. Pour afficher correctement un texte comportant des caractères accentués saisi avec un éditeur DOS, il faut cocher OEM. L onglet Project permet de configurer les valeurs par défaut utilisées lors de la création d un nouveau projet. Il est possible de modifier ensuite ces valeurs par défaut. On peut fixer : la suite logicielle compilateur, assembleur, éditeur de liens : HiTech, IAR, Byte Craft, etc. les chemins de recherche pour les fichiers.h, les fichiers bibliothèques, etc. etc. L onglet Default Editor Modes permet de choisir la configuration par défaut de l éditeur : taille des tabulations largeur de la ligne avant saut automatique à la suivante indentation automatique sauvegarde ancienne version à chaque enregistrement etc. Il est possible pour le projet en cours de changer la configuration par défaut avec Options/ Current Editor Modes. 5) CONFIGURATION DE LA SUITE LOGICIELLE D ASSEMBLAGE / COMPILATION / EDITION DE LIENS AVANT UNE PREMIÈRE UTILISATION La configuration n est à effectuer qu une fois pour chaque suite logicielle. Il s agit de donner le nom et le chemin d accès des logiciels suivants : assembleur, compilateur et éditeur de liens. La configuration s effectue avec la commande Project / Install Language Tool. MPLAB de Microchip / P. Morenton, LT PE Martin 10

5.1) SUITE MICROCHIP La configuration a été faite lors de l installation. Il n y a rien à modifier normalement. Si une fausse manipulation a effacé les bonnes informations, il faut configurer comme suit : Language Suite Tool Name Executable Microchip MPASM Dossier_d installation\mpasmwin.exe Windowed MPLINK Dossier_d installation \MPLINK.EXE Command Line 5.2) SUITE HITECH VERSION 7 OU 8 C est le même exécutable qui lance l assemblage ou la compilation ou l édition de liens. La configuration est donc la même pour les 3 outils. Language Suite Tool Name Executable HI-TECH PIC-C Compiler Dossier_d installation\bin\picc.exe PIC-C Assembler Dossier_d installation\bin\picc.exe PIC-C Linker Dossier_d installation\bin\picc.exe Command Line Command Line Command Line Les versions 9 ne sont plus supportées par MPLAB 5.x 5.3) COMPILATEUR CC5X Pour une utilisation du compilateur CC5X avec MPLAB 5.x, il faut procéder aux opérations suivantes, après avoir installer le compilateur : copier les fichiers TLCC5X.INI et CC5X.MTC du dossier d installation de CC5X dans le dossier d installation de MPLAB (d autres fichiers.ini et.mtc existent déjà dans le dossier) configurer MPLAB La configuration de MPLAB concerne la suite logicielle. MPLAB de Microchip / P. Morenton, LT PE Martin 11

La configuration s effectue avec la commande Project / Install Language Tool. Il suffit d indiquer le nom de l exécutable avec son chemin d accès. Pour une utilisation de plusieurs fichiers source en langage C, il faut utiliser l éditeur de liens MPLINK de Microchip dont il faut donner le chemin d accès (Tool Name : MPLINK).Il est aussi possible de lier des fichiers objet créés avec CC5X et MPASM, l assembleur de Microchip. Le chemin d accès de ce dernier doit alors être défini. 6) LES DIFFÉRENTES ÉTAPES DE LA CRÉATION D UN FICHIER EXÉCUTABLE 6.1) MODE DE DÉVELOPPEMENT On peut fixer le mode de développement avant la création d un projet, pendant la création ou après la création, en cas de modification. L ouverture de la boîte de dialogue ci-contre s effectue avec la commande Options / Development Mode ou avec le bouton Development Mode / Change de la boîte de dialogue Edit Project présentée suivant. Certains onglets ne sont disponibles qu avec certains modes de développement (par ex, l onglet Ports n est disponible qu avec l émulateur). Remarque : le choix d un émulateur ou de ICD entraîne une liaison avec eux. Si l émulateur ou le module ICD n est pas présent, un message d erreur est généré. Voir plus loin pour la configuration de la liaison vers le module ICD. 6.2) CRÉATION / OUVERTURE / MODIFICATION D UN PROJET Attention : lors d une création d un projet, il n est pas possible de créer un nouveau dossier depuis MPLAB pour contenir les fichiers créés. Il faut donc créer le dossier indépendamment, avec l'explorateur de Windows par exemple. Création avec : Project / New Project Ouverture d un projet déjà existant avec Project / Open Project Modification avec : Project / Edit Project MPLAB de Microchip / P. Morenton, LT PE Martin 12

Dans tous les cas, la même boîte de dialogue est utilisée. Attention : la version 5.5 de MPLAB n ouvre pas correctement un projet créé pour la suite Logicielle HiTech avec une version antérieure à MPLAB 5.5 (mauvaise indication de la suite logicielle). Il faut soit recréer un nouveau projet et écraser l ancien fichier pjt soit utiliser l utilitaire ToolFix fourni par HiTech sur internet. Voir plus loin 6.2.4 Nom du fichier exécutable. Peut être différent de celui du projet Chemin de recherche pour les fichiers.h déclarés avec #include "NomFichier.h" si ceux-ci ne sont pas dans le dossier du fichier source qui les appelle. Chemin de recherche pour les bibliothèques fournies avec le compilateur si les dossiers d installation par défaut ne sont pas respectés (les bibliothèques utilisateurs sont déclarées dans Project Files). En général, ce champ n est pas rempli. Mode de développement et PIC cible Suite logicielle pour l assemblage, la compilation et l édition de liens Fichiers sources + bibliothèques utilisateur du projet Les propriétés d un nœud concernent des options pour le logiciel utilisé. Ce dernier dépend du type du fichier. Voir ci-dessous. Project Files Node Properties Add Node Copy Node permet de définir les propriétés d un nœud (voir ci-dessous) pour ajouter un nœud avec les propriétés par défaut pour ajouter un nœud en utilisant les propriétés du nœud sélectionné 6.2.1) CRÉATION DU PROJET / DÉFINIITION DU FICHIER EXÉCUTABLE Le nom du fichier exécutable prend par défaut le nom donné au projet. Il est possible de modifier ceci. Lors de la création du projet, il faut commencer par définir (voir 2.3) : Le mode de développement, le µc utilisé La suite logicielle utilisée Pour pouvoir ajouter des fichiers source, il faut commencer par définir les propriété du nœud du projet (fichier cible ou exécutable), avec le bouton «Node Properties». Les propriétés du fichier cible dépendent de la suite logicielle. Voir ci-dessous. MPLAB de Microchip / P. Morenton, LT PE Martin 13

6.2.2) AJOUT DE FICHIER SOURCE Cette étape peut avoir lieu à la création du projet ou ensuite. Il est possible d ajouter un ou plusieurs fichiers existants ou de donner le nom d un ou plusieurs fichiers à créer. Dans ce dernier cas, chaque fichier devra ensuite être crée avec le nom mentionné dans le dossier spécifié. Les fichiers source peuvent être placés dans n importe quel dossier. Si le projet doit être déplacé, il est plus simple de placer les fichiers source dans le même dossier que le fichier du projet. Propriétés associés à chaque fichier Ces propriétés dépendent des suites logicielles. Voir ci-dessous. 6.2.3) PROPRIÉTÉS ASSOCIÉES AUX FICHIERS SELON LES SUITES LOGICIELLES Voir 2.4) pour les outils associés à chaque fichier. Les propriétés sont fixées en sélectionnant un fichier dans la boîte de dialogue et en cliquant sur Node Properties. Il faut d abord choisir l outil dans la liste déroulante Language Tool puis ensuite les options. Suite Microchip (Assemblage uniquement) Propriétés Fichier cible Propriétés Fichier(s) source Assemblage absolu avec 1 seul fichier source Outil : MPASM (assembleur) Options : par défaut pour cas simple Bouton Node Properties non accessible Plusieurs fichiers source Outil : MPLINK Options : voir doc détaillée Outil : MPASM (assembleur) Options : voir doc détaillée MPLAB de Microchip / P. Morenton, LT PE Martin 14

Suite Hi-Tech On ne considère que le cas de fichiers source dont au moins un est en langage C. Propriétés pour le fichier cible : Il faut choisir Language Tool : PIC-C Linker et cocher les options comme suit Options les plus courantes Option Utilité / Remarque Nom de l option pour HiTech Generate Debug Indispensable pour débogage. -fakelocal Info Il est possible mais non indispensable de spécifier un nom -G pour le fichier qui contient les infos pour le débogage dans la colonne Data -fakelocal permet d observer les variables locales. Hex Format Map File Display Complete Memory Usage Doit être nécessairement Intel Génération de la cartographie mémoire. Il est possible de préciser un fichier contenant les informations dans la colonne Data. Si aucun nom n est donné, les informations sont affichées à l écran après l édition de liens Génération d une cartographie mémoire plus détaillée qu avec l option précédente. Les sections du programme (program section, PSECT) sont mentionnées Error file Permet de générer un fichier avec la liste des erreurs -E Compile for -ICD MPLAB ICD Propriétés pour utilisation avec le noyau temps réel Salvo. -M -PSECTMAP MPLAB de Microchip / P. Morenton, LT PE Martin 15

Il faut ajouter les chemins de recherche pour les fichiers include avec l option de la ligne de commande -Ichemin_d accès où le chemin d accès est celui du dossier Include de Salvo. Exemple de chemin d accès \Program Files\Salvo\Include. Il ne faut pas placer d espace entre I et le chemin d accès complet. Il faut mentionner la lettre du lecteur si le dossier à atteindre n est pas placé sur le même disque logique que MPLAB et HiTech. Propriétés pour un fichier source en langage C : Il faut choisir Language Tool : PIC-C Compiler et cocher les options comme suit Options les plus courantes : MPLAB de Microchip / P. Morenton, LT PE Martin 16

Option Utilité / Remarque Nom de l option pour HiTech Generate Debug Indispensable pour débogage. -G Info Il est possible mais non indispensable de spécifier un nom -fakelocal pour le fichier qui contient les infos pour le débogage dans la colonne Data -fakelocal permet d observer les variables locales. Local Optimization Optimisation après la passe de compilation, avant -O l assemblage Global Optimi- Option lors de la compilation. Il faut préciser dans la co- -Zg zation Floating Point for Double Produce assembler List File Compile for MPLAB ICD lonne Data une valeur de 1 à 9. Taille pour les réels de type Double/ Pour diminuer l occupation mémoire, les «double» peuvent être codés sur seulement 24 bits Permet de générer un fichier de listage après la compilation -D24 ou D32 -ASMLIST -ICD 6.3) EDITION DU OU DES FICHIERS DU PROJET L édition s effectue avec l éditeur intégré. La fenêtre de l éditeur peut aussi être utilisée lors du débogage pour suivre l évolution du programme. La création ou l ouverture d un fichier s effectue avec File/New et File/Open. Les commandes d édition sont classiques (copier, couper, coller, etc). Elles sont disponibles avec le menu Edit ou les icônes standard ou les raccourcis standard (CTRL + C, CTRL + X, CTRL +V, etc.). L éditeur est multifichier. Il est configurable : globalement, pour tous les fichiers édités avec la commande Options / Environment Setup / Default Editor Modes localement pour le fichier en cours d édition avec la commande Options / Current Editor Modes On peut notamment choisir la taille des tabulations et l indentation automatique. Attention : Avec la version 5.5 et les versions précédentes, un «bug» fait que si toutes les possibilités de MPLAB ne sont pas installées (programmateur PIC Start par exemple), la sélection du document actif (déjà ouvert) s effectue avec le menu Help et non le menu Windows comme cela devrait être. MPLAB de Microchip / P. Morenton, LT PE Martin 17

6.4) ASSEMBLAGE / COMPILATION / ÉDITION DE LIENS Dans le cas de projets avec plusieurs fichiers source, il est possible d assembler ou de compiler individuellement chaque fichier source puis de réaliser une édition de liens. L assemblage ou la compilation a lieu en sélectionnant le fichier source dans une fenêtre d édition et en cliquant sur Project / Build Node sélectionnant le fichier source dans la fenêtre d édition du projet (Project / Edit Project) et en cliquant sur Build Node L édition de liens a lieu en sélectionnant le fichier cible dans la fenêtre d édition du projet et en cliquant sur Build Node Il est aussi possible de construire le projet avec la commande Project / Make Project ou l icône entonnoir (les fichiers source entrent et des 0 1 ressortent). Dans ce cas, tous les fichiers modifiés depuis le dernier assemblage ou compilation sont assemblés ou compilés et l édition de liens a lieu. Pour l utilisation avec le compilateur Hitech, voir ci-dessous. UTILISATION AVEC COMPILATEUR HI-TECH Compilation A chaque fois que la construction du fichier exécutable est demandée, tous les fichiers source du projet sont compilés, même s ils avaient été précédemment compilés et qu aucune modification des fichiers source n a eu lieu, puis l édition de liens a lieu. Erreurs et messages Avec Windows 95 ou 98, une interactivité entre la fenêtre des messages et la ou les fenêtres d édition (un double clic sur un message d erreur renvoie à la ligne de l erreur dans la fenêtre d édition) est possible à condition d insérer les lignes suivantes dans l autoexec.bat : SET HTC_ERR_FORMAT=Error[ ] file %%f %%l : %%s SET HTC_WARN_FORMAT=Warning[ ] file %%f %%l : %%s Avec Windows 2000 ou XP,?? Lorsque certaines erreurs surgissent lors de la compilation d un programme source, un message peu clair apparaît dans la boîte de dialogue Build Results, ne donnant aucune indication sur l origine de l erreur Pour visualiser correctement les messages délivrés par le compilateur Hitech, il faut exécuter la ligne de commande DOS, automatiquement générée par MPLAB, dans une fenêtre DOS. Pour cela, après compilation, copier la ligne de commande DOS depuis la boîte de dialogue Build Results. Cette ligne de commande est de la forme : Command line: "C:\HT-PIC\BIN\PICC.EXE -G -D24 -E -ASMLIST - FAKELOCAL -16F877 -C C:\TRAVPROF\ZIP1\PROJET~1\PROGS\SMOD2MAT\MAIN.C" Ouvrir ensuite une session DOS dans une fenêtre avec la commande Démarrer / Programmes / Commandes MSDOS, coller la ligne de commande (ceci n est possible que si la commande MPLAB de Microchip / P. Morenton, LT PE Martin 18

MSDOS s exécute dans une fenêtre), puis exécuter la ligne de commande en appuyant sur la touche Entrée. Avec Windows XP, il faut utiliser la commande Démarrer / Programme / Accessoires / Invite de commande puis utiliser le menu contextuel pour coller. Les messages délivrés par le compilateur apparaissent dans la fenêtre MSDOS. 7) LES POSSIBILITÉS COMMUNES À TOUS LES MODES DE DÉBOGAGE : SIMULA- TION, ÉMULATION, ICD Le débogage peut s effectuer après construction d un projet. Le débogage permet de suivre l évolution des différents registres ou variables, en fonction des instructions déjà exécutées, dans des fenêtres d observation. En cours de débogage, il est possible de modifier le contenu de certains registres ou variables. Le débogage peut s effectuer : en pas à pas, une seule instruction est exécutée puis toutes les fenêtres sont mises à jour en continu, l exécution s arrête uniquement après un arrêt déclenché par l utilisateur ou par un point d arrêt Un point d arrêt est une condition qui permet d arrêter l exécution du programme et de mettre à jour les fenêtres d observation ouvertes. Les interruptions générées par les Timers sont prises en compte. Les commandes de débogage sont lancés par : le menu Debug / Run le menu Debug / Execute le menu Windows / Modify pour modifier le contenu de registres ou d emplacement mémoire ou par les raccourcis de la barre d outils. 7.1) FENÊTRES DE DÉBOGAGE Durant le débogage, on peut vérifier simultanément les évolutions suivantes dans différentes fenêtres : fenêtre instruction dans programme source édition (le programme (langage d assemblage ou langage C) source doit être ouvert) instruction dans mémoire programme Program Memory instruction dans le fichier de listage (uniquement pour un fichier source en langage d assemblage) ouverture File / Open Windows / Program Memory ou icône ROM Windows / Absolute Listing totalité de l ensemble de registres File Register Windows / File Register ou icône RAM totalité des registres à fonction spéciale Special Funciton Register Windows / Special Function Register ou icône SFR MPLAB de Microchip / P. Morenton, LT PE Martin 19

registres ou variables désignés Watch Windows / New Watch Windows ou Load Watch 1 ou icône lunettes pile 2 Stack Windows / Stack 1 : pour ajouter de nouveaux registres ou de nouvelles variables à une fenêtre déjà ouverte, il suffit de faire apparaître un menu en cliquant sur l icône en haut à gauche de la fenêtre. 2 : L observation de la pile n est pas possible en mode ICD. Lorsqu on réalise un déboguage depuis un fichier source en langage C, il n est pas possible de suivre l évolution du programme dans le fichier de listage obtenu lors de la compilation. On voit ci-dessous MPLAB avec quelques fenêtres ouvertes Il est possible de modifier le contenu de registres ou de variables visualisés dans une fenêtre. Un double clic sur un nom de registre ou une adresse entraîne l ouverture d une boîte de dialogue. Voir ci-dessous Modifications de registres ou variables. FENÊTRE D OBSERVATION DE VARIABLES (WATCH) MPLAB de Microchip / P. Morenton, LT PE Martin 20

Pour visualiser une nouvelle variable, il faut d abord ouvrir une nouvelle fenêtre d observation avec la commande Window/ Watch Windows / New Watch Window ou ajouter une variable dans une fenêtre d observation déjà ouverte avec le menu système et la commande Add Watch La boîte de dialogue ci-contre apparaît : On peut rentrer une adresse en hexadécimal, un identificateur défini. Tous les identificateurs définis peuvent être choisis dans la liste. Pour la désignation des variables locales, voir plus loin. Après avoir désigné une variable dans la boîte de dialogue Add Watch Symbol, il faut définir ses propriétés si ce ne sont pas celles par défaut : variable sur 1 octet, valeur affichée en hexadécimal. Byte Order concerne l ordre de rangement des poids faibles et des poids forts d une variable lorsque celle-ci est codée sur 2 octets ou plus. Cet ordre dépend du compilateur ou de l assembleur utilisé. HiTech utilise l ordre poids faible (à l adresse basse) poids fort (à l adresse haute) Il est possible de donner le nom d un registre, d une variable simple ou son adresse. Pour les variables locales, voir ci-dessous. Visualisation de variables lors de l utilisation de fichier source en langage C Il est possible de visualiser des variables de type simple ou pointeur ou un champ d une union, à partir de leur identificateur. Pour une union, seul le nom de l union apparaît dans la liste de la boîte de dialogue Add Watch Symbol. Les noms des différents champs ne sont pas mentionnés. Pour les variables de type tableau ou structure, il n est possible de visualiser que le 1 er élément ou champ à partir de l identificateur. Pour visualiser les autres, il faut calculer leurs adresses à partir de l adresse de base donnée dans la fenêtre d observation en face de l identificateur du tableau ou de la structure. Il faut ensuite entrer l adresse dans la boîte de dialogue. Variable locale définie dans un fichier source en C compilé avec Hi-Tech MPLAB de Microchip / P. Morenton, LT PE Martin 21

Pour observer une variable locale, il faut donner son nom précédé de NomFonction. Par exemple la variable i locale à main s'appelle main.i HiTech utilise l ordre poids faible (à l adresse basse) poids fort (à l adresse haute) Il est impossible de réaliser un débogage avec un programme contenant des données de type bit (extension du C ANSI). Voir document de présentation du compilateur HiTech. Valeurs des pointeurs définis en langage C avec le compilateur HiTech Un pointeur déclaré const qui permet l accès à tout l espace mémoire est codé sur 16 bits (2 octets consécutifs rangés dans l ensemble de registres dans l ordre poids faible poids fort). S il pointe sur la RAM, le MSB de sa valeur est à 1. Les 2 chiffres hexadécimaux les moins significatifs correspondent à l adresse véritable de la donnée pointée. S il pointe sur la ROM, sa valeur correspond à l adresse véritable de la donnée pointée. 7.2) COMMANDES DE DÉBOGAGE Les différentes commandes de débogage présentées ici sont celles lancées par le menu Debug / Run ou par quelques icônes ou encore avec le menu contextuel. Commande / icône Run Exécution continue Animate Animation Exécution continue avec temporisation sur chaque instruction Halt Arrêt Step Pas à pas Step Over Pas à pas non approfondi Reset RàZ action Exécute le programme, jusqu au prochain point d arrêt, sans mettre à jour les fenêtres ouvertes durant l exécution Exécute le programme en pas à pas, avec temporisation entre chaque instruction, en mettant à jour les fenêtres visualisées 1 Met fin à l une des 2 commandes ci-dessus Exécute une instruction, puis met à jour les fenêtres ouvertes 1 Idem ci-dessus, mais lorsque l instruction est un appel de sous programme (ou une fonction en C 2 ) le sous programme ou la fonction est exécutée complètement et l arrêt a lieu au retour remise à zéro du PIC (réinitialisation du compteur programme) MPLAB de Microchip / P. Morenton, LT PE Martin 22

1 : Toutes les fenêtres ne sont pas forcément mises à jour ; cela dépend de la fenêtre active. Si la fenêtre active est le fichier source, toutes les fenêtres sont mise à jour. Si la fenêtre active est une fenêtre de registres, la fenêtre du fichier source n est pas mise à jour. 2 : Cette commande ne fonctionne pas avec la suite logicielle hitech. D autres commandes sont accessibles en fin du menu Debug. Debug / Power-On-Reset : fait apparaître la boîte de dialogue ci-contre : Les commandes du menu contextuel sont disponibles lorsqu on place le pointeur sur : une ligne valide dans une fenêtre d édition (pour le fichier source) une ligne valide dans une fenêtre de visualisation du fichier de listage (uniquement pour un fichier source en langage d assemblage avec la suite logicielle Microchip) une ligne de la fenêtre Program Memory Une ligne valide est une ligne qui correspond à une instruction. Avec un programme source en langage C, une ligne valide ne peut être un appel de fonction. Le menu contextuel est le suivant : Il permet de : placer un point d arrêt sur une ligne valide (voir ci-dessus) configurer la mémoire de trace (voir 8.2) placer un point de déclenchement lancer l exécution jusqu à la ligne pointée Il n est pas possible de placer un point d arrêt sur un programme du style : void main(void) { Init(); for (;;) { GestionRS232(); GestionCdesEtMsgs(); ReglageDateHeure(); } } Ce programme ne contient que des appels de fonctions et une boucle sans fin. Il est impossible de placer un point d arrêt sur for( ;;) (au moins avec un programme compilé avec la suite logicielle Hitech). Pour placer un point d arrêt, il faut aller sur une ligne valide d une des fonctions. 7.3) POINTS D ARRÊT Les points d arrêt sont utilisés en mode «Run». Un point d arrêt est une condition qui permet d arrêter l exécution du programme et de mettre à jour les fenêtres d observation ouvertes. Selon le mode de débogage, il peut y avoir des possibilités différentes. La seule possibilité commune à tous les modes est le point d arrêt sur adresse ou sur une ligne dans une fenêtre d édition pour une programme source en langage C. MPLAB de Microchip / P. Morenton, LT PE Martin 23

Même dans ce cas, il existe des différences notables entre le mode simulation et le mode ICD. Les points d arrêt sont validés / dévalidés globalement avec la boîte de dialogue Development Mode. Cette boîte est ouverte avec les commandes : Project / Edit Project / Development Mode / Change Options / Development Mode La boîte ci-dessus est celle apparaissant en mode ICD. Dans les autres modes, les options en grisé sont disponibles. 7.4) MODIFICATIONS DE REGISTRES OU VARIABLES 2 procédures : double clic sur un nom de registre ou de variable dans une fenêtre d observation commande Window / Modifiy La boîte de dialogue ci-contre s ouvre. Il suffit de la remplir. Le compteur programme peut aussi être modifié avec la commande Debut / Run / Change Program Counter (possibilité non disponible en mode ICD). 7.5) INTERRUPTIONS Les interruptions sont prises en compte dans tous les modes, avec des restrictions pour la simulation. 8) SIMULATION 8.1) GÉNÉRALITÉS Le simulateur évalue les stimuli d entrées (simulés) et génère les sorties après chaque exécution d une instruction. Il est donc impossible d appliquer un stimuli plus petit q un cycle machine (4 Tosc). MPLAB de Microchip / P. Morenton, LT PE Martin 24

Le simulateur permet de simuler le fonctionnement des E/S timer interruptions générées par les timers CAN (avec résultat égal à 0, ADGO est correctement simulé) Le temps réel écoulé avant la modification d un drapeau d un timer ou la prise en compte d une interruption générée par un timer en mode exécution continue (run) dépend de la «puissance» de l ordinateur sur lequel est exécuté le programme de simulation. Par exemple, une interruption devant survenir au bout de 100ms avec un PIC avec un oscillateur à 16MHz met plusieurs dizaines de secondes pour survenir avec un PC Pentium 133 MHz. Pour voir le temps PIC s écoulant, il faut ouvrir une fenêtre Stopwatch. En exécution continue (run), cette fenêtre est mise à jour toutes les secondes environs. Le simulateur ne permet pas de simuler les liaisons séries asynchrones ou synchrones en transmission. Pour la liaison série asynchrone, les indicateurs TXIF (USART Transmit Interrupt Flag), TMRT (Transmit Shift Register Status Bit), etc., ne sont pas gérés. Ils sont toujours à 0. En mode simulation, il faut désactiver les boucles d attente du genre : while (TXIF==0) ; 8.2) FENÊTRES ET COMMANDE DE DÉBOGAGE SPÉCIFIQUES Fenêtre Ouverture nombre de cycle machine et Stopwatch Windows / Stopwatch temps d exécution 1 Mémoire de trace Trace Memory Windows / Trace Memory 1 : La fenêtre affiche correctement le temps d exécution écoulé jusqu à la dernière instruction exécutée que si la fréquence de l oscillateur a été indiquée au simulateur dans la boîte de dialogue Development Mode (ouverte avec la commande Options / Development Mode) La mémoire de trace permet d enregistrer les instructions exécutées pour analyse. Pour la mémoire de trace, voir plus loin. 8.3) POINTS D ARRÊT DU SIMULATEUR Le simulateur autorise plusieurs types de points d arrêt : sur une adresse, valeur numérique ou étiquette lorsque la mémoire de trace est pleine lorsqu il y a un débordement de pile lorsque le chien de garde demande une RàZ POINT D ARRÊT SUR ADRESSE MPLAB de Microchip / P. Morenton, LT PE Martin 25

Pour placer un point d arrêt, 2 possibilités : placer le pointeur sur une instruction dans la fenêtre d édition ou programme ou listage absolu et cliquer sur le bouton droit de la souris boîte de dialogue. Cliquer sur Break Point(s) commande Debug / Break Settings. La boîte de dialogue suivante apparaît Cette boîte de dialogue permet de créer et de modifier un ensemble de points d arrêts désignés par un titre. Chaque titre correspond à : un point d arrêt unique plusieurs points d arrêt compris entre un début et une fin. Pour placer un seul point d arrêt, il suffit de remplir uniquement Start. En Start ou End on peut placer une étiquette une valeur en hexadécimal Si on utilise une étiquette, on peut utiliser des expressions du type Debut + 2. Lorsqu un point d arrêt est placé dans la liste et sélectionné, il est possible de cocher Address is Qualifier. Cette possibilité est intéressante surtout avec une adresse unique. Pass Count permet de déterminer le nombre de passages sur l adresse avant d arrêter l exécution du programme. AUTRES POINTS D ARRÊT Les autres points d arrêt sont configurés avec la boîte de dialogue Development Mode. L onglet Configuration permet d autoriser un point d arrêt lorsque le chien de garde génère une RàZ MPLAB de Microchip / P. Morenton, LT PE Martin 26

L ongle Break Options permet d autoriser un point d arrêt lorsque : la mémoire de trace est pleine la pile déborde POINT D ARRÊT SUR VALEUR D UN REGISTRE Ce type de point d arrêt est particulier dans le fonctionnement du simulateur. Une fenêtre spécifique est utilisée pour la programmation et l observation des résultats. La commande pour l ouverture de la fenêtre spécifique est Debug / Execute / Conditionnal Break. Il est possible de définir une condition sur la valeur d un registre pour provoquer l arrêt de l exécution. Une fois la programmation terminée, il faut lancer l exécution depuis la boîte de dialogue. Une zone de cette boîte contient la liste des instructions exécutées avant l arrêt. Les autres fenêtres d observation ne sont pas mises à jour. Pour plus de détail, voir la documentation Microchip. Attention : Si la boîte de dialogue est mal programmée, l exécution d un programme peut ne plus être arrêtée après son lancement en dehors de la boîte de dialogue. Il semble que l une des 2 options Single Cycles ou Multiple Cycle doit absolument être cochée. A vérifier. 8.4) MÉMOIRE DE TRACE La mémoire de trace permet d enregistrer les instructions exécutées pour analyse. La mémoire de trace ne se remplit qu avec les instructions qui ont été spécifiées. La mémoire de trace se remplit même si la fenêtre de visualisation n est pas ouverte. Avec le simulateur, la mémoire de trace permet d enregistrer 8000 instructions. MPLAB de Microchip / P. Morenton, LT PE Martin 27

Pour spécifier des instructions plusieurs possibilités : à partir du fichier source dans la fenêtre d édition ou de la fenêtre programme ou de la fenêtre de listage absolu avec la commande Debug / Trace Settings Pour la commande à partir d une fenêtre d observation, il faut se placer sur un ligne ou sélectionner une ou plusieurs lignes avec les commandes usuelles (touche décalage + clic souris pour sélectionner un bloc). Un clic avec le bouton droit ouvre la boîte de dialogue qui contient Trace Point(s). La commande Debug / Trace Settings ouvre une boîte de dialogue Trace Points Setting très proche de la boîte de dialogue Break Points Setting. Pour l utilisation, se référer au Point d arrêt sur adresse. La mémoire de trace est mise à jour après chaque arrêt de l exécution, c est à dire après un pas une exécution continue suivie d un point d arrêt Pour les divers points d arrêt, voir plus haut. Il y a plusieurs options pour la présentation du résultat. Avec l option Source and Disassembly Display, chaque ligne se présente de la façon suivante : bnz BclTempo 247505.00us 247505 0017 1D03 btfss 0x3,0x2 ; 247505.00us 247505 Les temps correspondent aux durées écoulées depuis le début de l exécution du programme qui suit une RàZ. Le dernier chiffre correspond au nombre de cycles machine exécutés. L arrêt d enregistrement dans la mémoire de trace s effectue avec la commande Debug / Run Halt Trace 8.5) EXECUTION D UNE INSTRUCTION Il est possible d exécuter une instruction, sans modifier le compteur programme. La commande est Debug / Execute / Execute an Opcode. Il faut rentrer le mnémonique de l instruction avec la syntaxe de l assembleur MPASM. 8.6) APPLICATION D UN STIMULUS Lorsqu'un port d E/S est programmé en entrée, il est possible de simuler un signal externe appliqué sur l'une de ses broches : un stimulus. Il faut d abord programmer un stimulus puis ensuite le valider. MPLAB de Microchip / P. Morenton, LT PE Martin 28

Pour programmer un stimulus, il faut utiliser la commande Debug / Simulator Stimulus / Asynchronous Stimulus La boîte de dialogue suivante apparaît : Il faut placer le pointeur de la souris sur le premier bouton non programmé (Sim x (P)) puis cliquer avec le bouton droit. Une nouvelle boîte de dialogue apparaît Avec Assign Pin on peut choisir une broche. Pulse / Low / High / Toggle permet de choisir le type de stimulus. Après programmation, les légendes des boutons changent : Lorsque tous les stimuli sont programmés, on peut activer un stimulus en cliquant sur le bouton correspondant (la boîte de dialogue Asynchronous Stimulus Dialog» doit rester ouverte). 9) UTILISATION DU MODE ICD Avec les versions MPLAB jusqu à 5.6, le mode ICD n est utilisable qu avec un µc cible de la série PIC16F87x. Avec la version 5.7, le mode ICD2 est disponible, avec utilisation d un nouveau module d interface. Il ne s applique qu à quelques PIC18F. Le mode ICD permet de : programmer le µc, en vue d une utilisation normale ou d un débogage «in circuit» réaliser un débogage «in circuit» après une programmation La configuration de la liaison entre le module ICD et l ordinateur s effectue avec la même boîte de dialogue que la programmation du µc, etc. 9.1) CONFIGUATION DE LA LIAISON PC / MODULE ICD ET PROGRAMMATION DU µc Le choix du mode de développement ICD ouvre la fenêtre suivante Il est possible de choisir : le port de la liaison série la vitesse de transmission (choisir la plus haute) les informations retournées par le module ICD lors du débogage (choisir Minimum & Watch windows dans la plupart des cas) MPLAB de Microchip / P. Morenton, LT PE Martin 29

Plus il y a d informations échangées plus le temps de transmission est long, ce qui peut ralentir assez fortement le fonctionnement en pas à pas. Cette boîte de dialogue renvoie les informations suivantes : l état de la programmation ou du débogage (Status) la version du logiciel de la carte ICD (FirmWare F/W) Pour que la programmation et le débogage puissent s effectuer, il ne faut jamais fermer cette boîte de dialogue. Remarque 1 : Pour le port de la liaison série, le choix peut s effectuer entre COM1, COM2, COM3, COM4 uniquement. Si un ordinateur ne possède que COM1 sur la carte mère et dispose de COM5 et COM6 avec une carte additionnelle, ces derniers ports ne sont pas reconnus par MPLAB. Remarque 2 : si le module ICD n est pas connecté à l ordinateur, un message d erreur est généré. 9.2) PROGRAMMATION ET VÉRIFICATION DU µc La programmation est différente selon que l on souhaite réaliser un débogage ensuite ou faire fonctionner normalement l application. Dans le cas où on souhaite réaliser un débogage, il faut enregistrer le programme exécutable en mémoire programme ainsi qu un programme moniteur placé lui aussi en mémoire programme de 1F00 à 1FFF. Ceci s effectue lorsque Enable Debug Mode est coché dans la boîte de dialogue ICD Options. Dans ce cas, un projet doit obligatoirement être ouvert et les informations de débogage doivent être générées lors de la compilation, au moins pour les fichiers qui contiennent les programmes à déboguer. Dans le cas où on souhaite réaliser une programmation simple pour faire fonctionner l application de manière autonome, il ne faut pas cocher l option Enable Debug Mode. Un projet peut être ouvert ou non. Si un projet est ouvert, le programme à enregistrer est celui résultant de la compilation. Dans le cas contraire, il faut d abord charger le fichier.hex à programmer avec la commande File / Import / Import To Memory OPTIONS DE PROGRAMMATION MPLAB de Microchip / P. Morenton, LT PE Martin 30