Forum: Compiler & IDEs Code lässt sich für atmega16 Compilieren, für den atm8 ni


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Tim (Gast)


Lesenswert?

Servus,

mein Testprogramm lässt sich für den atmega16 ohne Probleme
Compilieren. Für den atmega8 kommt folgende Fehlermeldung:

Assembling: xglobal1.S
avr-gcc -c -mmcu=atmega8 -I. -x assembler-with-cpp
-Wa,-adhlns=xglobal1.lst,-gst
abs  xglobal1.S -o xglobal1.o
xglobal1.S:34:9: warning: no newline at end of file
xglobal1.S: Assembler messages:
xglobal1.S:16: Error: illegal opcode call for mcu atmega8
make: *** [xglobal1.o] Error 1

Hab ich da etwas übersehen ?
Danke für Hilfe !

C-File:
void main( void )
{
    test1();

    for (;;) {}
}

S-File:

#include <avr/io.h>

.stabs  "",100,0,0,test1
.stabs  "xglobal1.S",100,0,0,test1

.global test1


.func test1
test1:

push   r0

call    test2

pop  r0
ret

.endfunc



.func test2
test2:

push  r0
pop   r0
ret

.endfunc

von Joerg Wunsch (Gast)


Lesenswert?

Der GNU assembler unterstützt derzeit kein "CALL" auf ATmegas bis 8
KB
ROM, sondern nur "RCALL".  Die neueren ATmegas können das zwar, aber
es wird nicht wirklich benötigt, da man bis 8 KB ROM auch alle
Sprungziele mit RCALL erreichen kann.

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]
  • [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.