Vous êtes sur la page 1sur 27

ISET DE GABES TD A.

U 2015/2016 Sem 2
LEAII41
MICROCONTROLEURS PIC
PROGRAMMATION EN MIKROC
ENSEIGNANT : M. TAYARI LASSAAD
CLASSE : LEAII41

PARTIE I
L’objectif de cette partie est d’écrire un programme C sous MikroC qui utilise les LEDs et les
boutons poussoirs, d'implanter et de simuler ce programme sur ISIS et de faire des
investigations pertinentes.

Exercice 1
On désire clignoter un LED à l’aide d’un microcontrôleur 16F84A comme donnée par
la figure suivante :

Figure 1 : Commande de clignotement d’une LED via un microcontrôleur 16F84A.

Le fonctionnement normal est décrit par le chronogramme suivant :

Figure 2 : Chronogramme de fonctionnement.

1) Proposer un organigramme ou un algorithme répondant à ce cahier de charge.

TP MICROCONTROLEURS Page 1
2) Proposer un Programme MIKROC répondant à ce cahier de charge.
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

Exercice 2
On désire automatiser la gestion des LEDs tricolores à l’aide d’un microcontrôleur
16F84A comme le montre la figure 3.

Figure 3 : Commande de 3 LED tricolores via un microcontrôleur 16F84A.

1) Ecrire un programme MicroC qui permet de faire clignoter les 3 LEDs tricolores
simultanément. Le fonctionnement normal est décrit par le chronogramme
suivant :

Figure 4 : Chronogramme de fonctionnement.

TD MICROCONTROLEURS Page 2
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
1) On désire automatiser la gestion de feux tricolores, réglant la circulation d’un
carrefour à deux voies. Le cahier des charges stipule la possibilité de moduler les
temporisations par l’opérateur en fonction de la densité de la circulation. L’étude
se limitera à un seul feu et le fonctionnement normal est décrit par le
chronogramme donné par la figure 5. Proposer un algorithme répondant à ce
cahier de charge.

TD MICROCONTROLEURS Page 3
Figure 5 : Chronogramme de fonctionnement.

3) Ecrire le programme MikroC correspondant à ce cahier de charge.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
Exercice 3
On désire commander deux LEDs à l’aide d’un interrupteur via un microcontrôleur
PIC 16F84A comme donnée par la figure 6.

Figure 6 : Commande de deux LEDs à l’aide d’un interrupteur via un PIC 16F84A.

TD MICROCONTROLEURS Page 4
1) Ecrire un programme MicroC qui permet de faire allumer et éteindre les deux
LEDs par un l’interrupteur.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

2) Ecrire un programme MicroC qui permet d’indiquer l’état ouvert ou fermé de


l’interrupteur :
LED Bleu allumée : interrupteur ouvert.
LED Vert allumée : interrupteur fermé.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 5
Exercice 4
On désire commander deux LEDs à l’aide de deux boutons poussoirs via un
microcontrôleur 16F84A comme donnée par la figure 7.

Figure 7 : Commande de deux LEDs à l’aide de deux boutons poussoirs via un PIC 16F84A.

Ecrire un programme MicroC qui permet de faire allumer la LED bleu pour une
durée de 300ms et la LED verte pour une durée de 500ms suite à l’action de l’un de
deux boutons poussoirs.

1) Proposer un organigramme ou un algorithme répondant à ce cahier de charge.

TD MICROCONTROLEURS Page 6
2) Ecrire le programme MikroC correspondant à ce cahier de charge.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 7
PARTIE II
L'objectif de ce TP est de faire concevoir et tester des programmes relatifs à la réalisation d’un
télérupteur et d’une minuterie.

Exercice 1
On désire commander une LED par plusieurs endroits à l’aide d’un microcontrôleur
16F84A via des boutons poussoir BPi (BP1, BP2.......BPn)

Figure 1 : Réalisation d’un télérupteur à l’aide un PIC 16F84A.

Une impulsion sur l’un des boutons poussoir BPi, la LED D s’allume, une deuxième
impulsion la LED s’éteint.

1) Proposer un organigramme ou un algorithme répondant à ce cahier de charge.

TD MICROCONTROLEURS Page 8
2) Ecrire un programme MikroC qui répond au cahier de charge.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

3) proposer une autre solution en utilisant les interruptions (câblage + programme)


…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 9
Exercice 2
On désire réaliser une minuterie d’escalier à 3 temps réglable (1min, 3min, 5min) à
l’aide d’un microcontrôleur 16F84A.

Figure 2 : Réalisation d’une minuterie d’escalier à 3 temps réglable à l’aide d’un PIC 16F84A.

