RoboterCC - Robotic Code Compiler
Forum Robot Kits NIBObee NIBObee Projekte NIBObee "Assembler" Interpreter

Welcome

Nachrichten

Sie sind nicht eingeloggt.

Werbung

Letzte Themen

  • Keine Beiträge vorhanden

Site-Statistic

  • 7433 private projects
  • 378 public projects
  • 16180353 lines compiled
  • 58212 builds
NIBO @ facebook YouTube Twitter
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
  • Seite:
  • 1

THEMA: NIBObee "Assembler" Interpreter

NIBObee "Assembler" Interpreter 10 Jahre 11 Monate her #2494

Moin,

ich habe mal meinen Interpreter für eine Assemblerartige Sprache unter www.roboter.cc/index.php?option=com_nicaiwci&view=project&projectid=1846&Itemid=41 hochgeladen ;-) Er steht unter der GPLv3 Lizenz.

Ich habe das hexfile nicht getestet, schon alleine, weil ich das tuning-Kit habe, aber es sollte funktionieren - wenn nicht melden ;-)

Wieso ein neuer Interpreter? Ich habe nur welche für Basic etc. gefunden, die mir zu groß und zu langsam sind, und oft auch vorkompilierten Code auf den AVR laden - ich möchte aber notfalls direkt auf dem AVR was ändern wollen. Der Interpreter selbst braucht nur ca. 2 KByte Flash und sehr wenig RAM. Außerdem schafft er ca. 100.000 Befehle pro Sekunde auf einem AVR mit 20 MHz.

Bei der Assemblersprache habe ich darauf geachtet, dass sie noch einigermaßen von Hand programmierbar ist, ich mir bei dessen Interpretierung keinen Ast abbreche. Jede Anweisung ist 4 Bytes lang, die Dokumentation der Befehle in der interpreter.h sollte selbsterklärend sein. Jedes Kommando hat das Format Command Subcommand Operand1 Operand2, wobei das Subcommand definiert, wie die Operanden interpretiert werden sollen. Der Speicher ist in 16 Bit Worten addressiert, es gibt aber auch einen 8 Bit Modus.

In interpreter_programs gibts ein paar einfache Testprogramme, die in der interpreter_tests verwendet werden.
Ich habe die Aufrufe zur bewegung und zur hinderniserkennung rausgeschmissen, weil das andere Projekte sind - wenn ich damit zufrieden sind kommen sie aber in eigene Projekte auch hoch ;-)

Was fehlt:
* Stack
* Unterprogrammaufrufe mit Statussicherung
* einfache Stringbearbeitung (lesen / schreiben)

Die nächsten Pläne sind ein einfachster Editor auf der Biene, ein Dateisystem (fürs RAM und EEPROM) und eine minimale Shell. Dann bin ich soweit, dass man auf der Biene selbst programmieren kann - entweder über die serielle Schnittstelle oder direkt via dem BGX1. Letzteres kann v.a. für kleine Korrekturen und Anpassungen sehr hilfreich sein.

Kommentare? Fragen? Anregungen? Immer her damit :-)
Letzte Änderung: 10 Jahre 11 Monate her von mifritscher.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

NIBObee "Assembler" Interpreter 10 Jahre 11 Monate her #2496

  • achim S.
  • achim S.s Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 441
sorry, die dumme Frage, was macht das genau?
Der Administrator hat öffentliche Schreibrechte deaktiviert.

NIBObee "Assembler" Interpreter 10 Jahre 11 Monate her #2497

Stelle dir einen Basis-Interpeter vor, der direkt auf dem AVR läuft, wie es unter www.mikrocontroller.net/articles/AVR_BASIC gibt.

Genau sowas ist dieser Interpreter, nur dass er anstatt Basic eine Art Assembler als Sprache verwendet. Der große Vorteil ist, dass diese Sprache deutlich schneller verarbeitet werden kann, schon alleine weil jede Anweisung genau gleich lang ist und ich keine Stringvergleiche und sowas benötige.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

NIBObee "Assembler" Interpreter 10 Jahre 11 Monate her #2498

  • achim S.
  • achim S.s Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 441
ok, danke für deine antwort
Der Administrator hat öffentliche Schreibrechte deaktiviert.
  • Seite:
  • 1
Ladezeit der Seite: 0.038 Sekunden

Werbung