Download - Programmation Micro contrôleurs Microchip Outil de developpement MPLAB © T.Berenguer Mars 2006
Programmation
Micro contrôleurs Microchip
Outil de developpement MPLAB
© T.Berenguer Mars 2006
La mise au point d’un programme nécessite l’utilisation d’outils :
Logiciels :
Matériels :
•Editeur : pour écrire le programme source•Compilateur : pour transformer le source en fichier objet•Simulateur : permet d’exécuter le programme sur le PC
•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.
• d’écrire un programme source• de le compiler (Compilateur C mcc18)
Le logiciel MPLAB de Microchip permet :
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
Un PC + MPLABUne carte cible
In Circuit Debugger version2
qui permet lacommunication
avec la carte cible
C’est l’ICD2
Etape 1
• A l’ouverture de MPLAB Gestion du projet
Compte rendudes actions de
MPLAB
Barre d’icones
Barred’état
•Projet... •Project Wizard...
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
Cet assistant permet Cet assistant permet en 4 fenêtres en 4 fenêtres
de créer un projet.de créer un projet.
•1) Choix du µC
•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
•3) Nom et dossier
Il est souhaitable de mettre un seul projet par dossieret de lui donner le nom du projet.
•3-1 Nommer le projet
•3-2 Dossier de destination
•Il est aussi possible d’utiliser un dossier déjà existant.
•Si des fichiers sont dans ce dossier il ne seront pas détruits
•4) Ajout de fichiers au projet......si il sont déjà dans le dossier...si il sont déjà dans le dossier
Fin
•Librairies en c:\mcc18\lib
•Script en c:\mcc18\lkr
Clic droit sur le type de fichier à
ajouter
Le projet est maintenant créé…Le projet est maintenant créé…
On peut ajouter ou enlever des fichiers : On peut ajouter ou enlever des fichiers :
Source files *.c *.asmfichiers C ou assembleurfichiers C ou assembleur
Header files * . hfichiers d’entêtefichiers d’entête
Library files * . liblibrairie …librairie …
Linker script * . lkrinformations pour le linkerinformations pour le linker
1 linker script•Add file
•2 Choisir le fichier pour le microcontôleur utilisé
Pour lutilisation de ICD2 xxxi.lkr
1 Header Files•Add file
•2 Choisir le fichier dans le dossier du projet
Etape 2
• 1 File… Newou
Clic icone
Un fichier source a une syntaxe très précise.Un fichier source a une syntaxe très précise.
Un fichier source en C doit être très lisible.Un fichier source en C doit être très lisible.
Il doit être commenté et expliqué :Il doit être commenté et expliqué :Debuggage plus rapide Debuggage plus rapide Réutilistion plus facileRéutilistion plus facile
En cours d’édition il faut le sauvegarder régulièrement.En cours d’édition il faut le sauvegarder régulièrement.
• Une * indique que le fichier n’est pas
sauvegardé...
1 Source Files•Add file
Le projet est créé…Le projet est créé…Le source est écrit.Le source est écrit.
Ne pas oublier de sauvegarder !!!Ne pas oublier de sauvegarder !!!
Il faut maintenant ajouter le fichier source...Il faut maintenant ajouter le fichier source...
• Nom du projet
• Fichiers source *.c
• Fichiers d’en-tête *.h
Le projet est créé…Le projet est créé…Le source est écrit.Le source est écrit.
Ne pas oublier de sauvegarder !!!Ne pas oublier de sauvegarder !!!
• Fichiers linkage *.lkr
Pour voir la fenêtre OUTPUT : Pour voir la fenêtre OUTPUT : VView ….. iew ….. OOutpututput
Pas d’erreur dans le sourcePas d’erreur dans le source
Erreur(s) dans le sourceErreur(s) dans le source
L’erreur est à la ligne 55L’erreur est à la ligne 55
•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.
On peut debugger le programme de 2 façons
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)(1 seul actif à la fois avec l’ICD2)
Etape 3
RS232
USB (V1)
Alimentation
RJ45 6 broches vers cible
Il faut maintenant prévoir l ’utilisation de l’ICD2 sur la cible….
Chargement du programme sur la cible
RAZ et connexion de l’ICD2
•Debugger •Setting StatusStatus
Verification des alimentations
Etat de la connexion
Si déconnectéSi déconnecté
Voir POWER si erreur dans
Self Test
Voir aussi Communication
si erreur
•Debugger •Setting CommunicationCommunication
Port de communiation•USB•Port série + vitesse
A vérifier si difficulté
de connexion
•Debugger •Setting ProgramProgram
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 zoneutilisée réduit les temps de
programmation et vérification….
•Debugger •Setting PowerPower
Tension d’alimentation Vdd et Vpp sur cible
Alimentation du µC cibleIci il n’est pas alimenté par l’ICD2Ici il n’est pas alimenté par l’ICD2
2 cas en USB
Cible alimentée par ICD2. Imax 200mA ICD2 alimenté par port USB. Cible alimentée par sa propre alimentation.
Voir aussi Communication
si erreur
Etape 4
Commandes du debugger
Raz
Arrêt
Mise en service
Mode animation
Pas à pas
RAZle PC est en début
du programme
Ligne 58 : point d’arrêt actifactif
Ligne 100 : point d’arrêt inactif
La touche F2 permet aussi de gérer les points d’arrêt…..
Double clic sur la ligne pour mettre ou supprimer un point d’arrêt.
F2F2 Définition d’un point d’arrêt
Gestion despoints d’arrêt
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 .
Listing (code machine + source)
R A M
E E P R O M
R O M
Indicateur d’utilisation des mémoires
Surveillance spécifique
Pile
Registres du µC ( SFR)
Choix SFR ou mémoire
4 visualisations
différentes
droitdroit
Symbole
Taille :•8 bits •16 bits•24 bits •32 bits
Format :•hexadécimal•Binaire•Décimal•ASCII•etc...
Pour les documentations voir
http://www.microchip.comhttp://www.microchip.com
Et maintenant au travail avec