Académique Documents
Professionnel Documents
Culture Documents
et de la Recherche Scientifique
Université de Carthage
ﺟﺎﻣﻌـﺔ ﻗﺮﻃﺎﺝ
Début
LIST p=16F877 ; Définition de processeur
MOVWF BIN
←BIN+W
BIN←
BCF STATUS,C
RRF BIN,f
ADDWF BIN,f
FIN
end
-1-
Exercice 2 :
Soit le montage de la figure ci-dessous qui connecte 4 diodes LEDs et un interrupteur au PIC 16F877A. Le langage assembleur est utilisé pour programmer le
PIC.
VDD=5v
VDD=5v Led3
RB0 R2
R3 RB5 R2
Led4
RA0 PIC 16F877A
Led1
Interrupteur RE0
R1
Led2
RE2
R1
GND
1) Calculer les valeurs des résistances R1, R2 et R3 en justifiants les réponses par les équations adéquates ?
On donne : courant direct des diodes (IF=10 mA), Tension directe des diodes = 1,7v, VOH = 4.3 V pour IOH = 10 mA et VOL = 0.35 V pour IOL = 10 mA.
R2=(VDD-VF-VOL) / IF R1=(VOH-VF)/IF
R2=(5-1.7-0.35)/0.01=295Ω R1=(4.3-1.7)/0.01=260Ω
R3=10 KΩ
(1 pts)
2) Ecrire une macro qui s’appelle PAGE0, permettant de se placer en 3) Ecrire une macro qui s’appelle PAGE1, permettant de se placer en
bank0 de la RAM du PIC. bank1 de la RAM du PIC.
4) Ecrire une macro qui s’appelle INPUT permettant de configurer la 5) Ecrire une macro qui s’appelle OUTPUT permettant de configurer les
broche RA0 du PIC en entrée. broches RB0, RB5, RE0 et RE2 du PIC en sortie.
6) Ecrire une macro qui s’appelle DigitMode permettant d’activer le mode 7) Ecrire la fonction ConfigPIC permettant de configurer le
numérique des PORTS A et E. montage par appels aux macros définis précédemment.
DigitMode macro ConfigPic PAGE1
Input
movlw 0x06 Output
movwf ADCON1 (2 pts)
endm DigitMode
return
-2-
8) Ecrire la fonction RBOn permettant d’allumer les LEDS connectés au 9) Ecrire la fonction RBOff permettant d’éteindre les LEDS
port B. connectés au port B.
10) Ecrire la fonction REOn permettant d’allumer les LEDS connectés au 11) Ecrire la fonction REOff permettant d’étreindre les LEDS
port E connectés au port E
12) Ecrire le programme principal qui appelle les fonctions précédentes comme suit :
a. si l’interrupteur est fermé le PIC allume les leds du port B et éteint celles du port E.
b. si l’interrupteur est ouvert le PIC allume les leds du port E et éteint celles du port B.
main
Exercice 3:
On cherche à connecter à un microprocesseur d’un bus de données de 16 bits et d’un bus d’adresses de 16 bits plusieurs RAM (M) de 512 octets
possédant un bus de donnée de 4 bits. L’ensemble de ces RAMs forme une capacité de 4Ko.
R/W
OE
µP
16
data
16
adresse
? ? ? ?
4 4
adresse CS Data adresse CS Data
RAM RAM
(512 Octets) (512 Octets)
-3-
1. Donner le nombre de mots et la largeur du bus d’adresse des RAMs (M). (1pts)
Réponse :
512 octets = (512 × 8 / 4) mots de 4 bits = 1 K mots de 4 bits.
1 K mots = 210 mots.
La mémoire (M) possède 10 fils d’adresse.
2. Combien de mémoires (M) doit-on assembler pour réaliser une RAM de capacité 4Ko? (1pts)
Réponse :
• Mémoires en parallèles :
On passe d’un bus de donnée de 4 bits à un bus de donnée de 16 bits.
=> Il faut assembler 4 mémoires en parallèle (16 / 4 = 4).
• Mémoires en série
L’ensemble des RAMs a une capacité de 4 Ko = (4 K × 8 / 16) mots de 16 bits = 2 K mots de 16 bits.
On passe d’une profondeur de 1 K mots à une profondeur de 2 K mots.
Il faut assembler 2 mémoires en série (2 K / 1 K = 2).
3. L’interconnexion des mémoires au microcontrôleur doit respecter les conditions suivantes : (2pts)
• L’adresse de la première RAM commence par 0000 en hexadécimal,
• les plages d’adresses réservées aux circuits mémoires RAMs sont successives.
-4-
Liste des instructions
-5-
-6-