Vous êtes sur la page 1sur 4

TPN°1 Le clignotant

Ce premier TP d’initiation à base de PIC 16F84A a pour but tout simplement de faire clignoter
une led. L’environnement de programmation MPLAB de MICROCHIP TM (v6.61) est utilisé. Les
fonctions de bases de cet outil de développement permettent de créer un projet, éditer et compiler
un programme en assembleur. La simulation du fonctionnement du circuit à base de
microcontrôleur PIC 16F84A, associé au programme développé, est enfin réalisée avec le
logiciel Proteus.

1 Logiciels utilisés
1.1 MPLAB Integrated Development Environment
MPLAB IDE est un environnement gratuit de programmation pour les micro-
contrôleurs de la famille Microchip. L’environnement intègre un éditeur d’assembleur, un
débogueur complet ainsi que tous les outils permettant de gérer les programmateurs de
composants.
1.2 Proteus (ISIS)
Proteus est une suite logicielle destinée à l'électronique. Développé par la société
Labcenter Electronics, les logiciels incluent dans Proteus permettent la CAO dans le domaine
électronique. Deux logiciels principaux composent cette suite logicielle : ISIS et ARES.
2 Application
2.1 Programme
Le programme suivant permet de faire clignoter une LED monté sur la broche RB0.
-------------------------------------------------------------
list p=16f84A
#include p16f84A.inc
__config H'3FF9'
-------------------------------------------------------------
#define inter0 0
-------------------------------------------------------------
retard1 EQU 0x0C
retard2 EQU 0x0F
memo EQU 0x12
--------------------------------------------------------------
ORG 0
BSF STATUS,5
MOVLW 0x00
MOVWF TRISB
MOVLW 0x1F
MOVWF TRISA
BCF STATUS,5
---------------------------------------------------------------
MOVLW 0x00
MOVWF PORTB
MOVWF memo
----------------------------------------------------------------
debut
btfss PORTA,inter0
goto debut
MOVLW 0xFF
MOVWF retard1

1
MOVWF retard2
COMF memo,F
MOVF memo,W
MOVWF PORTB
CALL tempo
GOTO debut
-----------------------------------------------------------------
tempo
DECFSZ retard1,F
GOTO tempo
movlw 0xFF
movwf retard1
DECFSZ retard2,F
GOTO tempo
RETURN
END

2.2 Édition et Compilation du programme


Cette partie vous montre comment créer un projet MPLAB, saisir un programme en assembleur
et ensuite le compiler.

2.2.1 Démarrage
–Créer un répertoire tp1 puis dans ce répertoire créer à nouveau un répertoire simulation.
– Lancer la suite logicielle MPLAB IDE à partir de l’icône qui se trouve sur votre bureau.

2.2.2 Création d’un nouveau projet avec « Project Wizard »

 Cliquer sur Project >> Project Wizard …


 Cliquer sur Suivant > puis sélectionner PIC16F84A dans le menu déroulant Device.
 Cliquer sur Suivant > puis sélectionner « Microchip MPASM Toolsuite » et «
MPASM Assembler » afin de pouvoir programmer en Assembleur.
 Cliquer sur Suivant > puis dans le champ « Project Name » saisir le nom du projet (ex :
simulation1) et dans le champ « Project Directory » aller chercher à l’aide du bouton «
Browse », le dossier créé au début : tp1/simulation.
 Cliquer sur Suivant.
 Cliquer sur Suivant > puis sur Terminer.

2.2.3 Édition du programme

Créer un nouveau fichier en cliquant sur File > New


MPLAB Editor se lance et une fenêtre Untitled s’ouvre
Saisir le programme ci-dessus et l’enregistrer dans le répertoire simulation1 avec l’extension
asm (ex : prog1.asm)

2
Figure 2 MPLAB IDE, Mode Edition.

Allez à nouveau dans le menu Projet, cliquez sur Add Files to Project... et sélectionnez celui
que vous venez d'enregistrer. Votre fenêtre d'espace de travail devrait maintenant apparaître
comme sur la figure 3, avec bien sûr votre propre nom de fichier. Vous allez maintenant
commencer à apprécier la valeur de cette fenêtre, car elle montre une image complète des
fichiers associés à votre projet

Figure 3 Fenêtre de l'espace de travail: (a) Pour un projet nouvellement créé et (b) Pour un projet
avec un fichier source ajouté.

2.2.4 Phase de compilation


Cliquer sur Project >> Build All … ou sur l’icône de la barre de menu ou encore
Ctrl+F10 pour compiler le projet complet. Erreurs et warnings sont signalés dans la fenêtre
Output ainsi que le résultat de la compilation BUILD SUCCEEDED ou BUILD FAILED.
En double-cliquant sur une erreur ou un warning dans la fenêtre Output, vous serez amené
directement à la ligne concernée dans votre programme.
3
2.3. Phase de simulation

Dans cette partie, on s’intéresse à la simulation du système à base de PIC 16f84 avec le logiciel
Proteus. Le circuit de base d'un système à microcontrôleurs comprend généralement et en
particulier (figure 1 ci-dessous) :

Figure 1 Schéma de principe du clignotant

 Un circuit RESET, qui peut être un simple circuit RC


 Un circuit d'horloge, qui est généralement un oscillateur à quartz.

Pour simuler le fonctionnement du circuit sous Proteus :

 Lancer Proteus, et développer le circuit à base du 16F84.


 Simuler le circuit précédent, en lui associant le programme donné.

Remarque
Un double clic sur le microcontrôleur utilisé permet la définition de sa fréquence de
fonctionnement, et du nom du fichier contenant le code machine (fichier.hex) qui sera exécuté
durant la simulation.

3 Travail à faire avant de venir en TP


 Installer MPLAB depuis le répertoire MPLAB661 donné.
 Installer la suite logicielle Proteus depuis le répertoire Isis Proteus Professional 7 +
licence.

4 Travail demandé
1) Le programme est divisé en sept parties distinctes. Donner un titre à chaque partie.
2) Commentez chaque ligne du programme pour montrer que vous avez bien compris les
différentes instructions. Une ligne de commentaire commence par un « ; ».
3) Etudiez le programme ci-dessus et expliquez ce qu’il fait.
4) Donner le chronogramme associé à ce programme.

Vous aimerez peut-être aussi