[STM32F4] STM32CubeIDE - 异常调试期间的调试与故障分析器窗口

[复制链接]
236|1
 楼主| jerry尧 发表于 2025-7-8 13:27 | 显示全部楼层 |阅读模式
  • 使用J-LINK调试器触发异常后,故障分析器窗口通常会显示异常期间的寄存器内容。但若使用ST-LINK适配器时,"Register Value During Fault Exception"会显示为N/A(不可用)。
  • 当处理器正在执行RTOS任务(使用PSP指针)时发生异常,调试窗口中的值无法正确显示。由于处理器进入异常处理程序时会自动切换为MSP指针,此时调试窗口的函数调用栈会出现错误——调试器似乎采用了当前SP值(即MSP),而非异常发生前的SP值(即PSP)。

临时解决方案:在异常处理程序中添加代码,当检测到异常前使用PSP时临时将SP切换为PSP指针,并在处理器切换回MSP之前设置断点。这样调试窗口就能正确显示函数调用栈。此时若在调试窗口点击函数名称,变量窗口也能正常显示该函数的局部变量。

szt1993 发表于 2025-7-8 19:42 | 显示全部楼层
一般是设置导致的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

47

主题

71

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部