[Bootloader]
- fixed cannot jump to application after flash update git-svn-id: http://moon:8086/svn/projects/HendiControl@185 fda53097-d464-4ada-af97-ba876c37ca34
This commit is contained in:
@@ -94,7 +94,7 @@ int main(void)
|
|||||||
cli();
|
cli();
|
||||||
if (is_bsel())
|
if (is_bsel())
|
||||||
{
|
{
|
||||||
bootloader_enter();
|
bootloader_enter();
|
||||||
led_bsel(1);
|
led_bsel(1);
|
||||||
uart_init(115200);
|
uart_init(115200);
|
||||||
uart_puts("Hendi-Control Bootloader v1.2\n");
|
uart_puts("Hendi-Control Bootloader v1.2\n");
|
||||||
@@ -227,10 +227,11 @@ int main(void)
|
|||||||
state = state_next;
|
state = state_next;
|
||||||
}
|
}
|
||||||
} while (!leave_loop);
|
} while (!leave_loop);
|
||||||
uart_puts("Exit bootloader!\n\n");
|
|
||||||
bootloader_exit();
|
// After flash update: Without RWW section enable, jump to app will fail
|
||||||
|
boot_rww_enable();
|
||||||
}
|
}
|
||||||
|
bootloader_exit();
|
||||||
|
|
||||||
/* Return to address 0x0000 */
|
/* Return to address 0x0000 */
|
||||||
startApplication();
|
startApplication();
|
||||||
@@ -238,7 +239,6 @@ int main(void)
|
|||||||
|
|
||||||
void erase_page(uint16_t page_addr)
|
void erase_page(uint16_t page_addr)
|
||||||
{
|
{
|
||||||
// uart_puts("ErasePage: "); print_word(page_addr); uart_puts("\n");
|
|
||||||
eeprom_busy_wait ();
|
eeprom_busy_wait ();
|
||||||
boot_spm_busy_wait ();
|
boot_spm_busy_wait ();
|
||||||
boot_page_erase (page_addr);
|
boot_page_erase (page_addr);
|
||||||
@@ -248,7 +248,6 @@ void write_page(uint16_t page_addr, uint8_t *pPageBuffer)
|
|||||||
{
|
{
|
||||||
uint16_t i;
|
uint16_t i;
|
||||||
|
|
||||||
// uart_puts("Write page 0x"); print_word(page_addr); uart_puts("\n");
|
|
||||||
boot_spm_busy_wait (); /* Wait until the memory is erased. */
|
boot_spm_busy_wait (); /* Wait until the memory is erased. */
|
||||||
|
|
||||||
for (i=0; i<SPM_PAGESIZE; i+=2)
|
for (i=0; i<SPM_PAGESIZE; i+=2)
|
||||||
|
|||||||
Reference in New Issue
Block a user