Skip to main content
Visitor II
August 21, 2024
Solved

Debug of code in ITCMRAM on STMH7 nucleo board

  • August 21, 2024
  • 1 reply
  • 656 views

Hi!

I'm developing a software on the STM37H753ZIT nucleo board, I place some time critical functions inside the ITCMRAM to improve performance, the code is correctly running and the behaviour meets the expectations execpt for a fact:

When I place a breakpoint to stop inside a function located in ITCMRAM, the debugger stops in another place:

Here an example is provided, the function placed in ITCMRAM is TIM15_IRQHandler, when I try to stop inside the function the debugger stops in CAN_DeInit, that is a function never called in the code.

itcmramErr1.PNG

Note: Rebuilding and relauncing the project, brings the debugger to stop in another place, different from CAN_DeInit, but still stops in unused code piece. 

 

Does anyone knows why this happens?

Thanks in advance,

Luca

 

    This topic has been closed for replies.
    Best answer by LucaD

    Hi! 

    I solved the problem changing the linker script and placing starting position of ITCMRAM to 0x400, because I declared the NULL pointer as pointer of 0x00 so I think this was the problem.

    Regarding the ITCMR Linker and startup implementation I follow this tutorial:

    STM32CubeIDE-Workshop-2019/hands-on/07_ISR_in_ICTM/README.md at master · ethanhuanginst/STM32CubeIDE-Workshop-2019 · GitHub

    Luca

    1 reply

    LucaDAuthorAnswer
    Visitor II
    September 5, 2024

    Hi! 

    I solved the problem changing the linker script and placing starting position of ITCMRAM to 0x400, because I declared the NULL pointer as pointer of 0x00 so I think this was the problem.

    Regarding the ITCMR Linker and startup implementation I follow this tutorial:

    STM32CubeIDE-Workshop-2019/hands-on/07_ISR_in_ICTM/README.md at master · ethanhuanginst/STM32CubeIDE-Workshop-2019 · GitHub

    Luca