Schön, dass Sie da sind!

PlusPedia wird derzeit technisch modernisiert. Wie alles, was bei laufendem Betrieb bearbeitet wird, kann es auch hier zu zeitweisen Ausfällen bestimmter Funktionen kommen. Es sind aber alle Artikel zugänglich, Sie können PlusPedia genauso nutzen wie immer.

Bei PlusPedia sind Sie sicher: – Wir verarbeiten keine personenbezogenen Daten, erlauben umfassend anonyme Mitarbeit und erfüllen die Datenschutz-Grundverordnung (DSGVO) vollumfänglich. Es haftet der Vorsitzende des Trägervereins.

Bitte beachten: Aktuell können sich keine neuen Benutzer registrieren. Wir beheben das Problem so schnell wie möglich.

PlusPedia blüht wieder auf als freundliches deutsches Lexikon.
Wir haben auf die neue Version 1.43.3 aktualisiert.
Wir haben SSL aktiviert.
Hier geht es zu den aktuellen Aktuelle Ereignissen

Hinweis zur Passwortsicherheit:
Bitte nutzen Sie Ihr PlusPedia-Passwort nur bei PlusPedia.
Wenn Sie Ihr PlusPedia-Passwort andernorts nutzen, ändern Sie es bitte DORT bis unsere Modernisierung abgeschlossen ist.
Überall wo es sensibel, sollte man generell immer unterschiedliche Passworte verwenden! Das gilt hier und im gesamten Internet.
Aus Gründen der Sicherheit (PlusPedia hatte bis 24.07.2025 kein SSL | https://)

NxtOSEK

Aus PlusPedia
Zur Navigation springen Zur Suche springen


nxtOSEK ist eine Open Source RTOS-Platform für den Lego Mindstorms NXT, in der mit C und C++ programmiert werden kann.

Aufbau

nxtOSEK besteht aus

  • Geräte-Treiber von leJOS NXJ in Form von C oder Assembler-Code
  • TOPPERS/ATK (auch bekannt als TOPPERS/OSEK) - ein kraftfahrtechnischer Kernel
  • TOPPERS/JSP -eine spezifische Protierung von einem RTOS für den ARM7-Mikrocontroller und "Glue-Code" für die Zusammenarbeit zwischen den Systemen.
  • ECRobot C oder C++ API - eine API zur Nutzung von NXT-Bestandteilen (Sensoren, Motoren, Bluetooth, etc.)

Geschichte

TOPPERS/ATK (bzw. TOPPERS/OSEK) wurde von Professor Masaaki Mizuno, vom „Department of Computing and Information Sciences“ von der „Kansas State University“ zum NXT portiert. TOPPERS/JSP wurde von „Monami Software Limited Partnership“ aus Japan zum NXT portiert. Die Möglichkeit C++ für nxtOSEK zu nutzen wurde durch Dr. Robert Kramer vom „Department of Computer Science and Information Systems“ von der „Youngstown State University“ möglich gemacht.

Im Mai 2008 wurde das Projekt von leJOS OSEK in nxtOSEK umbenannt.

Vorteile zu anderen NXT-Sprachen

Der Quellcode wird durch den GNUARM zu nativem Code compiliert, der direkt auf dem ARM7 ausführbar ist. Das bringt Geschwindigkeitsvorteile im Vergleich zu anderen NXT Sprachen, bei denen die Programme nur von der Firmware interpretiert werden.

Außerdem können alle wichtigen Teile von C/C++ benutzt werden, wie z.B. Zeiger, Klassen (in C++), Ausnahmebehandlung (in C++) oder dynamische Speicherverwaltung.

Außerdem kann ein nxtOSEK über die NXT-Bios-Firmware in den kompletten Flash-Speicher geladen werden. So sind Programme bis 244 KB Größe möglich.

Es können direkt BMP-Dateien und WAV-Dateien verarbeitet werden.

Nachteile zu anderen NXT-Sprachen

Das nxtOSEK-System ist verhältnismäßig kompliziert. Neben dem Erlernen von C/C++ muss auch die API von OSEK/VDX (OS und OIL) und die jeweilige API die zur Sprache gehört (ECRobot C oder C++ API) erlernt werden.

Außerdem gestaltet sich die Installation etwas umständlich. Zudem wird Mac OS X nicht unterstützt.

Merkmale, die auch einige andere NXT-Sprachen besitzen

  • Die Programme können auf John Hansen's Enhanced NXT firmware ausgeführt werden.
  • Multitasking wird unterstützt.
  • Bluetooth von NXT zu NXT und zu PC wird unterstützt (andere Geräte wurden nicht ausprobiert)
  • USB wird unterstützt.
  • I²C wird unterstützt.
  • Viele Third-Party-Sensoren werden unterstützt.

IDE's

Bis jetzt steht nur die Eclipse IDE mit dem Plugin CTD zur Verfügung. Durch die Integration von externen Tools in die IDE ist sie in der Lage, Programme für nxtOSEK zu übersetzen.


Weblinks

[1] [2] [3]



Init-Quelle

Entnommen aus der:

Erster Autor: Weavel96 , Alle Autoren: Weavel96 , Howwi, md Tom md,