0% ont trouvé ce document utile (0 vote)
114 vues13 pages

Évaluations de Logique Combinatoire

Le document traite de logique combinatoire et contient plusieurs évaluations sur des sujets comme les additionneurs, les multiplexeurs, les démultiplexeurs et les circuits à base de 4560.

Transféré par

mehdi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
114 vues13 pages

Évaluations de Logique Combinatoire

Le document traite de logique combinatoire et contient plusieurs évaluations sur des sujets comme les additionneurs, les multiplexeurs, les démultiplexeurs et les circuits à base de 4560.

Transféré par

mehdi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

THÈME 2: LOGIQUE COMBINATOIRE

ÉVALUATIONS
SOLUTION CABLÉE
Evaluation n°1 :
Cocher la(les) réponse(s) correcte(s) :
 Un additionneur est un circuit séquentiel.
 Un additionneur est un circuit combinatoire.
 Un additionneur binaire est un circuit combinatoire qui effectue l’addition de deux
nombres binaires et fournit à ses sorties le résultat en BCD.
 Un additionneur BCD effectue l’addition de deux opérandes codées BCD et fournit le
résultat en BCD.
 On peut réaliser une opération de soustraction en utilisant un additionneur.
 Un comparateur est un circuit combinatoire dont l’état logique de ses entrées de mise
en cascade n’ont pas d’effet sur le résultat de la comparaison.
 L’entrée de mise en cascade (A=B) d’un comparateur doit être mise au niveau logique
bas.
 L’état logique des sorties d’un comparateur dépend toujours de l’état des entrées de
mise en cascade.
Evaluation n°2
Cocher la réponse correcte :
1. Un multiplexeur est un circuit combinatoire permettant de :
 Transmettre un signal d’entrée parmi plusieurs vers une sortie.
 Transmettre un signal d’entrée vers une sortie parmi plusieurs.
2. Un démultiplexeur est un circuit combinatoire présentant :
 Plusieurs entrées de données et une sortie.
 Une entrée de donnée et plusieurs sorties.
3. Pour transmettre une entrée de donnée parmi quatre vers la sortie, on utilise :
 Un multiplexeur ayant une entrée de sélection.
 Un multiplexeur ayant deux entrées d’adresse.
 Un démultiplexeur 1 vers 4.
4. Un multiplexeur à 3 entrées d’adresse est un :
 Multiplexeur 4 vers 1.
 Multiplexeur 8 vers 1.

Evaluation n°3

Identifier les circuits combinatoires suivants en complétant le tableau ci-dessous par


« Multiplexeur » ou « Démultiplexeur »

Nom du circuit
Rôle du circuit combinatoire
combinatoire
Il joue le rôle d’un commutateur à plusieurs
positions afin d’aiguiller vers la sortie les ………………………..
informations de n’importe quelle entrée.
Il joue le rôle d’un commutateur à plusieurs
positions afin d’orienter les informations ………………………..
d’entrée vers la sortie choisie.

1
Evaluation n°4
Pour les montages 1 et 2, donner les valeurs logiques « 1 » ou « 0 » des sorties :
0 1 0
1 1 1
1 U1 0 U2 1 U3
5 4 5 4 5 4
A0 S0 A0 S0 A0 S0
1 3
14
A1 S1
1
13
0 3
14
A1 S1
1
13
0 3
14
A1 S1
1
13
A2 S2 A2 S2 A2 S2
12 10 12 10 12 10
A3 S3 A3 S3 A3 S3

6 6 6
0 2
B0
B1
0 2
B0
B1
1 2
B0
B1
15 15 15
1 11
B2
B3
1 11
B2
B3
0 11
B2
B3
Vcc
1 7
C0 C4
9 1 7
C0 C4
9 1 7
C0 C4
9

0 74283 0 74283 1 74283

Montage 1 Montage 2

