Les microcontrôleurs — 4ᵉ Sciences Techniques 6 Sections31 Lessons5 Quizzes8 Hours
3.1 — Situation-problème : arrêter la sirène au bout de 30 secondes
Objectifs
- Comprendre pourquoi Delay_ms ne convient pas
- Formuler le besoin d’un compteur autonome
Le système fonctionne : dès qu’une zone est violée, le voyant clignote et la sirène retentit.
La réglementation impose cependant que la sirène s’arrête automatiquement au bout de
30 secondes, alors que le système doit continuer à surveiller les quatre zones pendant
tout ce temps.
Une première idée consiste à écrire Delay_ms(30000) ; dans la routine
d’interruption.
VérifiezQuestion éclair
Pendant l’exécution de
Delay_ms(30000), que fait le microcontrôleur ?aIl continue à surveiller les zones en arrière-plan
bRien d’autre : l’instruction bloque le processeur pendant 30 secondes
cIl passe en mode veille et se réveille tout seul
dIl exécute la routine d’interruption en parallèle
Problématique
Comment mesurer une durée précise sans immobiliser le microcontrôleur, de façon qu’il reste disponible pour le reste du programme ?
