mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Pascal / Delphi für den Mikrokontroller


Autor: Martin H. (Firma: FH Brandenburg) (martin28)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo liebe Forenmitglieder.

Ich arbeite an einem Projekt für meinen ATmega 32. Dazu möchte ich ein 
Programm bzw. einen Programmteil entwickeln der sowohl für einem 
Mikrocontroller compiliert wird, aber auch in Borland Delphi genutzt 
werden kann.

Daher meine Fragen: gibt es eine Art freien Pascal/Delphi Compiler der 
mir entsprechende HEX Files aus meinem Code erstellt?
Gibt es eine Möglichkeit einen gemeinsamen Code aus 2 verschiedenen 
Programmen/Programmiersprachen zu nutzen (als eine Art DLL oder so)?

Sinn ist folgender: in Delphi entwickle ich eine grafische Oberfläche. 
Im Hintergrund laufen diverse Berechnungen (diese stellen den 
gemeinsamen Codeteil dar). Diese Berechnungen muss ich aber auch auf dem 
ATmega nutzen können. Da die Berechnugnen in Delphi / Pascal geschrieben 
wurden und ich bis jetzt zum Programmieren des ATmega WinAVR (also C) 
genutzt habe, ist daraus dieses Dilemma entstanden.

Da ich mit meinen I-Net Recherchen nicht weiter gekommen bin, hoffe ich 
auf einige interessante Anregungen eurer Seite.

Danke soweit erst einmal.

Martin

: Verschoben durch Moderator
Autor: Roland Praml (pram)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke am schnellste kommst Du zum Ziel, wenn Du die 
Berechnungsfunktionen einfach von Pascal auf C übersetzt.

Grafische Benutzeroberfläche und OO-Programmierung wirst Du auf dem AVR 
wohl kaum verwenden und die Berechnungen müssten sich fast 1:1 von 
Pascal auf C umschreiben lassen.

MfG  Peter

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Borland C und Delphi lassen sich doch zusammen linken.

http://www.rvelthuis.de/articles/articles-cobjs.html

Also lass diene Berechnungen in C, und link diese mit dem 
Delphi-Programm zusammen.

Oliver

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Borland C und Delphi lassen sich doch zusammen linken.
...gibt es aber beides nicht für den AVR!

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
AVR und Delphi ist eine wirklich schwierige Kombination. Pascal als 
kleinster gemeinsamer Nenner ist auf dem AVR auch schwierig. Ich der 
Controller denn festgelegt? Pascal auf dem 8051 geht und wäre eine 
funktionierende Alternative, falls es kein AVR sein muß. Echtes Delphi 
(allerdings nur 1.0) kann man nativ auf einem x86-kompatiblen 
Controllerboard lauuffähig machen, mit dieser speziellen Software: 
http://www.mme-berlin.de/delphi1loc.htm (Die passenden Boards dazu, auf 
V25 und 386EX-Basis, sind weiter unten verlinkt).

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Übrigens, kleiner Nachtrag: Wenn es mehr Leistung sein darf, gibt es von 
der gleichen Firma (siehe verlinkte Seite) das ARM9-Modul, das mit einer 
Lazarus-basierten IDE (cross-kompilierend für ARM9 Zielsystem) geliefert 
wird. Damit habe ich schon gearbeitet - und Lazarus / FPC ist 
tatsächlich fast wie Delphi. Viel näher kommt man jedenfalls nicht ran.

Autor: Joe G. (feinmechaniker) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian schrieb:
> Pascal als kleinster gemeinsamer Nenner ist auf dem AVR auch schwierig.

ach was, schaust du hier:
http://www.e-lab.de/AVRco/index.html

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter schrieb:
>>Borland C und Delphi lassen sich doch zusammen linken.
> ...gibt es aber beides nicht für den AVR!

Das ist auch nicht gefragt.

Es geht darum, den selben Sourcecode für Berechnugsroutinen einmal von 
Delphi aus auf dem PC, und einmal auf dem AVR nutzen zu können.

Also lässt man die in C, compiliert die für den AVR mit avr-gcc, aud dem 
PC mit Borland C, und linkt dort die obj zu der Delphi-Bedienoberfläche 
hinzu.

Alternativ baut man sich unter WIndows eine dll in C, und nutzt die vom 
Delphi-Programm aus.

Oliver

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.