Figure 1 Figure 2
Evaluation n°5
On donne trois montages à base de circuit intégré 4560. Colorer en rouge, pour chaque cas, les
segments allumés des afficheurs à 7 segments.

1 1
0 0
1 U1 0 U2
15 13 15 13
A1 S1 A1 S1
0 1
A2 S2 12 1 1
A2 S2 12
3 11 3 11
A3 S3 A3 S3
5 10 5 10
A4 S4 A4 S4
14 14
1 2
B1 0 2
B1
B2 B2
4 4
1 6
B3 0 6
B3
B4 B4
1 7 9 0 Vcc 7 9
CI CO CI CO
0 1
4560 4560
Figure 4
Figure 3

0 1
1 0
1 U2 0 U3
15 13 15 13
A1 S1 A1 S1
0 1
3
A2 S2
12
11
1 1
3
A2 S2
12
11
A3 S3 A3 S3
5 10 5 10
A4 S4 A4 S4
14 14
B1 B1
2 2
0 4
B2
B3
0 4
B2
B3
6 6
0 B4 0 B4
7 9 7 9
1 CI CO 0 CI CO

0 4560 1 4560

Figure 5

2
Evaluation n°6
Soit le montage suivant :

Figure 6
Avec A:a3a2a1a0 et B: b3b2b1b0 sont des représentations codées en BCD.
1) Ecrire l’équation logique de Ec en fonction des sorties du circuit intégré CI1

Ec = ……………………………………………

2) Déterminer les états logiques de B4, B3, B2 et B1 de l’additionneur CI2 dans les deux cas suivants :

 Si Ec=0  B4B3B2B1 = ………………

 Si Ec=1 B4B3B2B1 = ………………


3) Pour les différentes valeurs des opérandes A et B de l’additionneur CI1, compléter le tableau
suivant:
Circuit CI1 Circuit CI2
EC S4S3S2S1S0
A4A3A2A1 B4B3B2B1 C4S4S3S2S1 A4A3A2A1 B4B3B2B1
0010 0110 …………… …… …………… …………… ……………..
0100 0101 …………… …… …………… …………… ……………..
1000 0110 …………… …… …………… …………… ……………..
1001 1001 …………… …… …………… …………… ……………..
4) Donner un nom à ce montage : ……………………………………………………………………………….

Evaluation n°7
Le circuit intégré 7485 est un comparateur binaire à 4 bits dont la table de fonctionnement est donnée
dans l’extrait du document constructeur.

1) En se référant à la fiche technique du CI 7485, compléter le tableau suivant :


Entrées de mise en
Mot A Mot B Sorties
cascade
A>B A=B A<B A3 A2 A1 A0 B3 B2 B1 B0 QA<B QA=B QA>B
1 1 0 1 0 0 0 1 1 0 0 …… …… ……
0 0 0 0 1 1 1 0 0 1 1 …… …… ……
0 0 1 0 0 1 0 0 0 1 0 …… …… ……
1 0 0 1 0 1 1 1 0 1 1 …… …… ……
1 0 1 0 0 0 0 0 0 0 0 …… …… ……
0 1 0 1 1 0 1 1 1 1 1 …… …… ……
0 1 0 1 1 1 1 1 1 1 1 …… …… ……
1 1 1 0 1 0 0 0 1 1 0 …… …… ……

3
2) Compléter le câblage du CI 7485 afin de comparer deux nombres binaires A(a 3a2a1a0) et B(b3b2b1b0)

R1 R2 R3 R4
Vcc 10k 10k 10k 10k

a0

a1
U1
10
A0
12
a2 13
A1
A2
15
A3
9
B0
11
a3 14
B1
B2
1
B3
2 7
A<B QA<B
3 6
b0 4
A=B
A>B
QA=B
QA>B
5

74HC85

b1

Q(A>B)

Q(A=B)

Q(A<B)
Vcc

b2

R9 R10 R11
b3 220 220 220

R5 R6 R7 R8
10k 10k 10k 10k

