start_boot.c File Reference

#include "config.h"
#include "start_boot.h"
#include "lib_mcu/wdt/wdt_drv.h"

Include dependency graph for start_boot.c:

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)


Detailed Description

This file contains the routines to jump in ISP mode - Compiler: IAR EWAVR and GNU GCC for AVR

Definition in file start_boot.c.


Function Documentation

__no_init U32 boot_key At ( 0x0100   ) 

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 81 of file start_boot.c.

Referenced by hid_report_out().

00082 {
00083    boot_key=0x55AAAA55;
00084    
00085    // Enable the WDT for reset mode
00086    wdtdrv_enable(WDTO_500MS);
00087    while(1);
00088 }

Here is the caller graph for this function:

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 96 of file start_boot.c.

Referenced by main().

00097 {
00098   if(boot_key==GOTOBOOTKEY)
00099   {
00100       boot_key = 0;
00101       (*start_bootloader)();           
00102   }
00103 }

Here is the caller graph for this function:

void goto_boot ( void   ) 

This function jump to on-chip bootloader without CPU reset.

Jumping to bootloader

Definition at line 108 of file start_boot.c.

00109 {
00110    (*start_bootloader)();              
00111 }


Generated on Wed Sep 23 09:33:28 2009 for ATMEL by  doxygen 1.5.3