I have an application where I can download a data table via the serial port, and it is then written to Flash.
The flash writing code is copied into RAM and run from there. (it is compiled as position independent code?)
If I program this application onto the target, disconnect the BDM, then switch it on again, I can download the table and it is successfully stored to flash memory. I can view the memory via the serial port commands, or I can reconnect the BDM device and inspect the memory in the debugger, and it has been updated successfully
Now for the strange part: if I leave the BDM connected and run the program under control of the debugger, the flash memory is not altered. But neither protection violation nor access error flags are set either. But I can step through the assembler code in RAM and it is running as it should.
I am guessing that there is a setting in the debugger that I should set but I have tried looking and even checked the help files, but cannot work out what I have done wrong.
Any suggestions please?