We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
When I set an Access Breakpoint on a memory range, I'd like to use the specific address when the breakpoint is triggered. For example:
func void showAddress(void) { if (BA_MODE == BA_WRITE) { printf("Write to 0x%X.\n", BA_ADDR); } else { printf("Read from 0x%X.\n", BA_ADDR); } } ba readwrite 0x40002000, 0x40, 1, "showAddress()"
Are there any system variables that represent the attributes of the access that triggers the breakpoint?
Please note: the "printf" in the code above is just an example. Actually I'd like to simulate certain hardware behaviour, for example memory mirrors when not all address lines are used. Such a feature could also help to write simulations for external devices.
Thanks for the quick reply!
So my version (see below for a list of numbers) does not have these variables, does it?
uVision3 V3.12a CPU DLL: SARM.DLL V1.27e Dialog DLL: DARMP.DLL V1.09 Target DLL: BIN\UL2ARM.DLL V1.07 Dialog DLL: TARMP.DLL V1.08
Is there any other possibility to retrieve the address?
None of the uVision-MDK releases out in the world do have these system variables. They will come with next MDK release (currently in Release Candidate state).
Sorry, there is no way to get the accessed address/access type within a user or signal function.