Dies ist ein Entwicklungsbericht über einen seriellen Bootlader für ATmega1284P, ATmega328P und ATmega2560 basierte Systeme. Seine Vorzüge sind:

  • keine Programmierhardware mehr nötig
  • Nutzung von Standardkommunikationsschnittstellen, welche für den normalen Betrieb häufig sowieso verwendet werden
  • Verwendung des verbreiteten Standardprotokolls AVR109 für Programmiergeräte bzw. Bootlader
  • Passend zu professionell üblicherweise genutzten Werkzeugketten
  • Gute Integration bzw. gutes Zusammenwirken mit der System- und Anwendungssoftware
  • Ohne Lizenzgebühren, open source
  • Befreit den Arduino — ArduinoMega’s “jail break”

Development report on an AVR109 bootloader — Inhalt

  1. Motivation
    1.1 Solution and targets
    1.2 Advantages
  2. Targets
    2.1 Modules
    2.2 Controllers
  3. Bootloader operation
    3.1 Entering and leaving
    3.2 Features and limitations
  4. Bootloader integration
    4.1 Initialisation and services
    4.2 Using bootloader functions and variables in the application
  5. Resume
  6. Abbreviations
  7. References

Der Entwicklungsbericht bringt auch einige Hintergrundinformationen über die ATmega-Architektur, Bootlader, avr-gcc, Linker und Bootlader sowie über einige häufig zu erlebende Fehler und Probleme. Ein beispielhaftes solches Problem, das gerne bei Arduinos und seriellen Bootladern auftaucht, ist das gefürchtete:

avrdude: error: programmer did not respond to command: set addr

Lesen Sie den report AVRserBootl.pdf (auf a-weinert.de/p… / pub/).