Figure 7
3) Pour A=6510 et B=13010. Combien de CI 7485 doit-on utiliser pour comparer ces deux nombres ?
………………………………………………………………………………………………………………………

4) Compléter le câblage du montage ci-dessous et préciser l’état logique des différents bits
(on prend A=6510 et B=13010).
b7
b6
b5
b4
b3
b2
b1
b0

a7
a6
a5
a4
a3
a2
a1
a0
14

15
13
12
10
11
4
3
2
1

14

15
13
12
10
11
4
3
2
1

9
7485

U2

7485

U1
A>B
A=B
A<B
B3
B2
B1
B0
A3
A2
A1
A0

A>B
A=B
A<B
B3
B2
B1
B0
A3
A2
A1
A0

Vcc
QA>B
QA=B
QA<B

QA>B
QA=B
QA<B
5
6
7

5
6
7
A>B
A=B
A<B

Figure 8

4
Evaluation n°8
On veut réaliser un additionneur BCD pour additionner deux chiffres codés BCD (A = a3 a2 a1 a0 et
B = b3b2b1b0). Cette opération peut être réalisée en deux étapes.
 Additionner A et B (addition binaire),
 Apporter une correction par l’ajout de (6)10si le résultat de l’addition est supérieur à 9.
A = a3 a2 a1 a0 9 = (1001)2
Additionneur Comparateur
B = b 3 b2 b1 b0 binaire Z3 Z2 Z1 Z0

Figure 9 Additionneur Résultat


binaire en BCD

En se référant au principe de l’addition en BCD et au schéma synoptique ci-dessus,


compléter le câblage du montage suivant afin de réaliser un additionneur BCD.
a0 U1 U2 S0
10 9 10 9
a1 8
A1 S1
6 8
A1 S1
6
3
A2 S2 2 3
A2 S2 2 S1
a2 1
A3
A4
S3
S4 15 1
A3
A4
S3
S4 15
a3 11 11
S2
7
B1 7
B1
4
B2
B3 4
B2
B3
S3
16 16
B4 B4
b0 7485
13 14 13 14
C0 C4 10
A0 C0 C4 C4
b1 74283
12
13
A1 74283
A2
b2 15
9
A3
B0
b3 11
14
B1
1
B2
2
B3 7
3
A<B QA<B 6
4
A=B QA=B 5 1
A>B QA>B
3
2

Vcc

Figure 10
Evaluation n°9
Soit les schémas de câblage suivants :
Vcc A Vcc B
2 4 2 4
3
1A 1Y ? S1 3
1A 1Y ? S1
5
1B 7 5
1B 7
6
2A 2Y ? S2 6
2A 2Y ? S2
11
2B 9 11
2B 9
10
3A 3Y ? S3 10
3A 3Y ? S3
14
3B 12 14
3B 12
13
4A 4Y ? S4 13
4A 4Y ? S4
4B 4B
1 1
15
A/B 15
A/B
E E
74HC157 74LS158

Figure 11 Figure 12
Vcc C
Vcc D
8 10
4
3
X0 Y
5
? S1 7
X0
X1
Y ? S1
2
X1 6
6
X2
1
X2
X3
Y ? S2 5
4
X3
15 X4
14
X4 3
X5
13
X5 2
X6
12
X6 1
X7
X7 23
X8
22
11 X9
10
A 21
X10
9
B 20
X11
C 19
X12
18
7 X13
E 17
X14
16
74HC151 X15
15
14
A
13
B
C
Figure 13 11

9
D

E
74150

1) Identifier les circuits : Figure 14


 A : …………………………………………………………………………………
 B : …………………………………………………………………………………
 C : …………………………………………………………………………………
 D : …………………………………………………………………………………
