AVR Mega-Bootloader-Section vs. Self-Programming

Gast #2556081
Halli hallo,

bisher lebte ich in dem Glauben, dass Bootloader sich ausschließlich in 
einer Bootsektor-Section ausführen lassen, da eben nur dort 
Schreibzugriffe auf den Flash möglich sind.

Nun sah ich eben einen Thread 
(Beitrag "ATtiny45 Bootloader") wo auch jemand für z.B. 
Tiny's einen Bootloader geschrieben hat, welcher lt. Erfahrung und 
Datenblatt keine extra Bootloadersection hat. Bin dem natürlich auch 
sofort nachgegangen und hab das Self-Programming-Fuse beim ATtiny13 
entdeckt, welches die SPM-Methoden aktiviert.

Nun frage ich mich, warum ich bei Controllern mit Bootloader-Sectionen 
sogar noch Platz verschwenden sollte, wenn der Bootloadercode kleiner 
ist als die eingestellte Bootloadersize, wenn ich dafür Self-Programming 
nutzen kann.

Sind das einfach 2 unterschiedliche Techniken, die sich unterschiedlich 
etabliert haben? Gibt es Controller mit Bootloadersection ohne 
Self-Programming-Fuse?

Ein leicht verwirrter Frank ;)
(Firma: TH Köln) Persönliche Seite
Frank Jurischka schrieb:
> Gibt es Controller mit Bootloadersection ohne
> Self-Programming-Fuse?

Bin mir nicht 100% sicher, aber ich meine, die AVRs mit 
Bootloadersection haben alle verschiedene Lock-Bits statt einer 
einzelnen Fuse.

Grundsätzlich ist es so, dass du nicht an die Bootloadersection gebunden 
bist und diese auch nicht nur für einen Bootloader geeignet ist.
Die Bootloadersection ist einfach ein Speicherbereich mit einigen 
Besonderheiten, die sich halt gerade für Bootloader eignen. Bei Bedarf 
gibt's eine eigene Interrupt-Tabelle, einen Extra Reset-Vektor und die 
Read-While-Write-Funktionalität. Außerdem stellt die Position am Ende 
des Flashs halbwegs sicher, dass der Bootloader sich nicht selbst 
überschreibt.

Mark

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 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.