??? 01/30/09 21:35 Read: times |
#161851 - upgrade Responding to: ???'s previous message |
I have no idea why FM fails to upgrade the bootloader - try perhaps asking at the FlashMagic forum.
-- You shall program the provided bootloader upgrade binary into block 0, and then run it, and autobaud on it (send 'U' say from a terminal). It reprograms block 1 while running from block 0. Alternatively, you can program the lower 2000h of it directly to block 1, but you need to zero out the first three bytes (if I remember correctly - I don't have my notes on this topic at hand). -- You can of course write a short snippet to replace the bootloader and switch the banks to "normal application" configuration. The P89V51RD2 boots into block 1, so you need to switch to block 0. The best way to do it is to perform a software reset, by writing 1 into SWR=FCF.1 (see chapter 6.2 of datasheet). This is what the default bootloader does, after the initial timeout. The trouble with your attempt is the following: if you only set BSEL to 1, banks will indeed switch, but after that instruction the instruction from block 0 at address 3 is executed, and not the "ljmp 0" from block 1! JW |
Topic | Author | Date |
89V51RD2 Code securtiy problem | 01/01/70 00:00 | |
Cast Block | 01/01/70 00:00 | |
A better solution | 01/01/70 00:00 | |
Strong or weak attempt.... | 01/01/70 00:00 | |
Banking terminals | 01/01/70 00:00 | |
banking terminals | 01/01/70 00:00 | |
ISP protection by serial number... | 01/01/70 00:00 | |
If I can get bootloader source to customize | 01/01/70 00:00 | |
upgrade | 01/01/70 00:00 | |
Thanks Problem Solved | 01/01/70 00:00 | |
Yeah.. NXP should clarify | 01/01/70 00:00 | |
answer | 01/01/70 00:00 | |
Decision![]() | 01/01/70 00:00 |