Hat jemand irgendwelche visuellen Beispiele?Wie könnte ich einen Interrupt (für Mikrocontroller) in einem Flussdiagramm darstellen?
Antwort
Sie müssten ein separates Ablaufdiagramm für die Interrupt-Verarbeitung haben. Flussdiagramme sind dazu gedacht, den Fluss der Kontrolle zu zeigen, und Interrupts sind aufgrund ihrer Natur eine Unterbrechung des Kontrollflusses.
Ich würde ein endliches Zustandsdiagramm einrichten, das die normalen Zustände der Kontrolle und der Unterbrechungszustände darstellt; Jeder Zustand wäre ein Block-Level-Element, das eine Flussdiagramm-Art von Diagramm enthält.
In der Regel markieren die Interrupts ohne ein Betriebssystem oder eine Bibliothek nur eine Variable, die dann den Fluss beeinflusst. Ich denke @JustJeff hat es richtig gemacht.
Je nach Flussdiagrammstruktur ist es wahrscheinlich am sinnvollsten, dass der Interrupt von einem Knoten/einer Box stammt, die nicht von einem anderen abgeleitet ist, da per Definition ein Interrupt nicht aus dem normalen Software-Fluss hervorgeht es ist ein softwaregesteuerter Interrupt). Es kann sinnvoll sein, sie in einem separaten Ablaufdiagramm zu speichern oder zusammen mit dem Rest des Ablaufdiagramms anzuzeigen, je nachdem, ob das Verhalten im Hauptfluss des Diagramms ausgelöst wird.
In der Regel kommunizieren Interrupts mit Ihrer "Haupt" -Funktion (oder anderen Interrupts) durch die Verwendung von "shared" globalen Variablen in C-basierten eingebetteten Systemen. Ich denke, eine sinnvolle Möglichkeit, dies in einem Flussdiagramm darzustellen, ist die Verwendung einer gestrichelten Linie zwischen Verarbeitungsblöcken, in denen solche "Kommunikationen" den Programmfluss beeinflussen.
- 1. Wie kann ich einen unerwarteten Reset in einem Mikrocontroller
- 2. Wie erzeuge ich effizient Zufallszahlen in einem Mikrocontroller?
- 3. Wie könnte ich NULL für ""
- 4. Unit-Testmuster für Mikrocontroller C-Code
- 5. Wie könnte ich einen horizontalen Pflücker machen?
- 6. Wie könnte ich einen Prüfsummenalgorithmus erraten?
- 7. Wie kann ich einen gewichteten, gerichteten Graphen in Java darstellen?
- 8. Ist XXTEA ein guter Verschlüsselungsalgorithmus für einen PIC-Mikrocontroller?
- 9. Schreiben von Apps in C für Mikrocontroller
- 10. Wie könnte ich einen fehlenden Dateideskriptor simulieren?
- 11. Wie soll ich einen mit zusätzlichen Informationen annotierten AST darstellen?
- 12. Javascript-Bibliothek für hierarchische Flussdiagramm
- 13. Wie würde ich einen Audio-Trakt auf Nyquist-Frequenz mit c und einem Mikrocontroller testen?
- 14. Darstellen eines Mehrfachauswahlfeldes für Wochentage in einem Django Modell
- 15. Wie kann ich einen booleschen Typ als relative Ganzzahl darstellen?
- 16. Wie kann ich einen Thread sofort beenden? (Kein Interrupt)
- 17. Wie könnte ich einen MMS-Audio-Stream in Ruby herunterladen?
- 18. Wie ist der primäre Speicher in einem Mikrocontroller organisiert?
- 19. Mikrocontroller schlägt bei malloc
- 20. Wie kann ich einen Benutzer-Interrupt zu einer Endlosschleife hinzufügen?
- 21. Wie finde ich für eine gemeinsame Interrupt-Leitung welchen Interrupt-Handler zu verwenden?
- 22. Wie implementiere ich eine eigene Flashing-Software für einen ATmega8-Mikrocontroller
- 23. Wie KVM Interrupt handhaben
- 24. Wie sende ich einen Interrupt an einen Handler, um eine Thread.sleep() zu brechen?
- 25. Netzwerkdiagramm/Flussdiagramm in JQuery
- 26. Gibt es Konventionen für das Flussdiagramm, die einen Switch von einer if-else-Kette unterscheiden?
- 27. Darstellen von Schleifen in einem UML-Aktivitätsdiagramm
- 28. STM32 Interrupt Handeling wenn Bedingung
- 29. Wie kann ich den Codeverlauf für Git Repo grafisch darstellen?
- 30. ein Flussdiagramm in HTML erstellen
Ok, die Interrupt-Verarbeitung ist ein separater Prozess. Aber wie kann ich es zum Beispiel im Hauptprozess darstellen? –
Nun, das ist die Sache - wenn der Hauptprozess frei läuft, wissen Sie nicht, wo es sein wird, wenn der Interrupt auftritt. Bei einigen eingebetteten Echtzeitanwendungen sehen Sie manchmal, dass 'Hauptverarbeitung' mit einem Interrupt synchronisiert ist. In diesem Fall könnte Ihr Flussdiagramm einen 'Warte auf Interrupt'-Block haben, aber umgekehrt könnte man argumentieren, dass das System in solchen Systemen nur ein ausgeklügeltes System ist Unterbrechungshandler. – JustJeff