Vous êtes sur la page 1sur 2

UNIVERSITE DE NGAOUNDERE

ENSAI / Master IEA / Niveau 2

Travaux dirigés de microprocesseurs et microcontrôleurs

Exercice n°1. Principe de fonctionnement du microprocesseur 6809


1) Décrire succinctement le déroulement de l’instruction "LDA B" représentée ci-dessous.
2) Quels sont les contenus de l’ACCU B et du CCR après l’opération ?

Add Code op
Mémoire de 0000 F6h ? ACCU B
programme 0001 00000001
0002 11110001
Accumulateur B 10000000 Charger Après l’opération
Contenus registres avant l’opération
CCR 11011001
Mémoire de 01F0 11110000 ? CCR
données 01F1 00000000
01F2 11110001

Exercice n°2 : Extension de la capacité de mémoire centrale


1) Réaliser une mémoire RAM de 210 mots de 8 bits en utilisant des boîtiers RAM de
28 mots de 8 bits
2) Réaliser une mémoire RAM de 210 mots de 16 bits en utilisant des boîtiers RAM de
210 mots de 4 bits
3) Réaliser une mémoire RAM de 210 mots de 8 bits en utilisant des boîtiers RAM de
28 mots de 4 bits

Exercice n°3 : Association des mémoires RAM à un processeur 64 bits


Un processeur traite des données de 64 bits qu’il stocke dans des mémoires RAM. La
capacité de chaque mémoire est de 4 Mo. La capacité totale de l’ensemble des mémoires
RAM est de 32 Mo.
1) Combien y-a-t-il de boitiers RAM associée à ce processeur ?
2) Donner le nombre de cases mémoires disponibles dans chaque mémoire RAM
ainsi que le nombre total de cases mémoires pour l’ensemble des circuits.
3) Quelle doit être la taille minimum du bus d’adresse de ce processeur
4) Quelle est l’adresse la plus haute et l’adresse la plus basse (en hexadécimal)
accessible par le processeur ?
La taille du bus d’adresse sera désormais la taille minimum que vous venez de trouvez.
5) Parmi l’ensemble des bits constituant le bus d’adresse, donner le nombre de bits
réservés à la sélection des boitiers de mémoire RAM et le nombre de bits réservés
à la sélection d’une case mémoire
6) Donner les adresses de début et de fin des quatre mémoires RAM en complétant le
tableau ci-dessous.

Circuits A21 A20 A19 A16 A15 A12 A11 A8 A7 A4 A3 A0 Adresse en Hexa
RAM3 Début
Fin
RAM2 Début
Fin
RAM1 Début
Fin
RAM0 Début

1
7) Représentez sur un schéma l’ensemble des circuits du processeur et des bus (on
ne représentera que deux RAMs). On devra faire apparaitre clairement le nombre
de fils sur chaque partie des bus.

Exercice n°4 : Le microcontrôleur PIC16F877A


Vous trouverez toutes les informations nécessaires dans la documentation technique du
microcontrôleur PIC16F877A

a) Taille de mémoire :
1) Quelle est la taille mémoire disponible pour stocker un programme dans le
PIC16F877A?
2) Trouver la cohérence entre la taille de la mémoire programme et la taille du registre
PC (Program Counter)
3) Quelle est la taille mémoire disponible pour stocker des données dans le
PIC16F877A?

b) Jeu d’instructions
4) Combien de cycle instruction prend chacune des instructions ?
5) Combien de cycle horloge prend chacune des instructions ?
Le programme suivant est écrit en assembleur. Il fait varier la valeur de sortie du bit 0 du
PORTB. L’utilisateur voudrait réaliser un signal carré en sortie.

MOVLW FEh ;
MOVWF TRISB ; // Configuration du bit PORTB.0 en sortie
BOUCLE BCF TRISB,0;
BSF TRISB,0;
GOTO BOUCLE;

6) Donner le code C correspondant.


7) En prenant en compte les temps de chacune des instructions, tracer le
chronogramme du PORTB. Quelle remarque peut-on faire sur le rapport cyclique
du signal par rapport au souhait initial du programmeur ?

Exercice n°5 : Programmation du microcontrôleur PIC16F84A


On se propose de réaliser un compteur binaire sur 8 LEDs connectées sur le port B du
PIC16F84A.
1) Faire le schéma électronique du compteur
2) Dresser l’organigramme fonctionnel du compteur
3) Editer le programme source. (Le code de programmation est optionnel)

Vous aimerez peut-être aussi