Microchip® Advanced Software Framework

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Boot selector Application Documentation

Introduction

This program can be use to run two different application programs (program 1 and program 2) on the UC3B1256 present on most EVK board.

The selection of the program is chosen according to the USB mode button state upon power-up.

  • If the USB mode button is pressed, then program 2 will be executed
  • Else program 1 will be executed

The boot selector program is located from 0x80002000 to 0x80002FFF. You must take care of keeping the USB DFU bootloader on the AT32UC3B, otherwise this application will not work.

Compilation Info

The Program 1 must start at address 0x80003000 and must not exceed 122KBytes. Update linker script to force linker to build at this address :

  • FLASH (rxai!w) : ORIGIN = 0x80003000, LENGTH = 0x0001E800

The Program 2 must start at address 0x80021800 and must not exceed 122KBytes. update linker script to force linker to build at this address :

  • FLASH (rxai!w) : ORIGIN = 0x80021800, LENGTH = 0x0001E800

There are predefined linker scripts files present in the /linker_script folder of the present application:

  • linker_scripts\gcc\link_uc3b1256_prog1.lds, for PROGRAM1_START_ADDRESS under gcc.
  • linker_scripts\gcc\link_uc3b1256_prog2.lds, for PROGRAM2_START_ADDRESS under gcc.
  • linker_scripts\iar\lnkuc3b1256_prog1.xcl, for PROGRAM1_START_ADDRESS under iar.
  • linker_scripts\iar\lnkuc3b1256_prog2.xcl, for PROGRAM2_START_ADDRESS under iar.

Contact Information

For further information, visit Atmel AVR UC3.