Compte rendu TP Microcontrôleur 68HC11 : Affichage Hex et Alarme

Telechargé par ismailoularbi7
Année universitaire
2024/2025
Compte rendu TP 2 et 3
Informatique industrielle : Microcontroleur et DSP
Nom et prénom :
ISMAIL OULARBI
MASTER-1 : Génie électrique et systèmes industriels
intelligents
Introduction
Le microcontrôleur Motorola 68HC11 est un dispositif très utilisé dans le domaine de
l'électronique embarquée pour sa polyvalence et ses capacités robustes. Dans ce travail
pratique, nous allons explorer deux applications concrètes de ce microcontrôleur :
l'affichage de chiffres hexadécimaux sur un afficheur 7 segments et la création d'une
centrale de surveillance pour un système d'alarme. Ces exercices permettent de
comprendre les principes fondamentaux de la programmation des microcontrôleurs et leur
interaction avec divers périphériques
Objectifs de TP
Comprendre le fonctionnement du microcontrôleur Motorola 68HC11.
Développer des compétences en programmation en assembleur pour le 68HC11.
Apprendre à interfacer le microcontrôleur avec des périphériques externes comme
des afficheurs 7 segments et des capteurs.
Appliquer des concepts de surveillance et de contrôle dans des systèmes d'alarme.
EXERCICE2 TP2 :
1. Complétion du tableau pour les différents états :
Selon l'illustration donnée, on peut compléter le tableau en fonction de la séquence de commande
pour les enroulements du moteur pas-à-pas :
L’état
Valeur binaire (PA3…PA0)
Valeur Hexadécimal
1
1000
0x08
2
0100
0x04
3
0010
0x02
4
0001
0x01
2. Directives d’assemblage pour stocker les valeurs dans un tableau en
mémoire :
On utilise la directive .ORG pour définir l’adresse mémoire du tableau et .DB pour stocker les valeurs.
3. Configuration du PORTA pour la sortie :
4. Programme pour piloter le moteur en boucle continue :
ORG 5000H ; Début du programme principal
START: MOV DPTR, #50000H ; Pointeur vers le tableau TAB
MOV R0, #4 ; Nombre de pas à effectuer
LOOP: MOVX A, @DPTR ; Charger la valeur de l'état
MOV P1, A ; Envoyer sur PORTA
ACALL DELAY ; Pause entre les étapes
INC DPTR ; Passer à l'état suivant
DJNZ R0, LOOP ; Répéter jusqu'à la fin du tableau
MOV DPTR, #50000H ; Réinitialiser DPTR pour boucle infinie
SJMP START ; Recommencer
DELAY: MOV R7, #0FFH ; Création d'une boucle de délai
DEL1: MOV R6, #0FFH
DEL2: DJNZ R6, DEL2
DJNZ R7, DEL1
RET
EXERCICE 1 TP3 :
1. La condition pour allumer un segment
Pour allumer un segment d'un afficheur 7 segments à anode commune, il faut mettre à 0 le
bit correspondant au segment sur le port de sortie
2. La table de correspondance entre les codes binaires et les codes
hexadécimaux de tous les chiffres qu'on désire allumer (0 à F)
Chiffre
Code decimal
Code binaire
Code héxadecimal
0
0
0000
C0
1
1
0001
F9
2
2
0010
A4
3
3
0011
B0
4
4
0100
99
5
5
0101
92
6
6
0110
82
1 / 10 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!