Le principe de fonctionnement est le suivant :

Une impulsion sur l’un des boutons poussoir BPi, la LED D s’allume pendant
un temps T puis s’éteint.
Deux imputions successive est sans effet.
Le temps est réglable par un commutateur C à trois positions.

1) Proposer un organigramme ou un algorithme répondant à ce cahier de charge.

TD MICROCONTROLEURS Page 10
2) Ecrire un programme MikroC qui répond au cahier de charge.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 11
PARTIE II
L'objectif de cette partie est de prendre en main la commande d’afficheurs 7 segments et
des compteurs et des décompteurs.

Exercice 1
On désire commander un afficheur à 7 segments à fin de réaliser un compteur
modulo 10 à l’aide d’un microcontrôleur 16F84A.

Figure 1 : Commande d’un afficheur 7 segments via un PIC 16F84A.

1) Remplir la table de vérité suivant de l’afficheur à 7 segments.

Segment G F E D C B A
PortB
DCBA RB6 RB5 RB4 RB3 RB2 RB1 RB0

0000 0 1 1 1 1 1 1 $3F


0001 
0010 
0011 
0100 
0101 
0110 
0111 
1000 
1001 

TD MICROCONTROLEURS Page 12
2) Ecrire un programme MikroC qui permet de réaliser le fonctionnement suivant :
Compteur modulo 10 commandé par l’interrupteur 1.
Décompteur modulo 10 commandé par l’interrupteur 2.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
3) Ecrire un programme MikroC qui permet de réaliser le fonctionnement suivant :
Compteur des nombres pairs commandé par l’interrupteur 1.
Compteur des nombres impairs commandé par l’interrupteur 2.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 13
Exercice 2
On désire réaliser un compteur modulo 100 par deux afficheurs multiplexés à l’aide
d’un microcontrôleur 16F84A.

Figure 2 : Commande de deux afficheurs multiplexés via un PIC 16F84A.

Ecrire un programme MikroC qui permet de réaliser le compteur modulo 100. Les
deux pines RA0 et RA1 permette de sélectionner l’un de deux afficheurs 7 segments.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 14
PARTIE IV
En première partie, l'objectif de cete partie est de prendre en main avec la commande d’un
moteur pas à pas via un PIC16F84. La deuxième partie comprend la commande d’un afficheur
7 segments via un clavier. En troisièmes partie, l’objectif est maitriser une chaine simplifier
de traitement du signal, elle s’intéresse à l’acquisition d’un signal analogique (Dans notre cas
la température via un capteur LM35), le traiter puis afficher sa valeur sur un afficheur LCD.

Exercice 1
On désire commander un moteur pas à pas à l’aide d’un PIC 16F84A (figure 1)
conformément au chronogramme illustré par la figure 2 :

Figure 1 : Commande d’un moteur pas à pas à l’aide d’un PIC 16F841.

Figure 2 : Chronogramme de fonctionnement du moteur pas à pas commandé par un PIC16F84A.

1) Selon le schéma du circuit logique, déterminer la valeur du registre TRISB :

TRISB = (…………………)16

TD MICROCONTROLEURS Page 15
2) A partir du chronogramme du moteur pas à pas, remplir sa table de vérité

suivante:

Cycle RA5 RA3 RA2 RA1 RA0 PORTA

1
Marche 2
AV 3
4
5
Arrêt 0 0 0 0 0 $00
1
Marche 2
AR 3
4
5

3) Compléter l’algorithme suivant qui correspond au cahier de charge proposé.

Algorithme moteur_pas_pas;
variable i : integer ;
Constante sequence : array[5]of byte = ($......,$.......,$.......,$.......$.....);
Début
Trisa = $........; Trisb = $........; Porta = $........;
Tant que (1=1) faire
Début
Selon porta
$...........: Pour i = 4 downto 0 Faire
Début
.....................................;
.....................................;
Fin pour;
$...........: Portb = 0;
$...........: Pour i = 0 to 4 Faire
Début
.....................................;
.....................................;
Fin pour;
Fin Selon ;
Fin tant que ;
Fin;

TD MICROCONTROLEURS Page 16
4) Transformé cet algorithme en programme MikroC.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

Exercice 2
On désire commander un afficheur à 7 segments à l’aide d’un microcontrôleur
16F84A via un clavier à 12 touches (Figure 3).

Le principe de fonctionnement est le suivant :

L’appui sur une touche de 0 à 9 affiche sa valeur sur l’afficheur 7 segments.


