尊敬的各种佬;
近期发现这个宝藏库,所以试着学习了一下,使用f4裸机hal库版本是F4_1.28.3基于cubeied1.19所以GCC版本就是13,相应的dwarf版本就是5,实测确实好用,在debug模式下,运行错误代码后可以立即跳转到HardFault_Handler(位于cmb_fault.s)然后进一步跳转到cm_backtrace_fault成功打印出错误信息如图

addr2line也可以正常查看错误的代码的位置,

但是当我使用下载烧录功能时,程序则完全不能触发HardFault_Handler(位于cmb_fault.s),也就无法跳转到cm_backtrace_fault成功打印出错误信息,我的测试程序很简单,在main.c中开始循环 然后制作除0错误,然后循环结束如下图

非常奇怪的是,程序会一直打印:
循环开始
循环结束
就像没有发生hardfault一样,如下图

请问这是为什么呢?再次感谢各种佬