avr assembler .include "macro.inc"

Gast #7269209
Hallo liebe Gemeinde,
kann mir jemand bitte kurz auf die Sprünge helfen?
Ich möchte eine Makrosammlung nicht jedesmal in den Anfang meines 
Hauptprogrammes  hinein kopieren, sondern der Übersichtlichkeit als 
eigene Datei inkludieren, ähnlich folgendem Beispiel:

-------------------------------------------
.include        "interrupt.inc"
.include        "macros.inc"
.include  "twi.inc"
.include  "display_ssd1306.inc



main:
     ....Programmcode
---------------------------------------------

Beim Assemblieren spuckt der Assembler folgende Meldung aus:
Severity  Code  Description  Project  File  Line
Error    FATAL: too deeply nested include (16)  test  RUNASSEMBLERTASK 
0

Kopiere ich genau an die Stelle wo die Datei inkludiert werden soll den 
Inhalt der Datei mit den Makros, dann sieht der Assembler kein Problem.
Beim Inkludieren passiert doch nix anderes als das genau dort an der 
Stelle der Inhalt beim Assemblieren eingefügt wird, also das was ich 
händisch gerade gemacht habe?
Ist es evtl. so das der Assembler nicht gleichzeitig eine Datei 
inkludieren und die inkludierten Makros für die weitere Verarbeitung 
berücksichtigen kann?
Meine Entwicklungsumgebung ist das Microchip Studio for AVR in der 
Version 7.0.2542 und dessen standard Assembler.
Vielen Dank für das lesen und evtl. Hilfe ;-)
Gast
Vielen lieben Dank an alle!!
Tatsächlich war eine Zeile welche auskommentiert sein sollte aktiv und 
führte zu einer weiteren Inkludierung.
Wie konnte ich nur so blind sein, verstehe es selber nicht!
Auf der verzweifelten Suche hab ich mich in wildesten Theorien 
verfangen…
Tolles Forum, nochmal vielen Dank für eure Antworten, werde mich hier 
registrieren und hoffe euch in Zukunft auch etwas zurück geben zu können 
;-)
Gast
Peter D. schrieb:

> Das wird also ein rekursives Include sein, d.h. eine Datei includiert
> sich selbst oder 2 sich wechselseitig.

Was normalerweise halt durch Include-Guards verhindert werden würde, 
denn die brechen die Rekursion von Zirkelbezügen auf.

Es sei denn, man hat sie vergessen, dann können sie das natürlich nicht 
leisten...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 3 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.