Dieses Prinzip mit der Abarbeitung habe ich begonnen nach Arduino zu exportieren. Bloß, aufgrund des Speichermangels, sind dort die Befehle anders. Es gibt auch keine komplexeren Codeblöcke, so, wie für die Browseranwendung. Wie das dann aussehen könnte, wäre als Code so:
die reinen Code-Blöcke, als Hexdarstellung:
[01 20 00 01 08 04 00 01 02 01 02 01 02 02 1 02 00 01 08 04 00]
Mit Erklärung:
Micro Code Stapelverarbeitung
Test für LED an I/O-Pin 4:
Variable#0 laden [1,2,0,HIGH]
Ausgang setzen [8,4,0]
Test über indirekte Variable:
Variable#1 laden [1,2,1,2]
Variable#2 laden [1,2,2,HIGH]
Variable#0 über Variable#1 laden [2,0,1]
Ausgang setzen, Inhalt in Variable#0 [8,4,0]
Die Codes werden übersetzt und dann in der Benutzeroberfläche, als Befehle, in lesbarem Text ausgegeben.
Die Eingabe werde ich etwa so gestalten, dass man die Befehle aus einer Liste auswählen kann.
Es gibt - je nach Funktionsumfang - für jeden µC extra Befehlscodes. Derselbe Befehlscode hat dann auf jedem µC eine andere Bedeutung. Nicht allerdings die Grundfunktionen, wie Inkrementieren, Variablen Werte zuweisen etc.
Da das noch in Entwicklung ist, kann ich Dir noch keinen fertigen Programmablauf zeigen, eben nur das Prinzip und den Aufbau.
Man muss auch immer bedenken, dass die Grundfunktion im µC selbst steckt. Wenn es dort keine Funktion gibt (in Arduino-IDE programmiert), die zum Beispiel eine Kurve fahren kann, wird es dafür auch keinen Befehlscode für die Mini-Stapel geben. Vielleicht ein wenig an die Stapelverarbeitung von IBM-DOS oder MS-DOS denken. Dort ruft man fertige Programme auf und übergibt ihnen Parameter. So soll das Prinzip hier auch sein. Es muss die endgültige Programmierung nicht festgelegt werden. Die Firmware muss nur die Funktionen haben. Später wird der Stapelcode eingespeist und die Funktionen sinnvoll miteinander verknüpft.
Lesezeichen