5
2) En se référant aux schémas de câblage des circuits A, B, C et D, compléter le tableau
suivant en précisant l’état logique de chaque variable.
Circuit A ̅ 4A3A2A1A 4B3B2B1B ̅ S4S3S2S1
74157 …. …. … …. ….
Circuit B ̅ 4A3A2A1A 4B3B2B1B ̅ S4S3S2S1
74158 …. …. … …. ….

Circuit C ̅ C B A S2 S1
74151 …. … …. …. …. ….

Circuit D ̅ D C B A S1
74150 …. …. … …. …. ….

Evaluation n°10
Soit le schéma de câblage du CI 4555 ci-contre :
1) Identifier ce circuit :……………………………………………..
2) Compléter le tableau suivant :
E S2 S1 Q3 Q2 Q1 Q0
0 0 0 …. …. …. ….
0 0 1 …. …. …. ….
Q0
S1
0 1 0 …. …. …. …. 2
3
A Q0
4
5 Q1
B Q1
0 1 1 …. …. …. …. S2 Q2
6

1 0 0 …. …. …. ….
1
E Q3
7 Q2
1 0 1 …. …. …. …. E 4555 Q3
1 1 0 …. …. …. ….
Figure 15
1 1 1 …. …. …. ….
3) Quel est le rôle de l’entrée E : …………………………………………………………………………..

4) Compléter le schéma de câblage ci-contre pour avoir à la sortie du CI 4555


F = S1S2

S1 14 12
A Q0
13 11
B Q1
S2 15
Q2
10
9
F
E Q3

4555 Figure 16

Evaluation n°11

Soit l’unité logique (UL) donnée par le montage suivant :


1
3 X
2
U1
6 7
5
1X0 1Y S
4
1X1
3
1X2
1
1X3
a 3 Y 10 9
2 11
2X0 2Y
12
2X1
2X2
b 13
2X3
14
2
A
1 2 Z 1
B
1E
15
2E
74HC153

1
3 W Figure 17
2
S1 S0

1) Déduire l’équation de S en fonction de a, b, S0 et S1.


…………………………………………………………………………………………………………………………………………………………………………………

6
2) Compléter les tableaux suivants pour chaque combinaison de S0 et S1.
.
S1 S0 = 00 S1 S0 = 01 S1 S0 = 10 S1 S0 = 11
b a S b a S b a S b a S
0 0 …… 0 0 …… 0 0 …… 0 0 ……
0 1 …… 0 1 …… 0 1 …… 0 1 ……
1 0 …… 1 0 …… 1 0 …… 1 0 ……
1 1 …… 1 1 …… 1 1 …… 1 1 ……

Evaluation n°12
En se référant au datasheet du circuit 74LS381 et au schéma structurel
ci-contre :
3 8
A0 F0
1 9
A1 F1
1) Préciser 19
A2 F2
11
17 12
 La combinaison binaire de A3 F3

S2S1S0 = ...…..… 4
2
B0
 L’état logique de CN = ..…
B1
18
B2
16
 La fonction à réaliser : B3
G
13
…………………………..……. 15
CN P
14

5
S0
6
S1
7
S2

2) Donner l’état logique des opérandes suivantes: Figure 18 74381


A = A3A2A1A0 = ………………………………………………………
B = B3B2B1B0 = ………………………………………………………
F = F3F2F1F0 = ……………….………………………………………

7
SOLUTION PROGRAMMÉE

Evaluation n°13
Un parking public présente deux issus à l’entrée
et deux issus à la sortie. L’accès à ce parking
est autorisé ou refusé en fonction du nombre de
places disponibles.

Le système de gestion du parking est appelé à


effectuer certaines opérations arithmétiques
telles que l’addition, la soustraction et la
comparaison.
Figure 19

 Etude d’un additionneur


