Ich habe mir Gedanken gemacht, zwei Mal drüber geschlafen und mich für diese Variante entschieden, die Schnittstellen, die meine Firmware hat, in der Benutzeroberfläche abzubilden.

Bild hier  

Dazu gehören Variablen, die für Berechnungen usw. benötigt werden. Zusätzliche, spezielle Funktionen (Standardfunktionen, wie Variablen manipulieren, Rechenoperationen, Sprünge usw. müssen nicht extra aufgeführt werden). Die einfache Programmabarbeitung in Blöcken (Stapel). Und das Definieren von speziellen Sprungzielen, hier unter Prozeduren. Eine Prozedur soll hier so definiert werden, dass die Bezeichnung und der Stapel angegeben werden, der zur Ausführung gelangt.

Die einzelnen Geräte ( wie hier der ATmega328 ) bekommen eine eindeutige ID zugewiesen. Normalerweise spielt es keine Rolle, welcher Stapel für welches Gerät entworfen wurde, weil die benötigten Stapel zur Programmabarbeitung untereinander verkettet sind. Daher muss nur ein Stapel zu Anfang exakt zugeordnet und mit einer bestimmten Nummer versehen werden können.

Ich denke, damit habe ich alles abgedeckt, was ich benötige, um die Programmierung eines Gerätes in der Benutzeroberfläche vornehmen zu können.

Die Abbildung dient nur als Beispiel, um den Aufbau zu zeigen.

MfG