Visual Forth für Android und Arduino

Ich bin ja Experte darin, Dinge in einen Topf zu werfen, die sonst nix miteinander am Hut haben. Anders ausgedrückt:

Wenn man Müsli, Tomatensoße, Klebstoff und Lötzinn kräftig aufkocht, kommt wohl etwas wie das hier dabei raus:

Das ist … erklärungsbedürftig.

Das Bild zeigt eine App, an der ich gerade arbeite, und die demnächst ins Licht der Öffentlichkeit treten wird (ich teste und optimiere noch wild dran herum). Hinter dem klobigen Namen “Visual Forth for Arduino” verbirgt sich eine Art grafische Variante der Programmiersprache Forth. Ähnlich wie Scratch kann man Befehle als Klötzchen untereinander kleben, um ein Programm zu erzeugen. Der Clou daran: Dieses Programm läuft dann per Knopfdruck auf einem ganz normalen Arduino Nano, der über ein OTG-Kabel via USB am Tablet hängt. Einzige Voraussetzung: Der Arduino wurde zuvor mit Finf bespielt. Finf (“Finf is not Forth”) ist eine kleine Forth-Umgebung für Arduino, Open Source, ursprünglich von Leandro A. F. Pereira, wird aber von mir weiterentwickelt (und korrigiert, räusper). Meine App erzeugt also aus den Klötzchen Forth-Code (oder besser: Finf-Code und lässt ihn auf dem Arduino laufen.

Vorteil im Vergleich zu Scratch für Arduino: Das Programm funktioniert auch dann noch, wenn man den Arduino aus dem Tablet stöpselt und einfach an eine Stromversorgung anschließt! (In der Premium-Version meiner App, har har.)

Jetzt könnt ihr ja mal raten, was obiger Forth-Code auf dem Arduino tut.

Auflösung
Wenn man den mittleren Anschluss eines Spannungsteilers mit einem normalen und einem lichtempfindlichen Widerstand an Eingang A2 anschließt und eine Leuchtdiode an D2, dann geht die LED an, wenn es dunkel wird.

An der Einrücktiefe erkennt man übrigens die Stapel-Höhe vor dem jeweiligen Befehl. So hinterlässt der Analogread-Befehl seinen Messwert natürlich (symbolisch sichtbar anhand der Einrückung darunter) auf dem Stapel. Daher “visuell” – denn wer mal versucht hat, Forth zu programmieren, ist entweder verrückt geworden oder hat sich dergleichen aufgemalt (Mehr zum Thema “Forth” und “verrückt” in diesem Buch).

Meinen Fork von Finf gibt es hier auf github.

Mehr zu diesem spannenden Maker-Thema demnächst.

Please follow and like us: