X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/071e02c6b6b4837fa9cf0b6d4c749994e02638d7..9d733d44b402ce33c3c41e45b497c2f92be393f5:/LUFA/ManPages/SoftwareBootloaderJump.txt diff --git a/LUFA/ManPages/SoftwareBootloaderJump.txt b/LUFA/ManPages/SoftwareBootloaderJump.txt index 1b284e4cd..1fad85fb7 100644 --- a/LUFA/ManPages/SoftwareBootloaderJump.txt +++ b/LUFA/ManPages/SoftwareBootloaderJump.txt @@ -12,12 +12,15 @@ * hardware). This might be required because the device does not have any physical user input, or simply * just to streamline the device upgrade process on the host PC. * - * The following C code snippet may be used to enter the bootloader upon request by the user application. + * The following C code snippets may be used to enter the bootloader upon request by the user application. * By using the watchdog to physically reset the controller, it is ensured that all system hardware is * completely reset to their defaults before the bootloader is run. This is important; since bootloaders * are written to occupy a very limited space, they usually make assumptions about the register states based * on the default values after a hard-reset of the chip. * + * \section Sec_SoftareBootAVR8 AVR8 Architecture + * The following software bootloader jump code is written for the AVR8 architecture. + * * \code * #include * #include @@ -29,35 +32,40 @@ * uint32_t Boot_Key ATTR_NO_INIT; * * #define MAGIC_BOOT_KEY 0xDC42ACCA - * #define BOOTLOADER_START_ADDRESS ({FLASH_SIZE_BYTES} - {BOOTLOADER_SEC_SIZE_BYTES}) - * + * #define BOOTLOADER_START_ADDRESS (FLASH_SIZE_BYTES - BOOTLOADER_SEC_SIZE_BYTES) + * * void Bootloader_Jump_Check(void) ATTR_INIT_SECTION(3); * void Bootloader_Jump_Check(void) * { * // If the reset source was the bootloader and the key is correct, clear it and jump to the bootloader - * if ((MCUSR & (1<FLASH_SIZE_BYTES and + * BOOTLOADER_SEC_SIZE_BYTES tokens should be replaced with the total flash size of the AVR * in bytes, and the allocated size of the bootloader section for the target AVR. - * - */ \ No newline at end of file + * + */ +