L’appui sur la touche (*) affiche la lettre E sur l’afficheur 7 segments.
L’appui sur la touche (#) affiche la lettre F sur l’afficheur 7 segments.

TD MICROCONTROLEURS Page 17
Figure 3: Commande d’un afficheur 7 segments via un PIC 16F841.

1) Ecrire le programme MikroC qui répond à ce cahier de charge.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 20
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

Exercice 3
On souhaite réaliser un thermomètre programmable à base d’un PIC. Ce système est
constitué d’une partie analogique (capteur de température, amplificateur et
résistances) et d’une partie numérique (PIC 16f877A et un afficheur LCD 2x16). La
configuration du thermomètre programmable est donnée par le schéma synoptique
de la figure 4:

TD MICROCONTROLEURS Page 21
1) Calculer le gain de l’amplificateur puis en déduire la valeur de la résistance R2 si
R3= 1k .
Sachant que le capteur LM35 a une sensibilité de 10mV/°C.
Soit pour une température Tmax = 100°C la tension VT(max) = 1V et la tension
Vout(max) = 5V.
La plage du thermomètre est de [0°C à 100°C].

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
2) Ecrire un programme MikroC illustrant l'acquisition de la tension Vout, via le
convertisseur analogique numérique du PIC (AN0), et l'affichage de la
température correspondante.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 22
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 23
PARTIE V
Cet t e p a r t i e est composé de deux s o u s parties : L'objectif de la première est de
commander les feux de clignotement d’un scooter équipé de 4 feux de direction. L’objectif de
la deuxième est de savoir commander, via un PIC, un vérin pneumatique à double effet.

Exercice 1
On désir commander les feux de clignotement d’un scooter à l’aide d’un PIC 16F84A
comme illustré par la figure 1. Le scooter est équipé de 4 feux de direction : deux à
gauche et deux à droite (en avant et en arrière). Le conducteur du scooter dispose, au
niveau de la poignée du guidon d’un commutateur (Clign) à 3 positions. Ce
commutateur une fois positionné à gauche ou à droite par le conducteur, enclenche
simultanément à la fréquence de 2Hz, le clignotement des deux feux correspondants
accompagné d’un bip sonore. Le retour du commutateur à la position milieu se fait
automatiquement après alignement du scooter sur la route.

Figure 1: Commande des feux de clignotement d’un scooter à l’aide d’un PIC 16F84A.

TD MICROCONTROLEURS Page 24
1) A partir de la figure 1, compléter les affectations des deux registres TRIS A et
TRIS B.

RA4 RA3 RA2 RA1 RA0


TRIS A
0 0 0 0 0 0 …… .......

RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0


TRIS B
0 0 0 0 0 …… ....... .......

2) Proposer un organigramme ou un algorithme répondant à ce cahier de charge.

TD MICROCONTROLEURS Page 25
3) Ecrire le programme MikroC du clignotant assurant la commande des feux.

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 26
Exercice 2
On désire commander le vérin pneumatique C1 à double effet (figure 2) à l’aide d’un
PIC16F84A.

Figure 2: Commande d’un vérin pneumatique.

Le pré actionneur M1 est un distributeur qui distribue l’énergie fournie sans


apporter aucune modification.
Le capteur l11 est utilisé pour arrêtée l’avancement.
Le capteur l10 est utilisé pour arrêtée la recule.

Le vérin est commandé via un seul bouton poussoir départ cycle en avance et en
recul. Une impulsion sur le bouton poussoir déplace le vérin d’une position à une
autre.

Un afficheur LCD indique l’état et la position du vérin comme illustré par la figure 3 :

Au cours de l’avancement, l’afficheur LCD doit afficher « Sortie Vérin ».


Au cours du recule, l’afficheur LCD doit afficher « Recule Vérin ».
A la position l11, l’afficheur LCD doit afficher « P en Bas ».
A la position l10, l’afficheur LCD doit afficher « P en Haut ».
1) Compléter le branchement du circuit de commande du vérin dans la figure 3 :
Le bouton poussoir départ cycle BP.
Une LED rouge indique l’avancement du vérin.
Une LED bleu indique le recul du vérin.
Un interrupteur K11 modalisant le fonctionnement du capteur l11.
Un interrupteur K10 modalisant le fonctionnement du capteur l10.

TD MICROCONTROLEURS Page 27
Figure 3: Commande d’un vérin pneumatique via un PIC 16F84A.

1) Proposer un organigramme ou un algorithme répondant à ce cahier de charge.

TD MICROCONTROLEURS Page 28
4) Ecrire le programme MikroC qui repond à ce cahier des charges..

…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...
…………………………………………………………………………………………………...

TD MICROCONTROLEURS Page 29

Vous aimerez peut-être aussi