Real-Time and Embedded Systems

Programmierung

Zur Programmierung der Mindstorms-Roboter werden am Lehrstuhl die folgenden Systeme verwendet.

Hinweis:

Aktuelle Projekte hier wurden hauptsächlich in oder mit Hilfe von BrickOS implementiert (ehemals legOS). Die anderen Programmiersprachen seien hier nur der Vollständigkeit halber erwähnt und die Informationen sind eventuell nicht aktuell.

BrickOS

Lego Programmierung 1 Die Entwicklung unter legOS erfolgt in C oder C++, der von einem Standard-ggc mit Hitachi H8 Backend compiliert wird. Dazu gehört ein Posix-ähnliches Betriebssystem, das als Firmware auf dem RCX läuft.

 

tinyVM

Lego Programmierung 1 Eine der beiden Java Virtual Machines für den RCX ist tinyVM. Sie unterscheidet sich von ihrem Nachfolger leJOS dadurch, daß sie etwas weniger Funktionen bietet aber mit deutlich weniger Speicher auskommt.

 

leJOS

Lego Programmierung 1 Der Nachfolger der tinyVM erlaubt es, den RCX in Java zu programmieren. Diesen Komfort bezahlt man allerdings damit, daß die Hälfte des RCX-Speichers von der Virtual Machine belegt wird.

 

NQC

Lego Programmierung 1 "Not quite C", ein abgesprecktes C-derivat zur Mindstorms-Programmierung. Hier der Link auf die Projekthomepage.

 

Esterel

Lego Programmierung 1 Mit Esterel kann der Roboter auf einer höheren Abstraktionsebene von Zuständen und Aktionen modelliert werden. Aus dem Modell erzeugt Esterel dann den Code für den RCX.