Pour déterminer le nombre total NE de voitures qui sont entrées par les deux issus, le
système de gestion du parking effectue l’addition des nombres NE1et NE2représentant le
nombre de voitures qui sont entrées par chaque issu. L’activation d’une entrée de
validation VE reliée à la broche <<RA0>> autorise l’addition de ces deux nombres.
De même, pour obtenir le nombre total NS de voitures qui sont sorties par les deux
issus, le système de gestion du parking effectue l’addition des nombres NS1et NS2
représentant le nombre de voitures qui sont sorties par chaque issu. L’activation d’une
entrée de validation VS reliée à la broche <<RA1>> autorise l’addition de ces deux
nombres.
On suppose que les nombres NE1, NE2, NS1et NS2sont des mots binaires à 4 bits
chacun. On donne ci-dessous le schéma de simulation relatif à cette application.

NE2 NE1

13 OSC1/CLKIN RB0/INT 33
14 OSC2/CLKOUT RB1 34
RB2 35
2 36
VE 3
RA0/AN0
RA1/AN1
RB3/PGM
RB4 37
4 RA2/AN2/VREF-/CVREF RB5 38
5 39
VS 6
RA3/AN3/VREF+
RA4/T0CKI/C1OUT
RB6/PGC
RB7/PGD 40
7 RA5/AN4/SS/C2OUT
RC0/T1OSO/T1CKI 15
8 RE0/AN5/RD RC1/T1OSI/CCP2 16
9 RE1/AN6/WR RC2/CCP1 17
10 RE2/AN7/CS RC3/SCK/SCL 18
RC4/SDI/SDA 23
1 MCLR/Vpp/THV RC5/SDO 24
RC6/TX/CK 25
RC7/RX/DT 26

RD0/PSP0 19
Somme

RD1/PSP1 20
RD2/PSP2 21
RD3/PSP3 22
RD4/PSP4 27
RD5/PSP5 28
RD6/PSP6 29
RD7/PSP7 30

PIC16F877A

Figure 20
NS1 NS1

8
L’affichage du résultat de l’addition de l’un des nombre NS ou NE est en binaire,
compléter le programme en MikroC ci-après :
Programme Commentaires
char NE,NS ,NE1,NE2,NS1,NS2; //Déclaration des variables
sbit VE …………………………..; //Déclaration de la variable VE
……………..at PORTA.B1; //Déclaration de la variable VS
voidmain() { //Début du programme principal
TRISA=0x….; ADCON1=0x….;
TRISB=0x….; TRISC=0x….; //Configuration des registres
TRISD=…;
PORTD=…; //Initialisation du port D
while (1) { //Début de la boucle tant que
//Condition de calcul et affichage
if ((VE==1)…… (VS==0))
de NE
{
NE1=(PORTB … 0X0F); //Etablir la valeur de NE1
NE2=(PORTB)>>4; //Etablir la valeur de NE2
NE= ……………………; // Calcul du nombre NE
//Afficher la valeur de NE en
PORTD=NE;
binaire
}
else
//Condition de calcul et affichage
…((……….)&&(VE==0))
de NS
{
NS1=(……………….& 0X0F); //Etablir la valeur de NS1
NS2=(……………….>>4); //Etablir la valeur de NS2
…………………….; // Calcul du nombre NS
//Afficher la valeur de NS en
…………………....;
binaire
}
else
PORTD=0;
…….. // Fin de la boucle tant que
} //Fin du programme principal

 Etude d’un soustracteur


Pour déterminer le nombre de voitures garées (NG) dans le parking, le système de gestion du
parking effectue la soustraction entre les nombres NE et NS. L’activation d’une entrée de
validation VG reliée à la broche RA2 autorise la soustraction de ces deux nombres (NE – NS).
Le nombre NG est affiché sur deux afficheurs 7 segments (à cathodes communes).

9
NE

13 33
NGD NGU
OSC1/CLKIN RB0/INT
14 34
OSC2/CLKOUT RB1
35
RB2
2 36
RA0/AN0 RB3/PGM
3 37
RA1/AN1 RB4
4 38
VG 5
RA2/AN2/VREF-/CVREF
RA3/AN3/VREF+
RB5
RB6/PGC
39
6 40
RA4/T0CKI/C1OUT RB7/PGD
7
RA5/AN4/SS/C2OUT
15
RC0/T1OSO/T1CKI
8 16
RE0/AN5/RD RC1/T1OSI/CCP2
9 17
RE1/AN6/WR RC2/CCP1
10 18
RE2/AN7/CS RC3/SCK/SCL
23
RC4/SDI/SDA
1 24
MCLR/Vpp/THV RC5/SDO
25
RC6/TX/CK
26
RC7/RX/DT
19
RD0/PSP0
20
RD1/PSP1
21
RD2/PSP2
22
RD3/PSP3
27
RD4/PSP4
28
RD5/PSP5
29
RD6/PSP6
30
RD7/PSP7

PIC16F877A

Figure 21
NS

En se référant à la description du fonctionnement du système et à la figure ci-dessus,


compléter le programme suivant par les instructions convenables afin de réaliser l’opération de
soustraction désirée.

Programme Commentaires
char NE, NS, NG, NGU, NGD;
………………………………..; //Déclaration de la variable VG
void main() {
TRISA=0x…..; ADCON1=0x…..; //Configuration des registres
TRISB=0x…..; TRISC=0x……;
TRISD=…..;
PORTD=0;
while (1) {
if (VG==1)
{
NE=PORTB & 0x1F ; //………………………………………
NS=PORTC & 0x1F; //………………………………………
………………….; //Calcul du nombre NG
NGU= …………………; // Unités de NG
………= NG/10; //Dizaines de NG
PORTD=NGU +16*NGD; //Affichage de la valeur de NG
}
else PORTD=0;
}
}
10
 Etude d’un comparateur
La partie commande du système de gestion du parking réalise la comparaison des deux
nombres binaires NG et NC représentant respectivement le nombre de voitures garées NG et
la capacité du parking NC.
On se propose de compléter le programme ci-dessous qui assure la comparaison entre deux
mots binaires NG et NC à 5 bits chacun et afficher le résultat sur un afficheur 7 segments (à
cathodes communes).
Une entrée de validation (VG) est reliée à la broche RE0 permet d’autoriser la comparaison.
Si NG>NC alors l’afficheur affiche S (Comme supérieur);
Si NG=NC alors l’afficheur affiche E (Comme égale) ;
Si NG<NC alors l’afficheur affiche I (Comme inférieur).

Figure 22

On donne ci-dessous le schéma de simulation :


RN1
1 16
13 OSC1/CLKIN RB0/INT 33 2 15
14 OSC2/CLKOUT RB1 34 3 14
RB2 35 4 13
2 RA0/AN0 RB3/PGM 36 5 12
3 RA1/AN1 RB4 37 6 11
4 RA2/AN2/VREF-/CVREF RB5 38 7 10
5 RA3/AN3/VREF+ RB6/PGC 39 8 9
6 RA4/T0CKI/C1OUT RB7/PGD 40
7 RA5/AN4/SS/C2OUT RX8
RC0/T1OSO/T1CKI 15
8 16
VG 9
RE0/AN5/RD
RE1/AN6/WR
RC1/T1OSI/CCP2
RC2/CCP1 17
10 RE2/AN7/CS RC3/SCK/SCL 18
RC4/SDI/SDA 23
1 MCLR/Vpp/THV RC5/SDO 24
RC6/TX/CK 25
RC7/RX/DT 26

RD0/PSP0 19
RD1/PSP1 20
RD2/PSP2 21
RD3/PSP3 22
RD4/PSP4 27
RD5/PSP5 28
RD6/PSP6 29
RD7/PSP7 30

PIC16F877A

Figure 23
NC NG

En se référant à la description du fonctionnement du système et au schéma de


simulation, compléter le programme ci-après par les instructions convenables afin de réaliser
la comparaison des nombres NG et NC.

11
Programme Commentaires
char…….,……….; //Déclarer deux variables NG et NC de type octet
# define VG RE0_bit
void main()
{
ADCON1=0x……; // PortA configuré en entrées numériques
………….…;……………….; // Configuration des portB et portc
………….…;……………….; // Configuration des portD et portE
……………………; //Initialisation du portB à 0
while (1)
{
PORTB=0;
while (VG=1)
{
NC= (PORTC & 0X1F); //Etablir la valeur de NC
…………………………; // Etablir la valeur de NG
if (…………….) PORTB=0x…….; // Afficher E
if (NG>NC) PORTB=0x ……….; //…………………………………
if (……………..) PORTB= 48; //…………………………………
}
}
}

Evaluation n°14
Etude d’une UAL :
Le microcontrôleur 16F877 est utilisé pour réaliser des opérations arithmétiques et logiques.
Soient A et B deux mots binaires à 4 bits et S le résultat de l’opération effectuée.
A (a3,a2,a1,a0), B(b3,b2,b1,b0) et S(S4,S3,S2,S1,S0), S4 étant la retenue.
Les entrées de sélection des opérations à réaliser sont affectées aux bits RE0, RE1, RE2 du
PORTE.
Le tableau ci-dessous résume le fonctionnement de L’UAL.

Bits de sélection
Opérations
RE2 RE1 RE0
0 0 1 A OR B
0 1 0 A AND B
0 1 1 A XOR B
1 0 0 A-B
1 0 1 A+B
1 1 0 A*B
1 1 1 A/B

12
En se référant au tableau de fonctionnement et au schéma de câblage ci-dessous,
compléter le programme en MikroC permettant de réaliser les différentes opérations
arithmétiques et logiques.
N.B : Utiliser des fonctions spécifiques pour chaque opération.
Résultat (S)

13 33
OSC1/CLKIN RB0/INT
14 34
OSC2/CLKOUT RB1
35
RB2
2 36
RA0/AN0 RB3/PGM
3 37
RA1/AN1 RB4
4 38
RA2/AN2/VREF-/CVREF RB5
5 39
RA3/AN3/VREF+ RB6/PGC
6 40
RA4/T0CKI/C1OUT RB7/PGD
Entrée de selection

7
RA5/AN4/SS/C2OUT
15
RC0/T1OSO/T1CKI
8 16
RE0/AN5/RD RC1/T1OSI/CCP2
9 17
RE1/AN6/WR RC2/CCP1
Entrées de 10
RE2/AN7/CS RC3/SCK/SCL
18

sélection 1
MCLR/Vpp/THV
RC4/SDI/SDA
RC5/SDO
23
24
A
25
(E) RC6/TX/CK
26
RC7/RX/DT
19
RD0/PSP0 20
RD1/PSP1
21
RD2/PSP2
22
RD3/PSP3 27
RD4/PSP4
28
RD5/PSP5
29
RD6/PSP6
RD7/PSP7
30
B
PIC16F877A
Figure 24

char A,B,E,S; //Suite du programme

TRISB=0B……………..; TRISC=255;
void ET_logique ()
TRISD=………………; TRISE=7;
{ S= ………………………..; } PORTB=…………………………….;
void OU_logique () while (1)
{ S= ……………………… ;} {
void OU_exclusive () A= (PORTC & 0X0F);
{ S= (A ^ B) ; } B=(PORTD &……...);
void addition () E= PORTE;
{S= …………………...;} PORTB=S;
void soustraction () if (E==……) ET_logique();
{ S= ……………………; } if (E==…...) OU_logique();
void………………………… if (E==3) OU_exclusive();
{ S= (A * B) ; } if (E==4).………………….…;
void division () if (E==5) ……………………..;
{ S= ……………… ; } if (E==6) multiplication();
void main() if (E==……) division();
{ }
ADCON1=0x87; }

13

Vous aimerez peut-être aussi