Bootloader design for ATmega128

Lalbert's picture
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0



This note describes the implementation of a stand-alone bootloader program which resides in a dedicated block of flash memory (4k words at 0xF000) in the ATmega128 AVR processor. The bootloader provides a convenient method to update the main application firmware, in-system, from a host computer via a serial connection (on-chip UART or USB peripheral chip).

The documentation package (zip file) includes example source code files and a customized linker command file (bootldr.xcl). The source code does not comprise a complete bootloader program. However, it provides ATmega128-specific flash memory programming functions ("spm" module) together with a loader command processor ("loader" module). Device I/O functions need to be added to suit the developer's chosen comm's interface.