Académique Documents
Professionnel Documents
Culture Documents
Microcontrôleurs
MASTER 1- SEIB
Gestion d’un système feux tricolores pour carrefour routier par le PIC 16F84
Soit l’exemple de système de gestion de feux tricolores extrait du Logiciel Isis Proteus Pro V7
Shéma de cablage :
Voix 1
Rouge 1
1
Orange 1
1
Voix 2 Vert 1
Rouge 2
1
Orange 2
1
Vert 2
Programme assembleur :
1
Abdelilah KAHAJI, ENSA-Agadir
TP/TD N°2
Microcontrôleurs
MASTER 1- SEIB
A - Compréhension du programme :
1 : Lors de l’initialisation du programme la variable state est remise à zéro. D’après les lignes 29 et
30, Quelles sont les différentes valeurs possibles que peut prendre cette variable ? justifier votre
réponse.
2 : Selon les valeurs de la variable state, quelle valeur retourne le sous-programme getmask dans w.
prenez les exemples de valeurs pour state=0, state=1, state=2 et state=3. Justifier votre réponse en
décrivant le rôle de chacune des instructions de Sous-programme getmask.
3 : Le programme principal reprend la valeur de w et l’envoie vers le port B pour commander le feu
tricolore. Selon ces valeurs donner l’état des feux tricolores sur le tableau suivant :
2
Abdelilah KAHAJI, ENSA-Agadir
TP/TD N°2
Microcontrôleurs
MASTER 1- SEIB
4 : La temporisation est assurée par le sous-programme wait qui fait appel à son tour au sous-
programme wait2. Donner le nombre d’exécution de la boucle composée des lignes 58-59 lors d’un
appel au sous-programme wait. Etablir les organigrammes des sous programmes wait et wait2.
Travaux pratique :
B- Evolution du programme :
On désir modifier le fonctionnement du feux tricolores selon les chronogrammes ci-dessous
V1
O1
R1
V2
O2
R2
10 20 30 40 50 t en S
Travaux pratique :
3
Abdelilah KAHAJI, ENSA-Agadir
TP/TD N°2
Microcontrôleurs
MASTER 1- SEIB
4
Abdelilah KAHAJI, ENSA-Agadir