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.
I used two registers to configure and monitor continuous memory being accessed, the code shows as following:
uint32 memory[1000]; CoreDebug->DEMCR |= CoreDebug_DEMCR_TRCENA_Msk |CoreDebug_DEMCR_MON_EN_Msk; uint32_t * comp1 = 0xE0001030; *comp1 = &memory[999]; DWT->FUNCTION1 = (0<<11)|1<<4|7; uint32_t *comp0 = 0xE0001020; *comp0 = &memory[0]; DWT->FUNCTION0 = (0 << 11) | 1<<4 | 5;
Then, every instruction writes the memory will trigger an exception and invoke the DebugMon_Handler.
What I want is to do is to obtain which instruction to write the memory in DebugMon_Handler and the exact memory address involved.
Any suggestions on how to obtain the exact instruction & memory address that triggers the interrupt?