Exercice
Exercice
Exercice
5 pts)
On désire commander deux afficheurs à 7 segments à l’aide d’un microcontrôleur Pic18f4550 pour
afficher les valeurs « 00 », « 25 », « 50 », « 75 » et « 99 ». Le schéma est donné par la figure
suivante :
5V
0% U1
2 15
RA0/AN0 RC0/T1OSO/T1CKI
3 16
RA1/AN1 RC1/T1OSI/CCP2/UOE
4 17
25% 5
RA2/AN2/VREF-/CVREF RC2/CCP1/P1A
23
RA3/AN3/VREF+ RC4/D-/VM
6 24
RA4/T0CKI/C1OUT/RCV RC5/D+/VP
7 25
RA5/AN4/SS/LVDIN/C2OUT RC6/TX/CK
14 26
50% 13
RA6/OSC2/CLKO RC7/RX/DT/SDO
OSC1/CLKI
33 19
RB0/AN12/INT0/FLT0/SDI/SDA RD0/SPP0
34 20
75% 35
RB1/AN10/INT1/SCK/SCL RD1/SPP1
21
RB2/AN8/INT2/VMO RD2/SPP2
36 22
RB3/AN9/CCP2/VPO RD3/SPP3
37 27
RB4/AN11/KBI0/CSSPP RD4/SPP4
38 28
99% 39
RB5/KBI1/PGM RD5/SPP5/P1B
29
RB6/KBI2/PGC RD6/SPP6/P1C
40 30
RB7/KBI3/PGD RD7/SPP7/P1D
8
RE0/AN5/CK1SPP
R1 R2 R3 R4 R5 RE1/AN6/CK2SPP
9
10k 10k 10k 10k 10k 10
RE2/AN7/OESPP
18 1
VUSB RE3/MCLR/VPP
PIC18F4550
VDD
L’appuie sur les boutons 0%, 25%, 50%, 75% ou 99% permet d’afficher les valeurs « 00 », « 25 »,
« 50 », « 75 » ou « 99 » sur les deux afficheurs connectés aux PORTD et PORTA. Chaque appuie
permet d’afficher la valeur correspondante pendant un temps T=1s.
1-Ecrire un programme en assembleur sous l’étiquette « configPORTS » qui permet de configurer
les broches en entrées ou en sorties et le contenu de l’ADCON1 selon la Figure. (2 pts)
2- Remplir les tables de vérité suivantes des afficheurs à 7 segments (Annexe 3). (2.5 pts)
Segment g f e d c b a Valeur du
Broche RD6 RD5 RD4 RD3 RD2 RD1 RD0 PORTD en hex
0
2
Valeur
5
7
9
Segment g f e d c b a Valeur du
Broche RA6 RA5 RA4 RA3 RA2 RA1 RA0 PORTA en hex
0
5
Valeur
0
5
9
3- Écrire le programme en assembleur qui permet de réaliser la fonction désirée. Pour le temps
d’affichage, on pourra utiliser la temporisation vue en cours : Fosc = 4MHz. (3 pts)