Vous êtes sur la page 1sur 1

Principal Janvier 2015

Etablissement : University Time Higher School

Matière : Système Temps Réels Classe : RT5 A et B


Documents : Non autorisés

Exercice 1 : (10 points)


On veut commander et coordonner un ensemble de robots, par une carte à base d’un
microcontrôleur 18Fxx programmer sous l’environnement µCOSII.
1- Écrire le programme qui contrôle le déplacement de plusieurs robots sur les chemins
suivants:

Sachant qu’on a deux robots :


 RobotAC : peut partir de A vers C.
 RobotDA : peut partir de D vers A.

Pour éviter tout risque de collision, il faut s’assurer que chaque segment du chemin (segments
AB, BC et DB) est utilisé par un robot au plus.
Soient les trois fonctions de chemin AD qui sont définis par :
void TraverserSegAB ( ) ; Traverser le segment AB
void TraverserSegBC ( ) ; Traverser le segment BC
void TraverserSegBD ( ) ; Traverser le segment BD

2- Est-ce que votre solution présente un problème d’interblocage ? Justifiez.

Exercice 2: (10 points)


Soit un système à quatre tâches :
La première tâche incrémente un compteur de -127 à 128 (signed char) au rythme
d’une seconde et affiche ces valeurs sur LCD, envoi les valeurs paire par queue de message
« QmsgP », les valeurs impaire par un deuxième queue de message «QmsgIMP », un Mbox
« TMbox » qui contient « Positif » si compteur est positif et « Négatif » si compteur est
négatif.
La deuxième tâche affiche le contenue de « QmsgP » multiplier par deux.
La troisième tâche affiche le contenue de « QmsgIMP » multiplier par trois.
La quatrième tâche affiche le contenue de Mbox .

1. Ecrire le programme de fonctionnement de système, prévoir un sémaphore pour la


protection de l’Afficheur LCD.

Vous aimerez peut-être aussi