Bootloader richtige Einsprungadresse finden

OP #3723151
Lesenswert?
• ▲
▼
Hallo Leute,
ich versuche grad den Artikel
http://www.mikrocontroller.net/articles/AVR_Bootloader_in_C_-_eine_einfache_Anleitung#Schritt_4_-_Flashen_und_Ausprobieren_des_Bootloaders_2

durchzuarbeiten und nach einem ersten Erfolg kam auch schon die 
Ernüchterung.
Am Anfang habe ich vergesser die Einprungadresse im Linker zu änern. 
Dadurch wurde der Code direkt ab 0x0000 geschrieben, nach Ausführen des 
Codes meldete sich natürlich der Bootloader über Putty.

Dann wollte ich mal die richtige Adresse eingeben:
Ich verwende einen Atmega162, und habe die Einsprungadresse wie im 
Artiekl erwähnt richtig ausgerechnet, so denke ich zumindest.
Die Tabellen befinden sich im Datenblatt
http://www.atmel.com/Images/Atmel-2513-8-bit-AVR-Microntroller-ATmega162_Datasheet.pdf
auf Seite 236.
Page size 64
Number of pages 128

128 Page (128 - 64) an Word-Adresse 0x1000, also Byteadresse 0x1000 * 2 
= 0x2000.

Wenn ich dann dem Linker mitteile  -Ttext=0x2000
und dann den µC flashe erhalte ich nichts mehr auf der Console.
Im Anhang sind noch die Fuseeinstellungen zum Bootbereich angegeben.

Was hab ich falsch gemacht/berechnet?
Angehängte Dateien:
OP #3723185
Lesenswert?
• ▲
▼
Okay der kleine Bootloader ging rein und funktioniert, jetzt hab ich den 
richtigen kompiliert (mit Size Optimisation) und erhalte dann beim 
Brennversuch:
avrdude: erasing chip
avrdude: reading input file "bootloader.hex"
avrdude: input file bootloader.hex auto detected as Intel Hex
avrdude: ERROR: address 0x4010 out of range at line 129 of 
bootloader.hex
avrdude: write to file 'bootloader.hex' failed

Krieg ich den schon nichtmehr rein? Das wäre ja echt blöd
Gast #3723197
Lesenswert?
• ▲
▼
Chris tian schrieb:
> Krieg ich den schon nichtmehr rein? Das wäre ja echt blöd

Der ATmega162 hat, wie der Name schon sagt, 16kByte Flash, d.h. bei 
Byteadresse 0x3FFF bzw. Word-Adresse 0x1FFF ist Schluß. Und mit Start 
bei Word-Adresse 0x1C00 hast du schon die maximal Größe für den 
Bootloader (1024 Words lt. Table 93. Boot Size Configuration) 
eingestellt.

Antwort schreiben

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.

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.