Diagrammes de flux pour les applications intégrées

8

J'ai une application intégrée qui utilise des interruptions et dma. La boucle principale envoie uniquement des données au PC.

Comment concevoir un organigramme du programme? Comment montrer les interruptions et le dma travaillant sur un organigramme?

J'ai trouvé plusieurs sujets dans google sur les diagrammes uml intégrés, et quelques questions: concevoir des logiciels embarqués , mais je n'ai pas trouvé d'exemples de tels diagrammes.

krzych
la source
Voulez-vous un logiciel pour faire des diagrammes ou la théorie et les techniques sur la façon de les faire?
1
La théorie, les techniques et les exemples seront les meilleurs. J'utilise Visio ou Visual Paradigm pour concevoir de tels diagrammes, mais si vous avez quelque chose à recommander, ce sera également bon.
krzych
Jetez un œil à différents diagrammes UML .
Nick Alexeev
@NickAlexeev n'a malheureusement pas trouvé comment afficher les interruptions et le travail effectué par dma dans votre référence.
krzych
2
@krzych Des diagrammes de séquence peuvent être utilisés pour montrer l'interaction entre les interruptions et la boucle principale. Ce n'est pas aussi détaillé que les organigrammes, mais il peut montrer la dimension des interruptions.
Nick Alexeev

Réponses:

4

Affichez les diagrammes de flux de travail indépendamment, un pour la boucle principale, un pour le DMA et l'autre pour les interruptions.

Comme les interruptions sont déclenchées par des événements externes (comme ADC ready, timer, interrupts externes), il ne peut pas être dans la boucle principale.

Juste au début du workflow, placez le titre dans un cercle, par exemple: "Main", "EXT_INT", "DMA", etc.

Bonne chance!

Chirry
la source
0

Désolé, mais vous ne pouvez pas afficher plusieurs workflows distincts sur un même diagramme de flux connecté. Il existe rarement un endroit général à partir duquel le contrôle de la boucle principale est interrompu par un événement externe (interruption) -> ainsi, le point de connexion entre le flux du gestionnaire principal et celui de l'interruption ne peut pas être décrit sur le diagramme de flux.

La seule façon est de dessiner plusieurs diagrammes qui montrent des workflows de séquences qui peuvent s'exécuter "en parallèle" (processus RTOS) ou se bloquer (interruptions). Ces séquences auront leur position de début marquée par RESET, EXT_DATA_READY_EVENT ou tout autre nom significatif décrivant le début du flux d'exécution pour ce graphique. Chaque séquence aura sa propre fin ou même aucun marqueur de fin.

Ces organigrammes peuvent partager les mêmes indicateurs / variables pour montrer l'interdépendance.

Le diagramme de séquence peut également être utile pour vous, mais je suppose - ce n'est pas ce que vous vouliez principalement.

x4mer
la source