231ADuC7020 program space 0x00080000 is invalid?!?
- May 25, 2011Hello,
I'm writing a serial downloader for the ADuC702x series. I can send send a mass erase packet and have it acknowledged (and perform the erase). However, if I try to write into the Flash/EE space beginning at 0x00080000 I get a negative acknowledge.
I've checked, checked and checked again the checksums and that does not appear to be the problem, suggesting that the negative ACK is due to an invalid address.
The ihex file generated by the GNUARM tool chain starts with an 02 record, that is an address offset of 0x0008000, which essentially puts the program into Flash/EE, which all makes sense because the data sheets say this is where it should go. Flash/EE then gets mirrored to 0x00000000 on reset.
I cannot write to 0x00080000! Strangely if I delete the opening 02 record from the ihex file (i.e. write the program at 0x00000000) then my serial downloader loads the program and it runs fine. However I do not think that I should be programming into the 0x00000000 memory space.
Note that the original unaltered hex file loads correctly with another serial downloader.
Does anyone have experience with something similar? Have I missed something important about writing to the Flash/EE space in serial download mode?
Thanks for any help
- Next post in topic >>