1
Electronique embarquée
Analyse et conception des programmes
Richard Grisel – Professeur des Universités – Université de
Rouen
Analyse et conception des Programmes
“Chaîne” de conception
Représentation des programmes
“Assemblage” et édition de liens
2
Chaînes de conception
Chaîne de conception: Description
généralisée de la conception d’un certain
type de programme.
Le concepteur s’occupe des détails pour
adapter la chaîne de conception à un
problème particulier.
I. Liste
Liste
create()
add-element()
delete-element()
find-element()
destroy()
Elément avec liste
1*
Définir les temporisateurs de
“Watch-Dog” et les
séquences d’activation du
moniteur
3
Eléments des chaînes de conception
Diagrammes de classes
Diagrammes d’état
Diagrammes de séquences
etc..
II. Machines d’état
Les machines d’état sont très utiles dans
beaucoup de contextes:
Séparation des entrées utilisateur
Réponses aux “stimuli” complexes
Contrôle des entrées séquentielles
4
Exemple de machine d’état
idle
buzzer seated
belted
no seat/-
seat/timer on
no belt
and no
timer/-
no belt/timer on
belt/-
belt/
buzzer off
No belt/buzzer on
no seat/-
no seat/
buzzer off
Liste pour machine d’état
Machine d’état
Etat
sorties (test des entrées)
5
Implantation en C
#define IDLE 0
#define SEATED 1
#define BELTED 2
#define BUZZER 3
switch (state) {
case IDLE: if (seat) { state = SEATED; timer_on = TRUE; }
break;
case SEATED: if (belt) state = BELTED;
else if (timer) state = BUZZER;
break;
}
III. “Buffer” Circulaire
x1 x2 x3 x4 x5 x6
t1t2t3
Chaîne de données
x1 x2 x3 x4
Buffer circulaire
x5 x6 x7
1 / 18 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !