BAJOS – Java on Embedded Systems

Noch ungefähr ein halbes Jahr studiere ich an der Berufsakademie Berlin Informatik. Da einer der drei festangestellten Lehrbeauftragten in unserer Fachrichtung sehr an Embedded Systems interessiert ist, haben wir Studenten des öfteren die Möglichkeit Software für ein solches System zu entwickeln.

Konkret verfügt die Berufsakademie über ein Labor in dem jeder Platz mit einem Charon II-Entwicklungsboard ausgestattet ist. Auf diesem Board befindet sich ein AVR-Mikrocontroller (der Atmega 128 ) , Flash-Speicher, ein EEPROM und etwas RAM. Von allem Speicher ist, wie es für eingebettete Systeme typisch ist, sehr wenig vorhanden.

Die Entwicklung für dieses System ist jedoch dank der Tools die an der Berufsakademie teils durch den Prof, teils durch Studenten entwickelt wurden erstaunlich einfach. Ich will die Toolchain einmal vorstellen. Wie es Standard ist werden Programme für das System entweder direkt in Assembler (eher selten) oder aber in C geschrieben und dann mittels AVR-GCC kompiliert. Dies alles geschieht auf einem Linux-System. Angeschlossen an den Rechner ist über eine serielle Schnittstelle das Entwicklungsboard. Auf diesem System läuft ein Programm, das den Namen BAMO trägt.

Dabei handelt es sich um ein Monitorprogramm, welches es ermöglicht Programme vom Rechner über das Kermit-Protokoll zu übertragen, Programme auszuführen, Programme zu disassemblieren, den Speicher zu betrachten, Programme schrittweise auszuführen und noch einiges mehr. Man verbindet sich dann also mit dem Kermitprogramm auf dem Rechner auf das eingebettete System und läd das eben geschriebene Programm ebenfalls mittels Kermit auf das System. Dort kann es dann ausgeführt werden.

Mithilfe dieser Programme ist die Entwicklung für das System sehr schnell möglich. So entwickeln Studenten im dritten Semester im Fach „Embedded Systems“ bspw. eine Ansteuerung für LCD-Displays oder wie in meinem Falle eine Stopuhr, die mit dem eingebauten Timer arbeitet und die Zeit ebenfalls auf einem LCD-Display ausgibt.

Für die Mikrocontrollersysteme an der Berufsakademie wird jedoch derzeit auch ein anderes Programm entwickelt was derzeit noch ziemlichen Pioniercharakter hat. Dabei handelt es sich um eine Java Virtual Machine, die sowohl auf eingebetteten Systemen als auch auf normalen Desktopsystemen lauffähig ist. Darin enthalten sind auch diverse Standardklassen wie bspw. die String-Klasse und andere. Derzeit läuft die VM auf AVR8- und AVR32-Controllern, sowie auf Linux.

Wer sich für das Projekt interessiert kann sich den Quellcode unter http://cs.ba-berlin.de/ herunterladen. Da es sich bei dem Projekt um eine quelloffene Entwicklung handelt ist auch die Mitarbeit an dem Projekt möglich.

Advertisements

Über kenny1987

Hallo Leute, ich bin kenny. Ich studiere momentan Informatik und werde über alles interessante was mir so über den Weg läuft bloggen. Seien es irgendwelche News oder aktuelle Entwicklungen von meinen Anwendungen. Viel Spaß :)
Dieser Beitrag wurde unter Programmieren, Studium abgelegt und mit , , , , , , , , , , , , , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s