DBIBIH OUSSAMA Compte rendue

Telechargé par Oussama Dbibih
Table des matières
I. Présentaon .................................................................................................................................... 2
II. Objecfs ........................................................................................................................................... 2
III. Ouls de développement ................................................................................................................ 3
IV. Test et applicaon ‘PIC16F84A ....................................................................................................... 4
I. Présentaon
La PIC16F84 est un microcontrôleur de la famille PIC développé par Microchip Technology. Il ore une
architecture RISC 8 bits, une mémoire ash de 1 024 mots et des capacités d'E/S polyvalentes.
II. Objecfs
1- Le compte rendu du TP en Binôme est à adresser à nanni@cesi.fr
a. Réalisez l’implantaon du programme ci-dessus dans votre environnement MPLAB X.
b. A l’aide de l’oul de DEBUG exécutez en pas à pas votre programme et commentez la
variaon des registre STATUS et SFR, imprimez l’état des mémoires se situent votre
programme, vos data (Ram et EEROM), ainsi que la pile système lors de l’appel au tempo.
Fournir un mini compte rendu de l’ulisaon du débugger.
2 - Fournir le code asm qui permet de réaliser :
L’Inialisaon de la zone mémoire avec valeur 0x1A comprise entre 0x10 à 0x25
Imprimez l’image écran de la mémoire avant et après exécuon du programme.
III. Ouls de développement
MPLAB X IDE est un environnement de développement intégré (IDE) puissant et convivial
développé par Microchip Technology. Il offre des fonctionnalités avancées pour la
programmation, le débogage et la simulation de microcontrôleurs PIC, dsPIC et AVR. Doté
d'une interface utilisateur intuitive, MPLAB X IDE facilite la création, le test et la mise au point
des applications embarquées, ce qui en fait un outil essentiel pour les développeurs de
systèmes embarqués.
Fenêtre
MPLABE X IDE
Code ASM
Tools
Debugger
Project
Target
memory view
IV. Test et applicaon ‘PIC16F84A
Réalisez l’implantaon du programme ci-dessus dans votre environnement MPLAB X.
A l’aide de l’oul de DEBUG
En ulisant l'oul de débogage de MPLAB X IDE, nous pouvons observer que lorsque nous cliquons
sur le bouton bleu "RESET", le programme entre dans la pare reset_vect.
L’Inialisaon de la zone mémoire avec valeur 0x1A comprise entre 0x10 à 0x25
;------------------------------------------------------------------------------
; Foncon : init_memory
; Descripon : Inialise une zone m
moire avec la valeur 0x1A de l'adresse 0x10
;
l'adresse 0x25.
;------------------------------------------------------------------------------
init_memory:
BANK0
; Inialisaon des param
tres
movlw 0x1A ; Valeur
stocker
movwf FSR ; Adresse de d
part
movlw 0x16 ; Nombre d'octets
inialiser
movwf COUNT ; Inialiser le compteur
ll_memory_loop:
movwf INDF
incf FSR, 1
decfsz COUNT, 1
goto ll_memory_loop
movlw 0x10
movwf FSR
display_memory_loop:
movf FSR, W
movf INDF, W
incf FSR, 1
decfsz COUNT, 1
goto display_memory_loop
BANK1
return
Imprimez l’image écran de la mémoire avant et après exécuon du programme.
Test d’une applicaon simple a l’aide de Proteus 8 et MPLAB X IDE
Une applicaon en langage C ulisant la PIC16F84A pour simuler un feu rouge de rue.
Lorsque l'ulisateur appuie sur le bouton, le feu rouge s'allume des deux côtés pendant 3
secondes pour permere aux piétons de traverser en toute sécurité.
void main() {
TRISB = 0x00; // Dénir le PORTB comme sore
TRISA = 0x00; // Dénir le PORTA comme sore
TRISB.RB6 = 1; // Dénir RB6 comme entrée
for (;;) {
// (si RB6 est à l'état bas)
if (PORTB.RB6 == 0) {
// Éteindre la LED
PORTB = 0b00001001;
delay_ms(3000); // temps pour que le passeger traverse la route
PORTB.RB6 == 1;
} else {
// Allumer la sore RB0 et RB6
PORTB = 0b00100001;
delay_ms(1000);
// Allumer la sore RB1 et RB4
PORTB = 0b00010010;
delay_ms(1000);
// Allumer la sore RB2 et RB3
PORTB = 0b00001100;
delay_ms(1000);
}
}
}
1 / 5 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !