TEMPORISATION LOGICIELLE TD PAGE 1 / 2
TD TEMPORISATION LOGICIELLE
La temporisation logicielle permet d’attendre un lapse de temps entre deux événements :
clignotement d’un voyant, attente entre l’affichage de deux messages successifs, etc. Elle permet aussi
de laisser le temps à un périphérique d’accomplir une tâche : Conversion analogique numérique et
numérique analogique, exécution d’une instruction d’un afficheur, etc. Pour réaliser une temporisation
logicielle il suffit de répéter n fois un certain nombre d’instructions.
I. Temporisation à une seule boucle
A. Algorigramme et programme en assembleur 68HC11
•Ecrire le programme associé à l’algorigramme ci-dessus. Pour la
variable n, on utilisera l’accumulateur A. Faire apparaître le nombre
de cycles de chaque instruction.
[ __ ] ________________________________________
[ __ ] ________________________________________
[ __ ] ________________________________________
[ __ ] RTS
•Exprimer le nombre de cycles machines effectués par ce programme en fonction de n.
___________________________________________________________________________________
___________________________________________________________________________________
•En déduire la valeur de n pour obtenir une temporisation de 500µs sachant qu’un cycle machine
dure 500ns.
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
a) Limite de ce programme
•Quelle est la valeur de n pour obtenir une temporisation de 100ms ?
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
•L’accumulateur A peut-il contenir une telle valeur ?
___________________________________________________________________________________
___________________________________________________________________________________
•Quelle est la durée maximale de la temporisation obtenue avec ce programme sachant que
l’accumulateur A n’a que 8 bits ?
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
___________________________________________________________________________________
2. Augmentation de la durée de la temporisation
•Proposer une modification de ce programme afin d’augmenter la durée de la temporisation.
___________________________________________________________________________________
[ __ ] ___________________________ * Initialisation de la variable n.
[ __ ] ___________________________ * ______-1 résultat stocké dans _______.
[ __ ] ___________________________ * Branchement conditionnel: Z=0? si oui
* branchement à CONT.
[ __ ] RTS * Fin du S/prg TEMPO.
•Exprimer le nombre de cycles machines effectués par ce nouveau programme en fonction de n.
___________________________________________________________________________________
___________________________________________________________________________________
Début de
Temporisation
Initialisation de la
variable n
n = 0 ?
Décrémentation de n
Fin de
Temporisation
oui
non
PDF Creator - PDF4Free v2.0 http://www.pdf4free.com