1.3 MPU CAN Bootloader

This example application shows how to use the Harmony Bootloader to bootload an application from SD/eMMC/NAND/Serial Flash memory and receives new application image using CAN-FD protocol and write it to SD/eMMC/NAND/Serial Flash memory.

Bootloader Application

  • This is a bootloader application which resides from:
    • Bootloader stored into SD/eMMC/NAND/Serial Flash memory
    • Bootloader executes from DDR memory. AT91Bootstrap loads bootloader from SD/eMMC/NAND/Serial Flash memory to DDR memory and executes it.
  • It uses CAN peripheral library in Non-interrupt mode
  • It calls the bootloader_Tasks() function which receives application to be programmed into SD/eMMC/NAND/Serial Flash memory over CAN-FD bus. And, it loads application image from SD/eMMC/NAND/Serial Flash memory to DDR memory and executes it.
  • It turns on an LED
  • Trigger methods
    • It uses the On board Switch as bootloader trigger pin to force enter the bootloader at reset of device

SDCARD Host Application

  • This is an embedded CAN-FD host application which sends the application image stored in the SD card to the target board over the CAN-FD bus
  • The user application binary is copied into an SD card and inserted in the SD card connected on the host board

Test Application

  • This is a test application which resides from:
    • Application stored into SD/eMMC/NAND/Serial Flash memory
  • It will be loaded from SD/eMMC/NAND/Serial Flash memory to DDR memory by bootloader application and starts application execution
  • It blinks an LED and provides console output