??? 05/06/04 15:04 Read: times |
#69946 - RE: Spliting code: bootloader / application Responding to: ???'s previous message |
Hi Annibal,
to have a bootloader I went another way: I use an external RAM (32k) and a 256k Flash, where in Page 0 (64k space) the bootloader resides. To update the Bootloader (max size = 32k), I load the new code to Ram, switch then the PSEN <-> RD / WR so that the RAM becomes code, then copy the RAM back to Page 0. To update page 1..3 with Application Code, I switch to Bank 0, copy the bootloader to RAM, and again switch to execute in RAM PSEN <-> RD / WR and now can update the desired code to Bank 1..3. Thus I will not need jumps in bootcode, I can use external RAM in normal programs, and with some derivats where there is XRAM available (C515C/C390 etc) I can still use this also in the bootloader running in RAM. Another advantage is, that besides of a Switch Function at a defined Adress Location for both the bootloader / application programs, I can use completetly independent code / source for both. The PSEN <-> RD/WR switching is done with a 74HC(AC)157 Werner |
Topic | Author | Date |
Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application![]() | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 | |
RE: Spliting code: bootloader / application | 01/01/70 00:00 |