mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik .macro


Autor: Robert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann man im AVR Assembler2 ein macro mit einem Label generieren?

z.B. so etwas:

.macro  TIMER07
        ...
        BRNE    TI_@0_@1
        SET                     ; set ZC Flag
        BLD     @0,@1
TI_@0_@1:
        SBIW    YH:YL,2         ; write back data to memory

.endmacro

Zweck der Übung ist eine Art local Label zu generieren ohne die offsets
von Hand einzutragen...

Entweder gehts' nicht oder ich finds nicht.

Autor: Irgwer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Robert,

geht viel einfacher. Der Assembler macht eh aus allen Labels in einem
Macro lokale Labels. Hört sich komisch an, ist aber so.
Probiers einfach aus.
Wie es funktioniert wird dir klar, wenn du dir nach dem Assemblieren
die Datei *.map ansiehst und dein Label darin suchst.

Autor: Robert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke.

Das kommt davon wenn man sonst nur mit 'quasi dummen' assemblern zu
tun hatte, wo man speziell .local schreiben muss...

Aber wenn es dann automatisch lokal ist, wie krieg ich dann im
Bedarfsfall ein jmp zu einem globalen Ziel odre umgekehrt?

Autor: Irgwer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ein Sprung aus dem Macro zu einem globalen Label ist kein Problem.
Andersrum (von aussen ins Macro) ist nicht möglich.

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.