www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Interpreter für AVR


Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
kennt eigentlich jemand ein Interpreter Projekt für die AVR Controller? 
Also sowas ähnliches wie bei der C-Control.

Gruß
Markus

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du möchtest kannst du den C-Control-Interpreter auf AVR portieren, 
der Source fliegt irgendwo rum. Dürfte nicht zu schwierig sein.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber beachten, Conrad hat alle Rechte an dem Ding glaub ich, und die 
werden über eine Konkurrenz zur CC/CC2 auf Basis ihrer eigenen Arbeit 
nicht gerade erfreut sein.

Autor: philip (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hmm ja...


aber wie sollen sie das überprüfen... ich denke zu eigenen zweken werden 
die das verkraften oder?

oder willste du das in serie verkaufen ?
ich denke dann währ das was anderes...

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na zu eigenen Zwecken lohnt sich das wohl kaum, ich bin davon 
ausgegangen dass man es veröffentlichen/verkaufen will wenn man sowas 
macht.

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum denn Interpreter wenn man hervorragende Compiler hat ?

Is vieleicht ne dumme Frage aber ich sehe keinen Sinn darin.

Ich bin ja auch gerade nach nem 4 wöchigen Gastspiel von der C-Control 
weg weil mir der Interpreter zu lahm ist.

Oder solls ne eigene Sprache werden ?

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
es sollte nicht unbedingt Basic sein, und ich wollte es eigentlich auch 
nicht unbedingt so lösen wie bei der CC (also mit seriellem EEPROM). 
Desshalb kommen für mein Vorhaben eigentlich nur AVR mit externer 
Speicherschnittstelle in Frage.
Grund für so ein Projekt ist, das mich die umständliche Handhabung mit 
den ISP etwas nervt, die Programmierzeiten bei größeren Programmen recht 
lang ist und das dadurch der Flash Speicher geschont wird.
Mittlerweile hab ich sogar ein Interpreter Projekt gefunden, aber das 
ist kaum als ernsthaft zu bezeichnen
http://users.cableaz.com/~cappels/dproj/Home.htm

Naja, ich glaub ich begrab das ganze

Autor: Eckhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Markus,

eventuell wirst du bei Forth etwas leichter fündig werden. Ich weiß nur 
nicht ob Du den Anfänger damit nicht eher abschreckst.


Eckhard

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
den Forth Interpreter hab ich mittlerweile auch schon gefunden. Ist aber 
auch nicht so das ware. Ich werd mir da mal noch Gedanken machen

Gruß
Markus

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach jetzt verstehe ich was du meinst.

du willst dir sozusagen nen kompletten Minirechner zusammenschustern.

als im Prinzip das gleiche wie die alten Homecomputer.

Einschalten und die Oberfläche steht.
Das Programm wird direkt am Terminal eingegeben und vom eigenen 
Interpreter abgearbeitet.

Kurzum ,du willst nen Betriebssystem schreiben.

Naja,ganz reizvoll aber den Zeitlichen Vorteil sehe ich nur bei 
Korrekturen da man da nicht jedesmal den ganzen Code übertragen muß.

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry für den neuen Post aber mein Mozilla Spinnt etwas rum und hat mir 
die Mailaddy falsch eingetragen

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eigentlich wollte ich etwas nicht ganz so komplexes. Die ursprüngliche 
Idee war, einen Interpreter für den AVr zu proggen, der Bytecode 
verarbeiten kann. Der Bytecode wird am PC mit einem Compiler erstellt 
und auf den Controller geladen. Das mit der Monitorsoftware hab ich auch 
schonmal überlegt, aber ich sehe für beides eigentlich keine sinnvolle 
Anwendung

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Öhm,auch wenn ich da vieleicht schief liege aber ich sehe da keinen 
großen Unterschied ob du nach der herkömmlichen Methode Compilierst und 
dann überträgst oder stattdessen Token's überträgst.

Der Platzunterschied dürfte nur Marginal sein.

wenn ich dich richtig verstehe dann geht es dir ja um Zeit und da sehe 
ich allerhöchstens einige Sekunden.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In erster Linie geht es um die Schonung des Flash. Außerdem könnte man 
damit eher sowas zu realisieren wie einen Datenspeicher mit mehreren 
Programmen, die man nachladen kann.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Schonung des Flash? Bei 10k garantierten Schreibvorgängen? AFAIK hat 
der Entwickler von AVRDUDE mal nen Test mit einem 90S1200 gemacht. Der 
hat erst nach 200k Schreibvorgängen die Grätsche gemacht. Das ist also 
IMHO kein Argument. Programmierzeit? Wenn dir das zu lange geht schreib 
einen Bootloader oder verwende einen fertigen. Ein Mega16 läßt sich so 
in etwa 6s programmieren ohne den Bootloader besonders zu optimieren. 
Been there, done that.

Wenn du wirklich mit ladbaren Programmen usw. experimentieren willst ist 
ein Rechner nach der Harvard-Architektur (wie es der AVR ist) wenig 
geeignet da Programm und Datenspeicher getrennt sind. Da nimmst du 
lieber einen Rechner der eine von-Neumann Architektur hat. Also jeder 
x86, oder aber, im µC Bereich, ein M16C.

Matthias

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sehe ich genauso!

Autor: Ratber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Markus

Ich sehe es ebenso.

Wenn dein Controller die >10K erreicht hat dann kann er auch verdient in 
den Ruhestand (Tonne) wandern.

Selbst beinem Mega128 für ca. 30€ sind das maximal 0.3 Cent pro 
Vorgang.

Da ich bei Flashspeichern jetzt schon öfters gehöhrt habe das die 10k 
mindestens um das Doppelte übertroffen wurden reduziert sich das auf 
0.15 Cent.

Oder mal was andersrum.

10k Voregänge bei durchschnittlich 1 Vorgang pro Stunde (Über die Woche 
gerechnet) kannste ein Jahr nonbstop damit Arbeiten und hast gerademal 
die 10K erreicht.

Also das der Controller irgendwann "ausgebrannt" ist is meine geringste 
Sorge.

Eher würde es mich ärgern wenn ich mir aus Unachtsamkeit nen Port 
abschieße.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok, dann hab ich zumindest mal vernünftige Meinungen zu dem Thema. THX 
Leute.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mir gerade mal von www.microsyl.com das Programm MegaLoad 
runtergeladen und ausprobiert. Bin total begeistert. Fuses programmiert, 
Bootloader per ISP reingeschoben und gut.
Bin richtig aus dem Häuschen :)
Ist sogar gleich ein kleines Terminalprogramm dabei.
Die Software passt wunderbar zu meinen Modulen

