www.mikrocontroller.net

Forum: Compiler & IDEs Bootloader und AVRGCC


Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Ich will einen Bootloader für den Mega16 schreiben. Da dieser dann im 
oberen Adressbreich (ab 0x1C00) läuft und ich eigentlich mit dem AVRGCC 
das ganze schreiben will muß dieser also Code ab 0x1C00 erzeugen und 
nicht ab 0x0000.
Jetzt zur Frage: (Jörg?)
Kann man das dem Compiler/Linker/avr-objcopy oder sonstwem mitgeben oder 
reicht es das Hexfile entsprechend anzupassen? Muß man sonstwas beachten 
zwecks Sprung und Call-Befehlen? Wird trotz der avr5 Architektur bei 
kurzen Sprüngen RJMP/RCALL anstatt JMP/CALL verwendet so das ein 
einfaches verschieben des Adressbreichs kein Problem ist?

Matthias

Autor: Joerg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, man kann.  RTFDoc. ;-)  Es steht beides in der Doku drin,
was man dem Linker mitgeben muß für eine Verschiebung des
regulären Text-Segments, als auch wie man einen Bootloader mit
einer normalen Applikation zusammen unterbekommt (mit einer
separaten section).

Nö, meiner Meinung nach generiert der Compiler bei avr5 immer
lange Sprünge. Aber wart' mal, da habe ich doch mal was
geschrieben...  Ja, warum liest Du eigentlich die Doku nicht,
die wir so schreiben? ;-)  Unter ``Using the GNU Tools'' findest
Du -mshort-calls, das ist wohl, was Du willst.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

ich hab nicht in der avrlibc-Doku gesucht da ich sowas da drin 
eigentlich nicht erwartet hab. Aber ich weiß ja selber wie das ist: Da 
schreibt man eine schöne, umfangreiche Doku und niemand ließt sie :-)

Matthias

Autor: Joerg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, die avr-libc Doku gibt sich Mühe, alles zu dokumentieren,
was die opensource toolchain für AVR angeht.  Sie will dabei
nicht die originale GNU Doku ersetzen, aber hinsichtlich AVR
die wesentlichen Akzente einfach noch mit herausarbeiten, die
in der umfänglichen Doku zum GCC eben einfach untergehen.

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.