#include "config.h"
#include "start_boot.h"
#include "lib_mcu/wdt/wdt_drv.h"
Go to the source code of this file.
Functions | |
__no_init U32 boot_key | At (0x0100) |
void | start_boot (void) |
void | start_boot_if_required (void) |
void | goto_boot (void) |
Definition in file start_boot.c.
void start_boot | ( | void | ) |
This function will start the on-chip bootloader after a watchdog timer reset.
The function set a special key in sram (uninitialized during mcu start-up execution) and performs a mcu watchdog timer reset. This function should be called when a special eve,t is detected in the application that requires the bootloader activation. When this function is used, be sure to implement the "start_boot_if_required()" function at the begining of main().
Definition at line 82 of file start_boot.c.
Referenced by cdc_task().
00083 { 00084 boot_key=0x55AAAA55; 00085 00086 // Enable the WDT for reset mode 00087 wdtdrv_enable(WDTO_500MS); 00088 while(1); 00089 }
void start_boot_if_required | ( | void | ) |
This function calls the on-chip bootloader.
The function starts the on-chip bootloader if the application has posted such a request. This function sould be inserted at the begining of the main function.
Jumping to bootloader
Definition at line 97 of file start_boot.c.
Referenced by main().
00098 { 00099 if(boot_key==GOTOBOOTKEY) 00100 { 00101 boot_key = 0; 00102 (*start_bootloader)(); 00103 } 00104 }
void goto_boot | ( | void | ) |
This function jump to on-chip bootloader without CPU reset.
Jumping to bootloader
Definition at line 109 of file start_boot.c.