Gruß
Markus
http://www.embedit.de

Autor: Daniel Roth (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

eine Interpreter/Compiler-Sprache wie Forth wäre schon sinnvoll. Zum
einen ist man nicht auf Flash-Speicher begrenzt, da der Bytecode aus
einem beliebigen (schnellen) Speicher gelesen werden kann.

Der größte Vorteil wäre wahrscheinlich, dass die Programme direkt im
System nicht nur programmiert, sondern auch getestet & debuggt werden
können (unter realen Bedingungen).. das alles sehr günstig, ohne teure
Zusatzhardware.

Daniel

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja gut, wenn man's ganz ausdehen und gleich auf dem Controller neben
dem Editor auch einen preCompiler und Editor draufpacken. Dann könnte
man komplett ohne weitere Software einfach nur über ein
Terminalprogramm arbeiten. Der Komfort bleibt dabei auf der Strecke.
Bei den neuen Megas fällt das Argument "teure Hardware" eigentlich
weg dank des Bootloaders.
BTW, einen anderen Controller als einen der neuen Megas (M8-M128 und
M162) würde ich eh nicht mehr kaufen

Autor: Daniel Roth (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

na mit teurer Hardware meine ich z.B. JTAG-ICE, zu debuggen und dabei
die angeschlossenen Geräte mit einzubeziehen. Bei Forth wäre das schon
mit dabei. Der Programmier-Kompfort bleibt schon etwas auf der Strecke,
aber dafür hat man halt neue Möglichkeiten. Notfalls könnte der
Forth-Quelltext auch auf dem PC geschrieben werden, um kompfortable
Ediermöglichkeiten auszunutzen, und dann zum AVR übertragen werden. Für
mich ist jedenfalls Forth die ideale Programmiersprache für
Mikrocomputer (mal von der Möglichkeit, unterschiedliche Programme zu
laden ganz abgesehen). Forth ist für RISC-Prozessoren ideal, ist nur
ca. 4 Mal langsamer als Assembler, wobei allerdings optimale
Assembler-Programmierung nur Insider hinbekommen, so dass am Ende nicht
viel Unterschied bleibt. Werde mal einen extra Thread zum Thema
aufmachen..
bis dann..

Daniel

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.