2006-04-18 10:06 PM
2006-04-12 05:17 AM
I'm writing a BSL for an ST10F269 to talk to the ST10 Flasher supplied by ST. The idea is that I handle the start of the world and then hand over to the ST10 Flasher's monitor program for the rest of normal operation before booting into Flash.
Everything is ok in that the ST10 Flasher tool starts up fine and loads its monitor program, but then if I attempt to erase flash memory (any bank) the processor never acknowledges the request and everything just hangs. Now because the ST10 Flasher Tool loads and its monitor takes over, in theory I'm out of the equation at this point. So I think that this means I must have neglected to set a register to the correct value or missed something similar out of the magical incantation so that the rest of the world is fooled into believing that we are in true BSL mode. I've set CP, SP, S0CON, S0BG, SYSCON, STKUN, STKOV, not BUSCON but I don't think that is the problem. Any ideas? Would it cause this if one of my functions was still executing out of Flash and has not been copied into RAM? Thanks2006-04-18 10:06 PM
Thanks Neila.
Yes you are right about what I'm doing with the BSL. My BSL now explicitly sets XRAM1EN in XPERCON reg, then also sets XPEN but it has had no effect. These are the default values anyway aren't they? When I've booted using my BSL and fired up the ST10 Flasher, I try to use the Flasher to erase, say, bank 2 of flash memory. The following serial conversation takes place: Flasher : B7 ST10 : 7B Flasher : 04 00 02 01 04 00 ST10 : 0B 00 Flasher : FE CA I can't tell you whether I'm seeing this problem with normal program operation unfortunately, as I can't get that far.