Content originally posted in LPCWare by sh on Tue Nov 12 09:30:28 MST 2013
I'm using LPCXpresso 6.10 with the LPC4330. The project uses an external builder with a custom build command. I found after considerable experimentation, that the debugger depends on the information in the MCU settings tab of the project settings, for example for determining which code addresses are in Flash, so that the proper choice of breakpoint type can be made.
Unfortunately, it seems that those settings are not being updated when I change them, as after closing and reopening the dialog, the changes have been ignored and I see the original settings. Only when I change the setting via editing the .cproject file in a text editor, the changed settings are accepted and even preserved when Eclipse writes to the file.
Whether the changes in the MCU settings tab are being accepted or not seems to depend on the project, but it is obscure to me in which way. There is no error message visible, the changes are just being quietly discarded. Some of my projects don't have that problem, perhaps someone can explain how the behavior of the MCU settings dialog depends on the remaining project settings. Ther's clearly something obscure going on behind the scenes.
In my case the debugger could not set breakpoints, apparently because it didn't know about the flash. That made it decide to use software breakpoints, which leads to an error because the write to memory fails. Apparently, for hardware breakpoints to be used, the debugger needs to know about which parts of the memory map are occupied by Flash, and this information comes from the MCU settings tab in the project settings dialog. If this is so, the information entered here should never be disregarded, no matter what the other project settings are.
Cheers
sh