Micro contrôleurs Microchip Outil de developpement MPLAB Programmation Micro contrôleurs Microchip Outil de developpement MPLAB © T.Berenguer Mars 2006
Les outils La mise au point d’un programme nécessite l’utilisation d’outils : Logiciels : Editeur : pour écrire le programme source Compilateur : pour transformer le source en fichier objet Simulateur : permet d’exécuter le programme sur le PC Matériels : Carte debugger : permet d’exécuter et de visualiser le déroulement du programme Carte cible : la carte qui sera utilisée dans l’application.
Outils logiciels d’écrire un programme source Le logiciel MPLAB de Microchip permet : d’écrire un programme source de le compiler (Compilateur C mcc18) On peut tester ce programme : en le simulant sur un PC en utilisant un debugger (ICD2) relié à la carte cible On peut ensuite programmer la carte : Par un programmateur dédié en utilisant l’ICD2 relié à la carte cible
Outils matériels In Circuit Debugger version2 C’est l’ICD2 qui permet la communication avec la carte cible Un PC + MPLAB Une carte cible
Etape 1 Création du projet
MPLAB A l’ouverture de MPLAB Gestion du projet Barre d’icones Compte rendu des actions de MPLAB Barre d’état
Assistant de création d’un projet Projet... Project Wizard...
Assistant de création d’un projet Cet assistant permet en 4 fenêtres de créer un projet. il suffit de connaître : Le nom du µC utilisé Le langage utilisé pour le programme Le dossier de destination et le nom du projet Les fichiers faisant partie du projet
Assistant de création d’un projet 1/4 1) Choix du µC
Assistant de création d’un projet 2/4 2) Choix du Langage Emplacements MPASM c:\mcc18\mpasm\mpasmwin.exe MPLINK c:\mcc18\bin\mplink.exe C18 mcc18 c:\mcc18\bin\mcc18.exe MPLIB c:\mcc18\bin\mplib.exe
Assistant de création d’un projet 3/4 3) Nom et dossier 3-1 Nommer le projet 3-2 Dossier de destination Il est souhaitable de mettre un seul projet par dossier et de lui donner le nom du projet. Il est aussi possible d’utiliser un dossier déjà existant. Si des fichiers sont dans ce dossier il ne seront pas détruits
Assistant de création d’un projet 4/4 4) Ajout de fichiers au projet... ...si il sont déjà dans le dossier
Assistant de création d’un projet Fin
Built options Librairies en c:\mcc18\lib Script en c:\mcc18\lkr
Clic droit sur le type de fichier à ajouter Les fichiers du projet Le projet est maintenant créé… On peut ajouter ou enlever des fichiers : Source files *.c *.asm fichiers C ou assembleur Header files * . h fichiers d’entête Library files * . lib librairie … Linker script * . lkr informations pour le linker Clic droit sur le type de fichier à ajouter
Les fichiers du projet 1 /2 1 linker script Add file 2 Choisir le fichier pour le microcontôleur utilisé Pour lutilisation de ICD2 xxxi.lkr
2 Choisir le fichier dans le dossier du projet Les fichiers du projet 2 /2 1 Header Files Add file 2 Choisir le fichier dans le dossier du projet
Etape 2 Le fichier source
Ecriture du fichier source 1/3 Clic icone 1 File… New ou Un fichier source a une syntaxe très précise. Un fichier source en C doit être très lisible. Il doit être commenté et expliqué : Debuggage plus rapide Réutilistion plus facile En cours d’édition il faut le sauvegarder régulièrement.
Ecriture du source 2/3 Une * indique que le fichier n’est pas sauvegardé...
Il faut maintenant ajouter le fichier source... Ecriture du source 3/3 Il faut maintenant ajouter le fichier source... 1 Source Files Add file Le projet est créé… Le source est écrit. Ne pas oublier de sauvegarder !!!
Structure d'un projet Nom du projet Fichiers source *.c Fichiers d’en-tête *.h Fichiers linkage *.lkr Le projet est créé… Le source est écrit. Ne pas oublier de sauvegarder !!!
Assemblage du fichier source 1/2 Pas d’erreur dans le source Pour voir la fenêtre OUTPUT : View ….. Output
Assemblage du fichier source 2/2 Erreur(s) dans le source L’erreur est à la ligne 55
Test du programme On peut debugger le programme de 2 façons 1) Avec l’ICD2 qui permet d’exécuter le programme sur la carte cible A Vitesse réelle de fonctionnement. 2) Avec MPSIM qui est une simulation logicielle intégrée à MPLAB Avec des limitations en ressources Pas en temps réel. Les deux outils permettent : l’examen des registres l’examen de la mémoire l’utilisation de points d’arrêt « Breakpoint » (1 seul actif à la fois avec l’ICD2)
Etape 3 Utilisation de l' ICD2
ICD2 RJ45 6 broches vers cible Alimentation RS232 USB (V1) Chargement du programme sur la cible RAZ et connexion de l’ICD2 Il faut maintenant prévoir l ’utilisation de l’ICD2 sur la cible….
ICD2 Setting 1/4 Voir aussi Communication si erreur Voir POWER Debugger Setting Status Voir aussi Communication si erreur Etat de la connexion Si déconnecté Verification des alimentations Voir POWER si erreur dans Self Test
ICD2 Setting 2/4 A vérifier si difficulté de connexion Debugger Setting Communication A vérifier si difficulté de connexion Port de communiation USB Port série + vitesse
ICD2 Setting 3/4 Debugger Setting Program Zones du µC à programmer : Program : ROM Configuration : bits de configuration EEPROM ID : identification µC Espace de la ROM à programmer Laisser MPLAB choisir…... Ne programmer que la zone utilisée réduit les temps de programmation et vérification….
ICD2 Setting 4/4 Voir aussi Communication si erreur Debugger Setting Power Tension d’alimentation Vdd et Vpp sur cible 2 cas en USB Cible alimentée par ICD2. Imax 200mA ICD2 alimenté par port USB. Cible alimentée par sa propre alimentation. Alimentation du µC cible Ici il n’est pas alimenté par l’ICD2 Voir aussi Communication si erreur
Etape 4 Debuggage avec l'ICD2
Simulation Commandes du debugger Arrêt Pas à pas Mise en service Raz le PC est en début du programme Mode animation
Double clic sur la ligne Points d'arrêt 1/2 Double clic sur la ligne pour mettre ou supprimer un point d’arrêt. Ligne 58 : point d’arrêt actif Ligne 100 : point d’arrêt inactif La touche F2 permet aussi de gérer les points d’arrêt…..
Points d'arrêt 2/2 F2 Définition d’un point d’arrêt Gestion des
MPLAB permet de visualiser de MPLAB permet de visualiser de nombreuses informations : le code machine la RAM, les registres du µC, l’EEPROM, etc…. Il permet même une visualisation spécifique de registres importants . Voir . . . Listing (code machine + source) Pile R O M R A M E E P R O M Indicateur d’utilisation des mémoires Surveillance spécifique Registres du µC ( SFR)
Watch droit Choix SFR ou mémoire 4 visualisations différentes Symbole Taille : 8 bits 16 bits 24 bits 32 bits droit Format : hexadécimal Binaire Décimal ASCII etc...
http://www.microchip.com Pour les documentations voir Et maintenant au travail avec