TP1 Microcontroleur

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 2

TP Systèmes à

microcontrôleurs
Prénom : Rochdi Nom : Aouadi
Travaux Pratiques : Séance 1
1. Objectif : 
Initiation à MPLAB
Les drapeaux
Adressage indirecte
2. TRAVAIL DEMANDE
2.1. Partie 1 :
 Saisir le code source suivant :
list p=16F877
#include<p16f877.inc>
org 0x0000
debut clrw
movlw .10
addlw 0x80
goto debut
end
 Déterminez la taille des mémoires :
 Flash (program) : 4096 (0x1000) mots
 RAM (file register) : 368 octets
 EEPROM : 256 octets
 En utilisant le menu watch, observer les valeurs des registres PCL, WREG et STATUS

 En utilisant la touche F8, exécuter le programme en mode pas à pas et compléter le tableau ci-dessous.
Code source Adresse mémoire Code machine PCL  W  STATUS
clrw 000 0103 0x00 0x8A 0x00
movlw .10 001 300A 0x01 0x00 0x04
addlw 0x80 002 3E80 0x02 0x0A 0x04
goto debut 003 2800 0x03 0x8A 0x00

Expliquer les lignes suivantes


Code source
list p=16F877 Modèle de pic utilisé
#include<p16f877.inc> Include qui définit divers registres
org 0x0000 Début du programme / Adresse de reset
clrw Effacer registre W
movlw .10 On charge la valeur dans le registre W
addlw 0x80 Ajouter un littéral et W ( Le contenue de @0x80 + W)
goto debut Sinon retour à debut
end Fin du programme

2.2. Partie 2 :


a) Saisir le code source suivant :
Master professionnel Informatique Industrielle A.U. 2020/2021 Dr.Ing. Ali KHALFALLAH 1
TP Systèmes à
microcontrôleurs
org 0x02FD
debut clrw
movwf STATUS
movlw .250
movwf 0x70
movlw 0xC8
addwf 0x70,0
movlw b'01100100'
subwf 0x70,0
goto debut
end
b) Que faut-il ajouter à ce programme pour qu’à la suite d’un RESET, le PIC se branche au début du
programme ?
list p=16F877
#include<p16f877.inc>
org 0x0000
c) En utilisant la touche F8, exécuter en mode pas à pas et compléter le tableau ci-dessous.
Code source @ mémoire PCLAT PCL
H
d) Expliquer les Clrw 0000 0x00 0x00 lignes suivantes
Code source movwf STATUS 0001 0x00 0x01
Clrw movlw .250
Effacer registre W 0002 0x00 0x02
movwf 0x70 movwf 0x70 00030x70
On transfert W sur l’adresse 0x00 0x03
movlw 0xC8 0004 0x00 0x04
addwf 0x70,0 Ajouter W et f (0 + le contenue de @ 0x70)
addwf 0x70,0 0005 0x00 0x05
subwf 0x70,0 movlw b'01100100'
Soustraire W de f (0 - le0006
contenue de @0x00
0x70) 0x06
e) Initialiser subwf 0x70,0 0007 0x00 0x07 le contenu de
l’adresse goto debut 0008 0x00 0x08 [0x70] à 250
puis à 50 et compléter ce
tableau en utilisant l’exécution pas à pas.
Code source 0x70(décimale) W(décimale)avant W(décimale)aprés Z C
Clrw 250 0x96 0x00 0x01
addwf 0x70,0 250 0xFA 0xC8 0x00 0x00
subwf 0x70,0 250 0xC2 0x64 0x00 0x01
Clrw 50 0xCE 0x00 0x01
addwf 0x70,0 50 0x32 0xC8 0x00 0x00
subwf 0x70,0 50 0xFA 0x64 0x00 0x00
f) Comment calculer le résultat d’une addition et d’une soustraction (en utilisant C et Z)
- Par les commande : Addwf, Subwf

3. Conclusion : 
Dans ce TP j’ai maitrisé les opérations suivantes :
- Clrw
- Addwf
- Subwf
- Movwf
- Movlw
- Goto

Master professionnel Informatique Industrielle A.U. 2020/2021 Dr.Ing. Ali KHALFALLAH 2

Vous aimerez peut-être aussi