www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Einbetten von Assembler in C


Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Ich hab ein C Programmm und ein Assembler Programm, diese beiden 
programme möchte ich nun im AVR Studio mit einander verknüpfen und zwar 
aus dem C programm das Assembler programm bzw teile davon aufrufen. muss 
ich die Datein des Assembler Programms irgendwie deklarieren/bekannt 
machen so wie zb header in C (zb: #include <avr/io.h>)? und wenn ja muss 
ich das mit der .asm Datei oder der .inc Datei machen?
Vielen Dank schonmal im Vorraus
MFG
Tom

Autor: Winfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau doch mal hier im GCC Tutorial. Da steht alles.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Las es sein.
Du müßtest sämtliche Assemblerobjekte nochmal neu schreiben, daß sie 
sich an die C Konventionen halten.


Peter

Autor: Sigint 112 (sigint)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter:
  Was meinst du damit genau... ich wollte bald auch mit AVR-GCC anfangen 
und einige Routinen in ASM schreiben (des Speicherplatzes wegen).
Wenn ich meine Routinen so schreibe, daß sie sich an CDECL oder STDCALL 
halten dann sollte es doch keine großen Probleme geben. Oder hab ich da 
was übersehen.

Gruß,
  SIGINT

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sigint 112 wrote:
> Was meinst du damit genau... ich wollte bald auch mit AVR-GCC anfangen
> und einige Routinen in ASM schreiben (des Speicherplatzes wegen).

Bist Du Dir sicher, daß Du auch signifikant Speicher sparen wirst ?

In normalem Code mußt Du schon ein absoluter AVR-Assembler-Freak sein.

Ansonsten würde ich nur Sparpotential sehen, wenn Du die float- und die 
64Bit-Library in Assembler schreibst.


> Wenn ich meine Routinen so schreibe, daß sie sich an CDECL oder STDCALL
> halten dann sollte es doch keine großen Probleme geben. Oder hab ich da
> was übersehen.

CDECL ist doch x86, nützt Dir beim AVR also herzlich wenig.


Peter

Autor: SIGINT112 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter:
  Hmm,
     wahrscheinlich lohnt es sich fuer mich wirklich nicht die Routinen 
in ASM umzusetzen... waere aber nett gewesen.
Zum Thema CallingConvention: Ich dachte bis jetzt, dass die unabhaengig 
von der Zielhardware sind. Ich schau mir noch mal ein paar Dokus dazu 
an.

Gruss,
  SIGINT

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.