[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [avr-gcc-list] bootloader: replace bootloader with anew bootloader
From: |
Colin O'Flynn |
Subject: |
Re: [avr-gcc-list] bootloader: replace bootloader with anew bootloader |
Date: |
Tue, 14 Jun 2005 12:34:51 -0400 |
User-agent: |
KMail/1.7.1 |
Hey,
If you've got the extra storage space, there is a way to do it. The key is
that the "bootloader" on your AVR doesn't load from serial link, it loads
from the spare storage. This way it actually loads the REAL bootloader into
the normal application space, which then also gets the application and also
loads it into the extra storage space.
On boot-up the resident bootloader looks for a sign if it should:
1) Load the bootloader into AVR flash
2) Load the backup bootloader into AVR flash
3) Load the application into AVR flash
Otherwise just boot normally
By using saftey interlocks in the PC side, the only way to kill the system is
if the extra storage space got corrupted. There should never be a need to
update the resident bootloader, which is much smaller than a normal
bootloader.
-Colin
>
> Without a large amount of extra NVRAM storage, I am not sure how one
> would do this. On our current project, I have half a meg of flash
> memory connected over the SPI bus to maintain multiple versions of
> firmware (using the Atmega2560, with 256k of ROM space).