Main Page | Modules | Related Pages | Examples

Bootloader Usage

Turbo Programmer allows to use bootloader, i.e. it is possible to reflash the lower 120KB of MCU flash memory (the upper 8KB are used for loader and cannot be used). Developer can use standard avr-libc or other tools, it is just important to include following line in the code:

void __attribute__ ((section ("tprog_reset_pos"))) __attribute__ ((naked)) tprog_reset ()
  __asm__ __volatile__ ("jmp 0x00");

where tprog_reset_pos is at position 0x1db00. This is the possition the loader code jumps after RESET.

In the Makefile it is important to set the linker to map the tprog_reset_pos at 0x1db00 with --section-start tprog_reset_pos=0x0001db00.

To upload the result.bin file into the programmer the following procedure should be used:

  1. unplug USB cable
  2. switch the jumper
  3. plug in USB cable
  4. prog_update_fw result.bin
  5. unplug USB cable
  6. switch the jumper
  7. plug in USB cable

This procedure is used also for firmware upgrade.

Copyright © 2004 BLADOX
Turbo Programmer version 2.0