Mplab est un outil fournit gratuitement par la société Microchip, ce logiciel vous permettra de créer un programme pour un PIC, de l 'assembler et de le simuler avant le transfert vers la mémoire flash de votre PIC.
Dans un premier temps si vous ne possédez pas le logiciel connecter vous sur www.microchip.com afin de le télécharger.

Dans cette page vous trouverez les vues d 'écran vous permettant de simuler un programme

Attention selon les versions de MPLAB certains écrans risquent de changer

1 - Création d 'une application
 Vous avez téléchargez MPLAB, celui est décompressé et installé sur votre disque dur.
Lancer MPLAB.exe vous visualisez alors cet  écran  :
Dans le menu project cliquez sur new project et donnez un nom à votre future application ( dans l ' exemple essai.pjt ) puis cliquez sur "OK"  Nota : si vous avez déjà réalisé le projet cliquer sur "Projet" puis "Open projet" .
Une fois le nom donné cet écran apparaît, vous devez sélectionner 'MPLAB-SIM' et le pic sur lequel vous travaillez dans l ' exemple  "PIC 16F84" , pour changer de micro contrôleur cliquez sur le bouton Change... et choisissez votre option.  Nota : si vous avez déjà réalisé le projet cliquer sur "Projet" puis "Edit projet"
Cliquez ensuite sur le nom dans la fenêtre du bas ( dans l 'exemple essai.hex ) puis cliquez sur "Node Properties"
Cet écran apparaît sélectionnez les options indiquées ci-dessous et cliquez sur le bouton "OK"
En validant , vous revenez alors à l ' écran précédent, cliquez alors sur le bouton "Add Node..." et indiquez le nom du fichier assembleur que vous allez simuler ( dans l ' exemple 'clignot.asm' ) puis validez avec "OK".
Vous devez alors avoir cet écran :
Cliquez sur le bouton "OK vous revenez à l'écran d'accueil  Cliquez ensuite sur "File" puis "Open" et sélectionnez le fichier "clignot.asm" que vous avez déclaré dans l 'écran précedent  vous devez avoir l'écran suivant avec votre source
1- Placement des boutons de simulation des entrées du PIC
Cliquer ensuite dans le menu "Debug" puis "Simulator stimulus" puis "Asynchronus stimulus"
Chaque bouton est configurable pour représenter une entrée du PIC (MCLR RA0-RA4 RB0-RB7 TOCKI) :  positionner la souris sur le premier bouton (par exemple Stim 1 (P)) et cliquer avec le bouton droit  puis "Assign pin"  vous devez voir la fenêtre suivante:
Sélectionner une entrée à positionner selon les entrées que vous avez dans votre programme (par exemple RA0) :  vous pourrez par la suite dans la simulation de votre programme agir sur cette entrée, dans le cas ou vous devez  simuler plusieurs entrées répétez plusieurs fois la manip que nous venons de voir (en sélectionnant à chaque fois un  bouton différent bien sur ... Stim 1,Stim 2 etc..)
Dans notre exemple ci-dessus nous pouvons agir sur RA0 et RA1, avant de lancer la simulation il faut positionner ces entrées sur une valeur (0 ou 1 selon votre programme) pour ce faire cliquer avec le bouton droit sur le bouton et sélectionner " l'état souhaité "low" ou "high" ,dans l' exemple l'entrée RA0 est positionnée à 0 et RA1 à 1 (le "L" dans le bouton indique l'état "low" pour RA0 et le "H" indique "high" pour RA1)
Pour changer l 'état de l'entrée durant la simulation que nous verrons par la suite il suffira de procéder comme ci-dessus en passant la valeur de "low" à "high" ou inversement puis de cliquer sur le bouton concerné pour valider le changement d'état.

2- Placement des fenêtres d'information sur les variables,regsitres,mémoire RAM et EEPROM du PIC
 
Cliquer sur le menu "Windows" puis "Watch windows" puis "New watch windows"
Sélectionner des variables que vous souhaiter voir évoluer (par exemple le registre de travail w, ou bien trisa ou trisb, ou encore le porta ou portb ou bien également une des variables que vous avez déclarées dans votre programme ici la variable "memo" par exemple  Pour sélectionner une variable ou un registre cliquer dessus et valider avec "add", une fois terminé cliquer sur "close"
Pour modifier le mode d'affichage de chaque variable (binaire ,hexa etc..) cliquer dans la fenêtre Watch_1 dans l'icone à gauche et sélectionner edit watch
Sélectionner un symbole puis cliquer sur "propriétes"
Changer le mode d'affichage des variables souhaitées et cliquer sur "close"
Pour ajouter d'autre fenêtres cliquer dans le menu "Windows" puis "EEPROM Memory" ou bien "File Registers" (par exemple)
L'environnement est maintenant en place nous allons pouvoir commencer la simulation.
La première chose à faire est de compiler le projet pour cela cliquer sur "Project" puis "Build all"  une fois compilé fermer la fenêtre "Build results"  cliquer ensuite dans votre source et taper sur la touche F6 afin d'initialiser le programme (reset du programme)  La  1ere ligne située après la directive ORG 0 (début de programme) de votre programme est en inverse vidéo

Appuyer ensuite sur la  F7 pour faire du pas à pas à chaque fois la ligne en cours sera en inverse vidéo et regardez les variables évoluer tout au long du programme.  Si pour continuer le programme vous devez agir sur une entrée (exemple RA0) alors changez d'état de celle-ci avec un clic droit sur un des  boutons que vous avez programmé précedemment puis valider le changement avec un clic gauche sur le bouton ainsi modifié.  F9 permet de lancer le programme sans faire de pas à pas  F8 permet d'éxécuter les boucles rapidemment (en pas à pas cela peut être contraignant selon le nombre de boucles à effectuer) on peut bien sur actionner la touche F7 et puis lorsqu'il y a un appel vers un sous programme taper sur la touche F8 afin d'éxécuter la boucle rapidemment.  F6 permet de revenir au début du programme (reset)
Voici décrit les principales fonctionalités du simulateur je vous laisse découvrir les points particuliers propres à vos applications...
bonne continuation
Simuler avec MPLAB
[Retour]