I'm using the following system: Keil: Realview MDK-ARM ver4.10 Jtag debugger: Coocox colink processor: generic cortex-m3 with the following memory layout :
0x00000000-0x00004000 -ROM (read only) 0x20000000-0x20008000 -RAM
In Keil uVision, I define the TARGET option memory areas with the corresponding values: IROM:0x00000000 size:0x4000 (startup checked) IRAM:0x20000000 size:0x8000
In the Linker option, I select the "Use memory layout from Target Dialog".
When i start the debug sessions, software breakpoints are used for the ROM area. What is wrong?
"some debuggers (i.e. J-Link) can do this, they reprogramm the flash."
Yes, but if I'm correctly informed, that only happens when the developer tries to add more breakpoints than is supported in hardware.
some debuggers (i.e. J-Link) can do this, they reprogramm the flash.
BR, /th.
How is it possible to use software breakpoints in ROM? As i said, ROM is read only and hence the debugger cannot write to it. The debugger cannot replace the instruction with a BREAKPT instruction.
Have you also asked them about this?
Why do you think that this is wrong?
View all questions in Keil forum