mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Assembler-Dateien in MSPGCC-Projekt?


Autor: nobody0 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beim Portieren eines Projekts vom IAR Embedded Workbench bin ich bis zum 
Compilieren der *.c-Dateien gekommen, aber ich komme nun nicht weiter, 
weil ich die  Assembler-Dateien (*.s43) nicht hineinbekomme.
In denn Beispielen zum MSPGCC konnte ich dazu nichts finden und in der 
Dokumentation konnte ich nur Inline-Assembler finden.
Wie bekommt man denn die Assembler-Dateien in das Projekt / makefile ?

Autor: J. Hübler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe vor einiger Zeit mal ein paar Versuche gemacht, das
Floating Point Package von TI mit dem GCC zu verbinden. Das 
funktionierte auch einigermaßen, obwohl ich einige Funtionen nicht zum 
Laufen bekommen habe. Es waren allerdings eine Menge
Änderungen im Assemblerquelltext nötig. Die dabei benutzten regulären 
Ausdrücke sind (aber nicht alle) sind in der datei 
"Benutzteausdruecke.txt" aufgeführt. Im Anhang findest Du die Dateien 
(einschließlich makefile). Evtl. hilft das beim Einbinden Deiner 
Assemblerquellen.

MfG

Autor: nobody0 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke.
Die Dateien passen nicht ganz zusammen, weil z. B. fpproutines.c fehlt 
(ausserhalb vom makefile), aber das müsste schon reichen.

Autor: nobody0 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achso, das fpproutines.c ist nur in einem anderen Verzeichnis, aber ich 
habe ein anderes Problem: was bedeuten die Benutzerausdrücke?
Wie ist z. B. diese Zeile:

\([A-Za-z0-9]+\)\$\([A-Za-z0-9]+\)  \1_D_\2    #Marken mit $ drin 
ersetzen
zu lesen?
Das mit # der Kommentar beginnt ist klar, aber der Rest leider nicht.

Autor: J. Hübler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Diese verrückten Konstruktionen dienen bei Programmen wie dem
SED (stream editor) oder AWK dem Suchen und Ersetzen mit regulären 
Ausdrücken. Benutzt habe ich das, um die Syntax an den GCC-Assembler 
anzupassen.
 Der Suchausdruck
    \([A-Za-z0-9]+\)\$\([A-Za-z0-9]+\)
 findet alle Zeichenketten, die am Anfang aus Buchstaben und Zahlen 
bestehen "[A-Za-z0-9]" , mittendrin ein "$" haben und dann mit 
Buchstaben/Zahlen weitergehen. Dabei muß vor und nach dem "$" midestens 
1 Zeichen stehen, was durch das "+" festgelegt wird.
Dabei wird das, was in den Paaren \(\) steht zur späteren Verwendung in 
ein "Register" abgelegt.
Der Ersetzungsausdruck
     \1_D_\2
benutzt die "Register" und ersetzt das "$" gegen "_D_"
Bsp.
    abcd$1
wird ersetzt in
   abcd_D_1

Die Konstrukte sehen zwar furchtbar aus, aber man kann damit feine 
Sachen machen.

Autor: nobody0 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aha. Die sollte man also alle gebrauchen, oder?
Kannst Du bitte mal jeweils ein Beispiel zu jeder der Zeilen schreiben, 
damit man das richtig interpretieren kann ohne SED- oder AWK-Guru zu 
sein?

Autor: J. Hübler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
OK,

anbei eine PDF mit Beispielen zu den aufgeführten Ausdrücken.

Autor: nobody0 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke :-)

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.