Page 13 - SERIE N11 micro 2
P. 13
program compteur60;
var i,j:integer;
begin
trisa:= ……;trisb:=….. ;porta:=…. ; portb:=…….. ;
………………….
begin
16 17 for i:=0 to 5 do
15 OSC1/CLKIN RA0 18 begin
RA1
OSC2/CLKOUT
4 RA2 1 for j:=0 to 9 do
2
MCLR RA3 3 begin
RA4/T0CKI ………………….
RB0/INT 6 delay_ms(1000) ;
7
RB1 8 end;
RB2 9 ………………….
RB3
RB4 10 end;
11
RB5 12
RB6 13 end.
RB7
PIC16F84A afficheurs à anodes communes
Exercice N°14 : afficheur3 afficheur2 afficheur1
16 OSC1/CLKIN RA0 17
15
18
4 OSC2/CLKOUT RA1 1 Décodeur
2
RA2
3
MCLR
RA3
RA4/T0CKI 6 7 13
RB0/INT 7 1 A QA 12
11
8
2
B
QB
RB1
6
9
10
RB2
QC
C
RB3 10 4 D QD 9
11
15
5
BI/RBO
QE
RB4
QF
RB5 12 3 RBI QG 14
13
RB6
LT
RB7
PIC16F84A 7447 T3 T2 T1
2N2222
2N2222
2N2222
1k
1k 1k Vcc
Compteur modulo 1000 avec un décodeur et 3 afficheurs 7 segments avec affichage multiplexé
Le microcontrôleur 16F84A réalise le multiplexage de l'affichage. Le décodeur utilise est le 7447 dont
les sorties sont activées à niveau bas donc les afficheurs sont à anodes communes.
Les bornes communes des afficheurs « anodes » sont commandées à travers des transistors NPN de
telle sorte que lorsqu’un transistor est saturé, la borne commune de l'afficheur est alors reliée au +Vcc
donc l'afficheur correspondant fonctionne. Le principe est de placer le nombre à afficher sur le
décodeur puis commander le transistor correspondant pour l'afficher. C
Les transistors utilises pour la commande des afficheurs sont de type NPN.
C C B
• Si B=1 le transistor est saturé • Si B=0 le transistor est bloqué E
E E
Le principe est d'incrémenter une variable d'identifier son unité, son dizaine et son centaine l'envoyer
au décodeur puis à chaque fois on commande le transistor correspondant
13